Loading ...
Sorry, an error occurred while loading the content.

Re: [rest-discuss] REST Server API test harness?

Expand Messages
  • Steve Bjorg
    What alternative do you propose? I ve heard one alternative so far, which was resource-oriented architecture. - Steve ... Steve G. Bjorg
    Message 1 of 20 , Nov 8, 2008
    • 0 Attachment
      What alternative do you propose?  I've heard one alternative so far, which was resource-oriented architecture.

      - Steve

      --------------
      Steve G. Bjorg

      On Nov 8, 2008, at 12:32 AM, Stefan Tilkov wrote:

      On 07.11.2008, at 16:14, Steve Bjorg wrote:

      >
      > If you plan on doing REST over HTTP, may I recommend WOA as a term? 
      > It's defined as WOA = SOA + WWW + REST. Removes the ambiguity when 
      > talking about either an architectural style or an application of it 
      > to a specific environment.
      >

      I positively hate the term "WOA"; IMO it's the beginning of turning 
      something well-defined into the same meaningless pseudo-science we 
      have around "SOA".

      Stefan
      --
      Stefan Tilkov, http://www.innoq. com/blog/ st/

      > - Steve
      >
      > ------------ --
      > Steve G. Bjorg
      > http://wiki. mindtouch. com
      > http://twitter. com/bjorg


    • Jim Webber
      How about just using the terms Web, Web-like and stuff that we do and works on the big Web rather than a bunch of horrid TLAs. Jim
      Message 2 of 20 , Nov 8, 2008
      • 0 Attachment
        How about just using the terms Web, Web-like and "stuff that we do and
        works on the big Web" rather than a bunch of horrid TLAs.

        Jim


        On 8 Nov 2008, at 10:52, Steve Bjorg wrote:

        > What alternative do you propose? I've heard one alternative so far,
        > which was resource-oriented architecture.
        >
        > - Steve
        >
        > --------------
        > Steve G. Bjorg
        > http://wiki.mindtouch.com
        > http://twitter.com/bjorg
        >
        > On Nov 8, 2008, at 12:32 AM, Stefan Tilkov wrote:
        >
        >> On 07.11.2008, at 16:14, Steve Bjorg wrote:
        >>
        >> >
        >> > If you plan on doing REST over HTTP, may I recommend WOA as a term?
        >> > It's defined as WOA = SOA + WWW + REST. Removes the ambiguity when
        >> > talking about either an architectural style or an application of it
        >> > to a specific environment.
        >> >
        >>
        >> I positively hate the term "WOA"; IMO it's the beginning of turning
        >> something well-defined into the same meaningless pseudo-science we
        >> have around "SOA".
        >>
        >> Stefan
        >> --
        >> Stefan Tilkov, http://www.innoq.com/blog/st/
        >>
        >> > - Steve
        >> >
        >> > --------------
        >> > Steve G. Bjorg
        >> > http://wiki.mindtouch.com
        >> > http://twitter.com/bjorg
        >>
        >>
        >
      • Sebastien Lambla
        Actualy I take back Resource oriented architecture. While it s part of what REST is, I think REST is in itself good enough. I think the original discussion was
        Message 3 of 20 , Nov 8, 2008
        • 0 Attachment
          Actualy I take back Resource oriented architecture. While it's part of what REST is, I think REST is in itself good enough.
           
          I think the original discussion was about toolkits that help develop http apps that are RESTful. I call this a REST enabler toolkit.




          CC: rest-discuss@yahoogroups.com
          To: stefan.tilkov@...
          From: steveb@...
          Date: Sat, 8 Nov 2008 02:52:02 -0800
          Subject: Re: [rest-discuss] REST Server API test harness?


          What alternative do you propose?  I've heard one alternative so far, which was resource-oriented architecture.

          - Steve

          --------------
          Steve G. Bjorg

          On Nov 8, 2008, at 12:32 AM, Stefan Tilkov wrote:

          On 07.11.2008, at 16:14, Steve Bjorg wrote:

          >
          > If you plan on doing REST over HTTP, may I recommend WOA as a term? 
          > It's defined as WOA = SOA + WWW + REST. Removes the ambiguity when 
          > talking about either an architectural style or an application of it 
          > to a specific environment.
          >

          I positively hate the term "WOA"; IMO it's the beginning of turning 
          something well-defined into the same meaningless pseudo-science we 
          have around "SOA".

          Stefan
          --
          Stefan Tilkov, http://www.innoq. com/blog/ st/

          > - Steve
          >
          > ------------ --
          > Steve G. Bjorg
          > http://wiki. mindtouch. com
          > http://twitter. com/bjorg




          Win £1000 John Lewis shopping sprees with BigSnapSearch.com Search now
        • Steve Loughran
          ... I recommend you use the test client closest to the app you will be using: web browser for webapps, something based on java.net or HttpClient if you are
          Message 4 of 20 , Nov 9, 2008
          • 0 Attachment
            On Fri, Nov 7, 2008 at 3:25 PM, Alan Dean <alan.dean@...> wrote:
            > I agree with Steve.
            >
            > A test harness for REST-over-HTTP could be valuable though; however it
            > can't be ignorant of media-types. How can such a test harness assess
            > HATEOAS without knowledge of the media-type exchanged? Without
            > knowledge of HATEOAS, the test harness is unable to traverse the links
            > between steady states.
            >
            > Some problems come to mind. In order to assess REST-over-HTTP,
            > resource state changes must be made. In many, perhaps most, test
            > subjects this will be either impossible (due to access control
            > restrictions) or undesirable (filling a site with dummy data). The
            > Code-on-Demand constraint further complicates the testability of
            > subjects, as it reduces visibility.
            >
            > Given the necessity to have knowledge of many media-types, I suspect
            > this would not be a trivial development. Good idea though (my
            > http-headers-status diagram grew out of just such a test suite,
            > although that was very application-specific).
            >
            > Alan

            I recommend you use the test client closest to the app you will be
            using: web browser for webapps, something based on java.net or
            HttpClient if you are using either java library, etc. I also quite
            like HttpUnit and more recently HtmlUnit for functional web site
            testing, because the latter handles javascript too.

            Some quick thoughts
            * Good failure reporting. Rather than the usual xUnit assert failure,
            the fault reports should include the request and response
            * Testing a test harness is itself very hard. You need to make sure it
            handles all forms of failure well, and reports meaningful messages in
            every situation. Diagnostics can always be improved on.
            * Consider a proxy that can be controlled by the test harness to
            introduce new failures, failures such as
            - far end has an unsupported/wrong HTTPS certificate
            - incomplete response
            - timeouts
            - stripping out of some headers (what does the client do if
            content-length isn't there)
            - thin, unreliable network connections.
            - simulate a proxy that rejects some verbs
            The proxy could also log all messages so be used for diagnostics.
            Bits of this are implemented in Axis Tcpmon, but it doesn't have the
            full programmatic API that I'd like.

            With a test proxy you could run an out the box web browser under
            selenium, or your test app, but route it through a wide (but sadly
            still incomplete) set of network/back end failures.
          • Norman Gray
            Greetings. ... I ve done something broadly like this. I document a service s interface in a WADL file. Via an XSLT transform, I generate from this a checking
            Message 5 of 20 , Nov 9, 2008
            • 0 Attachment
              Greetings.

              On 2008 Nov 7, at 12:42, Sebastien Lambla wrote:

              > I had an idea a while ago. As I'm writing a REST enabler toolkit,
              > and as i know others do exist too, it would be of great help to have
              > a test harness to ensure valid (http / webarch) behavior.
              >
              > What I'm thinking of is a bunch of specifications for various areas
              > to be implemented using an http or rest toolit, with an automated
              > client checking for accurate responses.

              I've done something broadly like this.

              I document a service's interface in a WADL file. Via an XSLT
              transform, I generate from this a checking function which I call from
              my integration-test harness, once per test. That function verifies
              that each of the request/response interactions does correspond to
              something in the WADL file, and that everything documented in the WADL
              file is actually exercised in at least one test case. It doesn't
              write the tests for you, and it doesn't understand anything deep about
              the interaction, but it does reassure you that you haven't missed
              anything embarassingly major.

              The WADL file also allows me to generate documentation, which is nice.

              WADL claims to help you generate client code, in the same way that
              WSDL magic does (or doesn't). I don't find this use at all
              persuasive, since part of the virtue of REST is that such services
              don't need the acres of boilerplate that WS-* services do.

              Norman


              --
              Norman Gray : http://nxg.me.uk
              Dept Physics and Astronomy, University of Leicester
            • Subbu Allamaraju
              +1. WOA is a lame. There is no ambiguity that needs to be removed. Subbu
              Message 6 of 20 , Nov 9, 2008
              • 0 Attachment
                +1.

                WOA is a lame. There is no ambiguity that needs to be removed.

                Subbu

                On Nov 8, 2008, at 12:32 AM, Stefan Tilkov wrote:

                > On 07.11.2008, at 16:14, Steve Bjorg wrote:
                >
                > >
                > > If you plan on doing REST over HTTP, may I recommend WOA as a term?
                > > It's defined as WOA = SOA + WWW + REST. Removes the ambiguity when
                > > talking about either an architectural style or an application of it
                > > to a specific environment.
                > >
                >
                > I positively hate the term "WOA"; IMO it's the beginning of turning
                > something well-defined into the same meaningless pseudo-science we
                > have around "SOA".
                >
                > Stefan
                > --
                > Stefan Tilkov, http://www.innoq.com/blog/st/
                >
                > > - Steve
                > >
                > > --------------
                > > Steve G. Bjorg
                > > http://wiki.mindtouch.com
                > > http://twitter.com/bjorg
                >
                >
                >
              • Steve Bjorg
                To each their own, but how often have we seen the claim of RESTfulness just to discover POX/JSON over HTTP? It happens all the time. As a matter of fact,
                Message 7 of 20 , Nov 9, 2008
                • 0 Attachment
                  To each their own, but how often have we seen the claim of RESTfulness
                  just to discover POX/JSON over HTTP? It happens all the time. As a
                  matter of fact, wasn't the initial post another example of the term
                  REST being applied to HTTP concepts? "WOA = REST + WWW" is a good
                  pedagogic tool that inherently explains the differences/synergies of
                  REST and HTTP. I've found it a good concept to frame technical
                  discussions.

                  - Steve

                  On Nov 9, 2008, at 10:07 AM, Subbu Allamaraju wrote:

                  > +1.
                  >
                  > WOA is a lame. There is no ambiguity that needs to be removed.
                  >
                  > Subbu
                  >
                  > On Nov 8, 2008, at 12:32 AM, Stefan Tilkov wrote:
                  >
                  >> On 07.11.2008, at 16:14, Steve Bjorg wrote:
                  >>
                  >>>
                  >>> If you plan on doing REST over HTTP, may I recommend WOA as a term?
                  >>> It's defined as WOA = SOA + WWW + REST. Removes the ambiguity when
                  >>> talking about either an architectural style or an application of it
                  >>> to a specific environment.
                  >>>
                  >>
                  >> I positively hate the term "WOA"; IMO it's the beginning of turning
                  >> something well-defined into the same meaningless pseudo-science we
                  >> have around "SOA".
                  >>
                  >> Stefan
                  >> --
                  >> Stefan Tilkov, http://www.innoq.com/blog/st/
                  >>
                  >>> - Steve
                  >>>
                  >>> --------------
                  >>> Steve G. Bjorg
                  >>> http://wiki.mindtouch.com
                  >>> http://twitter.com/bjorg
                  >>
                  >>
                  >>
                  >
                  >
                  > ------------------------------------
                  >
                  > Yahoo! Groups Links
                  >
                  >
                  >
                • Sebastien Lambla
                  ... The original post is about HTTP compliance + webarch, which are what resource-oriented frameworks such as RESTlet and OpenRasta are trying to achieve; and
                  Message 8 of 20 , Nov 9, 2008
                  • 0 Attachment
                    > As a
                    > matter of fact, wasn't the initial post another example of the term
                    > REST being applied to HTTP concepts?

                    The original post is about HTTP compliance + webarch, which are what
                    resource-oriented frameworks such as RESTlet and OpenRasta are trying to
                    achieve; and about a RESTful server and the harness to test it. Let's not
                    take this out of context.

                    REST for architecture, resource-oriented for the framework. Fits for me.

                    Seb
                  • Subbu Allamaraju
                    I noticed that you removed the S word from the equation ;) Subbu
                    Message 9 of 20 , Nov 9, 2008
                    • 0 Attachment
                      I noticed that you removed the "S" word from the equation ;)

                      Subbu

                      On Nov 9, 2008, at 5:06 PM, Steve Bjorg wrote:

                      > To each their own, but how often have we seen the claim of
                      > RESTfulness just to discover POX/JSON over HTTP? It happens all the
                      > time. As a matter of fact, wasn't the initial post another example
                      > of the term REST being applied to HTTP concepts? "WOA = REST + WWW"
                      > is a good pedagogic tool that inherently explains the differences/
                      > synergies of REST and HTTP. I've found it a good concept to frame
                      > technical discussions.
                      >
                      > - Steve
                      >
                      > On Nov 9, 2008, at 10:07 AM, Subbu Allamaraju wrote:
                      >
                      >> +1.
                      >>
                      >> WOA is a lame. There is no ambiguity that needs to be removed.
                      >>
                      >> Subbu
                      >>
                      >> On Nov 8, 2008, at 12:32 AM, Stefan Tilkov wrote:
                      >>
                      >>> On 07.11.2008, at 16:14, Steve Bjorg wrote:
                      >>>
                      >>>>
                      >>>> If you plan on doing REST over HTTP, may I recommend WOA as a term?
                      >>>> It's defined as WOA = SOA + WWW + REST. Removes the ambiguity when
                      >>>> talking about either an architectural style or an application of it
                      >>>> to a specific environment.
                      >>>>
                      >>>
                      >>> I positively hate the term "WOA"; IMO it's the beginning of turning
                      >>> something well-defined into the same meaningless pseudo-science we
                      >>> have around "SOA".
                      >>>
                      >>> Stefan
                      >>> --
                      >>> Stefan Tilkov, http://www.innoq.com/blog/st/
                      >>>
                      >>>> - Steve
                      >>>>
                      >>>> --------------
                      >>>> Steve G. Bjorg
                      >>>> http://wiki.mindtouch.com
                      >>>> http://twitter.com/bjorg
                      >>>
                      >>>
                      >>>
                      >>
                      >>
                      >> ------------------------------------
                      >>
                      >> Yahoo! Groups Links
                      >>
                      >>
                      >>
                      >
                    • Steve Bjorg
                      Good eye! :) Not a big fan of the S in the equation at all... but 2 out of 3 ain t bad! - Steve
                      Message 10 of 20 , Nov 9, 2008
                      • 0 Attachment
                        Good eye! :) Not a big fan of the "S" in the equation at all... but 2
                        out of 3 ain't bad!

                        - Steve


                        On Nov 9, 2008, at 7:14 PM, Subbu Allamaraju wrote:

                        > I noticed that you removed the "S" word from the equation ;)
                        >
                        > Subbu
                        >
                        > On Nov 9, 2008, at 5:06 PM, Steve Bjorg wrote:
                        >
                        >> To each their own, but how often have we seen the claim of
                        >> RESTfulness just to discover POX/JSON over HTTP? It happens all
                        >> the time. As a matter of fact, wasn't the initial post another
                        >> example of the term REST being applied to HTTP concepts? "WOA =
                        >> REST + WWW" is a good pedagogic tool that inherently explains the
                        >> differences/synergies of REST and HTTP. I've found it a good
                        >> concept to frame technical discussions.
                        >>
                        >> - Steve
                        >>
                        >> On Nov 9, 2008, at 10:07 AM, Subbu Allamaraju wrote:
                        >>
                        >>> +1.
                        >>>
                        >>> WOA is a lame. There is no ambiguity that needs to be removed.
                        >>>
                        >>> Subbu
                        >>>
                        >>> On Nov 8, 2008, at 12:32 AM, Stefan Tilkov wrote:
                        >>>
                        >>>> On 07.11.2008, at 16:14, Steve Bjorg wrote:
                        >>>>
                        >>>>>
                        >>>>> If you plan on doing REST over HTTP, may I recommend WOA as a
                        >>>>> term?
                        >>>>> It's defined as WOA = SOA + WWW + REST. Removes the ambiguity when
                        >>>>> talking about either an architectural style or an application of
                        >>>>> it
                        >>>>> to a specific environment.
                        >>>>>
                        >>>>
                        >>>> I positively hate the term "WOA"; IMO it's the beginning of turning
                        >>>> something well-defined into the same meaningless pseudo-science we
                        >>>> have around "SOA".
                        >>>>
                        >>>> Stefan
                        >>>> --
                        >>>> Stefan Tilkov, http://www.innoq.com/blog/st/
                        >>>>
                        >>>>> - Steve
                        >>>>>
                        >>>>> --------------
                        >>>>> Steve G. Bjorg
                        >>>>> http://wiki.mindtouch.com
                        >>>>> http://twitter.com/bjorg
                        >>>>
                        >>>>
                        >>>>
                        >>>
                        >>>
                        >>> ------------------------------------
                        >>>
                        >>> Yahoo! Groups Links
                        >>>
                        >>>
                        >>>
                        >>
                        >
                      • marc_hadley
                        ... The NetBeans JAX-RS plug-in includes something along those lines: http://www.netbeans.org/kb/60/websvc/rest.html#Exercise_3
                        Message 11 of 20 , Nov 10, 2008
                        • 0 Attachment
                          --- In rest-discuss@yahoogroups.com, Norman Gray <norman@...> wrote:

                          >
                          > > I had an idea a while ago. As I'm writing a REST enabler toolkit,
                          > > and as i know others do exist too, it would be of great help to have
                          > > a test harness to ensure valid (http / webarch) behavior.
                          > >
                          > > What I'm thinking of is a bunch of specifications for various areas
                          > > to be implemented using an http or rest toolit, with an automated
                          > > client checking for accurate responses.
                          >
                          > I've done something broadly like this.
                          >
                          > I document a service's interface in a WADL file. Via an XSLT
                          > transform, I generate from this a checking function which I call from
                          > my integration-test harness, once per test.

                          The NetBeans JAX-RS plug-in includes something along those lines:

                          http://www.netbeans.org/kb/60/websvc/rest.html#Exercise_3
                          http://www.youtube.com/watch?v=_c-CCVy4_Eo

                          Basically it dynamically generates HTML forms to interact with a service based on a WADL
                          file and then parses and displays the output in a variety of formats. Links in the response
                          can be traversed and the test tool will attempt to dynamically fetch a WADL for each linked
                          resource to enable you to walk through the application without needing a pre-cooked
                          "uber-WADL" that describes everything.

                          Marc.
                        Your message has been successfully submitted and would be delivered to recipients shortly.