In some scenarios, it can be, however, also useful for running repeating jobs, because it can keep the results even after the batch test client finished.
sn.alignment_consensus.cons=sequence_direct_data :${emboss.home}/share/EMBOSS/test/data/dna.msf sn.alignment_consensus.megamerger=asequence_usa embl:AC073385 bsequence_usa embl:AP006749 sn.alignment_consensus.merger=asequence_usa embl:eclacy bsequence_usa embl:eclaca sn.alignment_differences.diffseq=asequence_usa embl:ap000504 bsequence_usa embl:af129756The same service can be called several time, each time with different input data (or even without any data, assuming there are some default values). For example:
sn.classic.helloworld sn.classic.helloworld = greeting 'Ciao\, mundi'The example above also shows that commas in the input data must be escaped - otherwise the value will be interpreted as two invocations of the same service.
The examples also show that the property values can contain another
properties (e.g.
Please notice that here, as in the Soaplab's main command-line client, one can use the ":" character to indicate that the real input will be actually read from the given file, and the "::" characters similarly to indicate a file of file names.
ant config
my.soaplab.client.properties = testing.client.propertiesand then run:
ant config
The properties used by the batch test client:
test.data.dir = ${base.dir}/data batch.test.file = ${base.dir}/data/defaultTests.cfg batch.test.file = ${base.dir}/data/embossTests.cfg batch.test.file = ${base.dir}/data/embassyTests.cfg
A value 1 causes that services will be called sequentially. A value 0 causes that all services will be called at once, in parallel.
[COMPLETED] 7_classic.helloworld [classic.helloworld]43ab9197.117d16aa957.-7ffd [COMPLETED] 14_geocoding.geonames [geocoding.geonames]43ab9197.117d16aa957.-7fff [COMPLETED] 13_geocoding.geonames [geocoding.geonames]43ab9197.117d16aa957.-8000Default value is false.
Default value is false (but the default template file src/etc/config/soaplab.client.properties.template sets it to true).
build/run/run-batch-client
build/run/run-batch-client -help
BatchTestClient =============== Usage: build/run/run-batch-client -h[elp] build/run/run-batch-clientYou can see that the command-line options can overwrite the run-time properties described above.[options] where: -h[elp] ... print this help -q ... quiet mode (useful when you want to redirect a result into a file) -stack ... in case of any error it print the stact trace (without this option, it prints it only when a serious runtime error occures) where defines where to find all tested services and what protocol to use to access them (some of these parameters may also be specified in the Soaplab client configuration property file - by default named soaplab.client.properties and put on the CLASSPATH): -protocol jaxws ... service will be accessed as a Web Service, using JAX-WS toolkit (default protocol) -protocol local ... service will be accessed as local class (no remote server or any Web Service used) -protocol axis1 ... service will be accessed as a Web Service, using old Axis 1 toolkit (such protocol may not be supported by the given Soaplab server) -host ... host name (default: localhost) -port ... port number (defaullt: 8080) -ctx ... context part of the URL (default: soaplab2) -e ... a full service URL (an endpoint); if given it has precedence over -host, -port, -ctx, and -name; default is created from other parameters as: http:// : / /services/ -lname ... a name of a list service to be called (default 'AnalysisFactory' for axis1 protocol, otherwise 'list') -el ... a full List service URL (an endpoint); if given it has precedence over -host, -port, -ctx, and -lname; default is created from other parameters as: http:// : / /services/ and where options are (most of these options can be specified as properties in the soaplab.client.properties file - but the command-lien options take precedence): -batchfile ... a file name with a list of services to be tested (e.g. look into data/defaultTests.txt); Default is taken from properties: batch.test.file -maxthreads ... how many threads to se when testing more services: 0 ... as many as we have tested services, 1 ... test all services sequentially, > 1 ... number of maximum tested services at once; Default is taken from property batch.max.threads (which is, by default, 25). -keep ... do not remove jobs after they finished (in this case, the job IDs are included in the reports, so one can use them to retrieve results using the regular Soaplab2 command-line client); Default is taken from property batch.keep.results (which is, by deafult, false). -table ... produce a tabular output of all tests; Default is taken from property batch.report.table (which is, by deafult, true).
Soaplab2 comes with several predefined sets of testing input data. They can be found in the data directory:
[Start ] 39_alignment_local.water [Start ] 40_alignment_local.wordmatch [COMPLETED] 8_classic.helloworld [Start ] 128_alignment_multiple.emma [COMPLETED] 11_testing.streams [COMPLETED] 7_classic.helloworld [COMPLETED] 23_alignment_consensus.cons [COMPLETED] 12_testing.files [COMPLETED] 15_graphics.dot [COMPLETED] 30_alignment_dot_plots.polydot [TERMINATED_BY_ERROR] 128_alignment_multiple.emma [Start ] 142_alignment_multiple.infoalign [Start ] 143_alignment_multiple.plotcon [Start ] 144_alignment_multiple.prettyplot [Start ] 145_alignment_multiple.showalign [Start ] 146_alignment_multiple.tranalign [Start ] 147_display.cirdna [Start ] 148_display.lindna [COMPLETED] 142_alignment_multiple.infoalignIt reports when each service call starts and when it finishes. The starts and completions are mixed together because the services are called in parallel (in this example).
This section can be avoid by the command-line option -q (as "quiet").
All tests --------- classic.helloworld 0:00:00.443 COMPLETED testing.sleep 0:00:02.431 COMPLETED testing.sleep 0:00:03.581 COMPLETED testing.streams 0:00:00.496 COMPLETED testing.files 0:00:01.027 COMPLETED geocoding.geonames 0:00:02.100 COMPLETED classic.helloworld 0:00:00.250 COMPLETED geocoding.geonames 0:00:02.289 COMPLETED graphics.dot 0:00:01.101 COMPLETEDIt reports the elapsed time and completion status of all tested services. It is created only if the command-line option -table is present or if the run-time property
------------------------------------------------------------------------------ ERROR: classic.helloworld ------------------------------------------------------------------------------ Unrecognized inputs: greetingXX Ciao, mundi Input: greetingXX 'Ciao, mundi' Status: NOT STARTEDThis section is always produced (unless there are no errors) to the standard error stream (so it can be redirected by using various shell tools). It contains errors found either by Soaplab2 (as the example above), or by the started underlying application itself.
Summary ------- Successfully: 8 Erroneously: 1 Not available: 0It is produced always to the standard output. The Not available contains the number of services that appeared in the testing input files but that are not available from the given Soaplab server, at least not at the moment of running the batch test client.