Ben Maurer b27c8e1534 remove .cvsignore from everywhere, as it is useless on svn 20 år sedan
..
client 9d0b9d4fbb 2005-02-07 Lluis Sanchez Gual <[email protected]> 21 år sedan
server b51ccef3ae * server/SessionCounter.asmx: Check that Context != null in the constructor. 21 år sedan
ChangeLog 910199642a 2005-06-10 Lluis Sanchez Gual <[email protected]> 20 år sedan
Conv.asmx.template fb4719a1c9 * Conv.asmx.template, Conv.cs.template, client/localhost/ConvDoc*, 21 år sedan
Conv.cs.template fb4719a1c9 * Conv.asmx.template, Conv.cs.template, client/localhost/ConvDoc*, 21 år sedan
Makefile 60d5723a33 (test-clients): Refer to 'nunit-console.exe' in 21 år sedan
README 7361ff23cb Added web service test suite 22 år sedan
WebServiceTest.cs 6bf582e92d * WebServiceTest.cs, client/external/BankCodeEJBHomeTest.cs, 21 år sedan
cormissing.xsl 27659c3160 * Makefile: Fix ms.net api file before the comparison. 21 år sedan
header.html 6bf582e92d * WebServiceTest.cs, client/external/BankCodeEJBHomeTest.cs, 21 år sedan
msfix 27659c3160 * Makefile: Fix ms.net api file before the comparison. 21 år sedan
proxies.net.xml.gz 6bf582e92d * WebServiceTest.cs, client/external/BankCodeEJBHomeTest.cs, 21 år sedan
services.xml 910199642a 2005-06-10 Lluis Sanchez Gual <[email protected]> 20 år sedan
wsdl.ignore 38c5d018ae * Makefile: Added reference to System.Data. 21 år sedan
wsdlfiles.tar.gz fb4719a1c9 * Conv.asmx.template, Conv.cs.template, client/localhost/ConvDoc*, 21 år sedan
wstest 7361ff23cb Added web service test suite 22 år sedan
wstest.cs d5792d7b20 * Makefile: Remove error directory on every run. 21 år sedan

README

Web Service Test Suite
----------------------

This directory contains a test suite for testing Web Services. It tests:

* Proxy generation using the wsdl tool
* Access to web services using the generated client proxies
* Execution of web services in the server

This suite not only tests web services running on XSP, but it can also test
services running on other platforms and that are available in internet. This
will help track down interoperability issues.

To build the test suite, just run:

> xsp --nonstop --root server &
> make

This will download the wsdl documents, generate the proxies, build a dll with
the proxies, and build the nunit tests. Then you can use nunit-console or
gnunit to run the tests (the nunit dll is testclient.dll).

Which services are tested?
--------------------------

The file services.xml contains the list of services to test. There is an
xml element for each web service with the following structure:


url // url to the wsdl document
name // name of the service
// List of protocols for which to
Soap // generate a proxy
HttpGet
HttpPost

true // True if there is a nunit test
// for the service

Notice that not all web services will have a corresponding nunit test, since
such test is not allways possible. However, proxy generation will be tested
for all of them.

You can manually add new services to the list or use the wstest tool to add
a list of references included in a DISCO document. For example:

> ./wstest ur

This will download the DISCO document from the provided and add an entry
for each service referenced in the document. The second parameter is optional,
it is a file that contains a list of wsdl urls that should be ignored from the
document.

The current Makefile downloads references from the following locations:

* http://www.xmethods.net/default.disco
* http://localhost:8080/xsp.disco

Creating a new nunit test
-------------------------

To test services running in XSP, just add the asmx file in the "server"
directory and update the xsp.disco file in there. Then run "make".

To create a nunit test for a web service already registered, just run:

> ./wstest gc

Where url is the URL of the service's WSDL document. This will generate a class
in the "client" directory with a basic structure. You should then manually
implement the test.

Other useful targets in of the makefile
---------------------------------------

make update: Updates the services.xml list with the references from
http://www.xmethods.net/default.disco and
http://localhost:8080/xsp.disco

make gen: Generates proxies for new service references.

make regen: Regenerates all proxies

make cls: Removes obsolete proxies and tests.

make proxies: Builds the proxy library.

make tests: Builds the nunit library.

make tools: Builds wstest.