/betsy

betsy (BPEL Engine Test System) - A BPEL Conformance Test Suite and Tool

Primary LanguageGroovyGNU Lesser General Public License v3.0LGPL-3.0

betsy (BPEL Engine Test System)

Build Status Dependency Status

Betsy is a tool to check the degree of conformance of a BPEL engine against the BPEL standard.

This software is licensed under the LGPL Version 3 Open Source License!

Releases

Software Requirements

  • Windows 7
  • JDK 1.8.0_05 (64 Bit) or higher
    • JAVA_HOME should point to the jdk directory
    • PATH should include JAVA_HOME/bin

Licensing

LGPL Version 3: http://www.gnu.org/licenses/lgpl-3.0.html

Usage

Requirements (see above) have to be fulfilled to execute betsy on the command line.

See Config.groovy for more detailed configuration options.

usage: betsy [options] <engines> <processes>

Options:
 -p,--partner-address <ip-and-port>    Partner IP and Port (defaults to
                                       141.13.4.93:2000)
 -t,--to-core-bpel <transformations>   Transform to Core BPEL
 -o,--open-results-in-browser          Opens results in default browser
 -c,--check-deployment                 Verifies deployment instead of test
                                       success
 -b,--build-only                       Builds only the artifacts. Does
                                       nothing else.
 -e,--use-external-partner-service     Use external partner service instead of internal one
 -h,--help                             Print out usage information

GROUPS for <engines> and <processes> are in CAPITAL LETTERS.
<engines>:
LOCALS (install and execute all engines locally),
RECENT (install and execute all engines, in their most recent versions only, locally)
VMS (install and execute all engines in virtual machines),
ALL (install and execute all engines, in all versions supported, locally and in virtual machines),
ode, bpelg, openesb, petalsesb, orchestra,
active-bpel, openesb23, petalsesb41, ode_v, bpelg_v, openesb_v,
petalsesb_v, orchestra_v, active_bpel_v

<processes>: ALL, BASIC_ACTIVITIES_WAIT, BASIC_ACTIVITIES_THROW,
BASIC_ACTIVITIES_RECEIVE, BASIC_ACTIVITIES_INVOKE,
BASIC_ACTIVITIES_ASSIGN, BASIC_ACTIVITIES, SCOPES_EVENT_HANDLERS,
SCOPES_FAULT_HANDLERS, SCOPES, STRUCTURED_ACTIVITIES_FLOW,
STRUCTURED_ACTIVITIES_IF, STRUCTURED_ACTIVITIES_FOR_EACH,
STRUCTURED_ACTIVITIES_PICK, STRUCTURED_ACTIVITIES, CONTROL_FLOW_PATTERNS,
STATIC_ANALYSIS, FAULTS, WITH_EXIT_ASSERTION

# Examples
$ betsy # Running all tests for all engines
$ betsy ode # Running all tests for Apache ODE
$ betsy ode,bpelg # Running all tests for Apache ODE and bpel-g
$ betsy ALL Sequence # Running Sequence test for all engines
$ betsy ALL Sequence,While # Running Sequence and While test for all engines
$ betsy ode Sequence # Running Sequence test for Apache ODE
$ betsy ode Invoke-Catch # Running Invoke-Catch test for Apache ODE
$ betsy -t sequence.xsl,pick.xsl ode_v # Running all tests for the virtualised Apache ODE with sequence.xsl and pick.xsl CoreBPEL transformations
$ betsy -o # Opens the results in the default browser after a successful run

# Administrative gradlew tasks
$ gradlew idea # Generating Intellij IDEA project files
$ gradlew eclipse # Generating Eclipse project files
$ gradlew groovydoc # Generating GroovyDoc
$ gradlew enginecontrol # Opens a Swing GUI that allows to install, start and stop supported engines

Downloads

From public subversion directory https://lspi.wiai.uni-bamberg.de/svn/betsy/

Project Structure

downloads/ # downloads of the engines
server/ # engine installation directory
test/ # execution results and reports
src/main/tests/ # the bpel, wsdl, xsd files and test configuration
src/main/xslt/[engine/] # common and engine specific xslt scripts
src/main/resources/[engine/] # common and engine specific xsds and other resources
src/main/groovy # the main source code
src/main/java # mock web service implementation

Test Structure

test/
test/reports/
test/reports/html/ # html junit reports
test/$engine/
test/$engine/$process/
test/$engine/$process/bpel/ # bpel file(s), wsdl file(s), xsd file(s)
test/$engine/$process/pgk/ # deployable zip files
test/$engine/$process/soapui/ # soapUI test suite
test/$engine/$process/reports/ # soapUI test reports

Optional directories
[test/$engine/$process/binding/ # binding package]
[test/$engine/$process/composite/ # composite package]

Authors (in alphabetical order)

Simon Harrer, Joerg Lenhard, Christian Preißinger and Cedric Röck

Publications

The following scientific publications are either about betsy, have used betsy to present benchmarks or use and build upon data obtained through betsy:

Contribution Guide

  • Fork
  • Send Pull Request