harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mikhail Loenko" <mloe...@gmail.com>
Subject Re: [classlib] jetty based tests
Date Tue, 23 May 2006 10:41:40 GMT
Can jetty send back for example a response consisting of the following 4 bytes:

0x00 0x01 0x02 0x03

?

Thanks,
Mikhail

2006/5/23, Paulex Yang <paulex.yang@gmail.com>:
> Stepan Mishura wrote:
> > On 5/23/06, Andrew Zhang wrote:
> >>
> >> Hi, Stepan,
> >>
> >> "With mock objects this can be done with no problems and HARMONY-164
> >> demonstrates the possible way."
> >>
> >> Shall we write a mock http server for each case?  It takes lots of
> >> reduplicate efforts and results in many mock http server classes in the
> >> end.
> >
> >
> > No we shouldn't write a mock http server for each case (I mean that we
> > need
> > not implement http protocol each time).
> But we still need to implement http protocol sometimes. That's what we
> can leverage from current product such as Jetty.
> > In "HARMONY-164 version" mock server
> > is an instance of class that extends Thread class. The mock server is
> > started before running test and by default is just listens for incoming
> > connection. A test has access to server's instance and may configure it
> > response (I didn't implemented but it is also possible to save request
> > to be
> > verified). There is no http protocol implementation.
> >
> > In fact, for many regular tests, jetty works fine.
> >>
> >> And I also agree that for negative tests and some other special tests
> >> which
> >> jetty could not satisfy ,  we should use mock http server instead.
> >
> >
> > So we have to develop mock server anyway. And the mock server can be used
> > for other ('positive') tests. Right? Then why we have to use jetty?
> >
> If I understand correctly, the positive tests needs understand the http
> protocol, doesn't it?
>
> BTW, I just checked the Jetty's JavaDoc quickly, and found that the
> HttpContext can set customized ResourceHandlers, so that I can see some
> possibility to provide negative test by Jetty easily. For example, we
> can define a standard negative test context as path "/mockerror", and
> set a MockErrorResourceHandler for this context, which outputs negative
> result to client, and the mocked ResourceHandler should only need to
> override handle() method.
>
> > Thanks,
> > Stepan.
> >
> > What's your opnion?
> >>
> >> Thanks.
> >>
> >>
> >> On 5/23/06, Stepan Mishura <stepan.mishura@gmail.com> wrote:
> >> >
> >> > Hi George, Tim
> >> >
> >> > I'd like to clarify the following questions:
> >> > 1) Configuring
> >> > As I understood we say that the server is 'embedded' when we can
> >> > start/stop
> >> > it within Ant without additional configuration steps. And all we
> >> need to
> >> > do
> >> > is just download required jars. Right?
> >> >
> >> > What about Eclipse users?
> >> >
> >> > 2) Time to run test suite
> >> > May be it is hard to estimate but anyway - will the test suite run
> >> slow
> >> > down
> >> > if we'll use jetty instead of mock objects? How much?
> >> >
> >> > 3) Testing
> >> > Quoting Tim from 'local server thread': "There is no way to force a
> >> server
> >> > to send you a chunked response using regular HTTP headers, so in this
> >> case
> >> > the server and client have an understanding that when the client asks
> >> for
> >> > a
> >> > particular resource the server will send it back in chunks."
> >> >
> >> > With mock objects this can be done with no problems and HARMONY-164
> >> > demonstrates the possible way. Also are we going to create negative
> >> tests,
> >> > for example, for broken server response? I think yes. Can jetty server
> >> be
> >> > used for negative testing?
> >> >
> >> > See other comments below
> >> >
> >> > On 5/22/06, George Harley wrote:
> >> > >
> >> > > Stepan Mishura wrote:
> >> > > > On 5/19/06, Tim Ellison wrote:
> >> > > >>
> >> > > >> Stepan Mishura wrote:
> >> > > >> <snip>
> >> > > >> > I'm OK only if we separate tests with Jetty from common
test
> >> suite
> >> > > >> run.
> >> > > >>
> >> > > >> Why?
> >> > > >
> >> > > >
> >> > > > Because each external dependency complicates 'normal' test
> >> suite run
> >> (
> >> > I
> >> > > > don't want to face with situation when to run Harmony test suite
I
> >> > > > have to
> >> > > > configure and run 20 different external servers even they are
easy
> >> > > > configurable). As far as I remember we agreed to use mock
> >> objects -
> >> so
> >> > > > let's
> >> > > > use them! For example, in this case there is no need in jetty
> >> server.
> >> > > >
> >> > > > I'm not against 'jetty based tests' but I'd prefer to separate
> >> such
> >> > > > tests.
> >> > > >
> >> > > > Thanks,
> >> > > > Stepan.
> >> > > >
> >> > >
> >> > > Hi Stepan,
> >> > >
> >> > > Just seen this note and think that my previous append on the "Re:
> >> svn
> >> > > commit: r407752" thread sums up my thoughts. Allow me to quote
> >> myself:
> >> > >
> >> > > <paste>
> >> > > Jetty or equivalent is a good basis for such local server stubs.
> >> It is
> >> > > fast, it is lightweight,
> >> >
> >> >
> >> > Fast and lightweight as what?
> >> > I saw sometimes ago java server that has jar size 4k. And
> >> > jetty-6.0.0beta6.jar is 423k size.
> >> >
> >> >
> >> > > it can be started and stopped very simply from
> >> > > within Ant (so that it only runs for the duration of a specified
> >> batch
> >> > > of unit tests) and may also be completely controlled from Java test
> >> code
> >> > > so that we can configure its behaviour for any test case from within
> >> > > that test case.
> >> >
> >> >
> >> > Good.
> >> >
> >> > It's architecture means that we do not have to run it as
> >> > > a complete web server but can stub out any aspect of its runtime
> >> > > behaviour we wish in order to suit the purposes of the test(s).
> >> >
> >> >
> >> > What about 'chunked response'? Can a testcase force jetty server to
> >> send
> >> > it
> >> > a chunked response?
> >> >
> >> > I don't really understand why such network tests making use of a
> >> small,
> >> > > embedded server running locally would need to be considered as
> >> outside
> >> > > of the "normal test flow".
> >> > > </paste>
> >> >
> >> >
> >> > Because I consider adding jetty server as precedent for adding other
> >> > dependencies to the "normal test flow". I believe that "normal test
> >> flow"
> >> > should be fast and lightweight as much as possible. Each additional
> >> > dependency or configuration step adds a brick(even it light) to
> >> > developer's
> >> > large. As the result classlib test suite may become very slow and hard
> >> to
> >> > configure. All I want is to understand - do we really need jetty
> >> server
> >> > inside it.
> >> >
> >> > Thanks,
> >> > Stepan.
> >> >
> >> > We are not talking about an external server here and we are not
> >> talking
> >> > > about developers having to carry out complex configuration
> >> manoeuvres
> >> > > when running the tests. That is something that nobody wants. The
> >> > > motivation here is purely to get more of the java.net tests out
> >> of the
> >> > > "excludes" sin bin.
> >> > >
> >> > > Best regards,
> >> > > George
> >> > >
> >> > >
> >> > > > Regards,
> >> > > >> Tim
> >> > > >>
> >> > > >> --
> >> > > >>
> >> > > >> Tim Ellison (t.p.ellison@gmail.com)
> >> > > >> IBM Java technology centre, UK.
> >> > > >>
> >> > > >>
> >> ---------------------------------------------------------------------
> >> > > >> Terms of use : http://incubator.apache.org/harmony/mailing.html
> >> > > >> To unsubscribe, e-mail:
> >> harmony-dev-unsubscribe@incubator.apache.org
> >> > > >> For additional commands, e-mail:
> >> > harmony-dev-help@incubator.apache.org
> >> > > >>
> >> > > >>
> >> > > >
> >> > > >
> >> > >
> >> > >
> >> > >
> >> ---------------------------------------------------------------------
> >> > > Terms of use : http://incubator.apache.org/harmony/mailing.html
> >> > > To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> >> > > For additional commands, e-mail:
> >> harmony-dev-help@incubator.apache.org
> >> > >
> >> > >
> >> >
> >> >
> >> > --
> >> > Thanks,
> >> > Stepan Mishura
> >> > Intel Middleware Products Division
> >> >
> >> > ------------------------------------------------------
> >> > Terms of use : http://incubator.apache.org/harmony/mailing.html
> >> > To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> >> > For additional commands, e-mail: harmony-dev-help@incubator.apache.org
> >> >
> >> >
> >>
> >>
> >> --
> >> Andrew Zhang
> >> China Software Development Lab, IBM
> >>
> >>
> >
> >
>
>
> --
> Paulex Yang
> China Software Development Lab
> IBM
>
>
>
> ---------------------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> For additional commands, e-mail: harmony-dev-help@incubator.apache.org
>
>

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Mime
View raw message