Skip to content

alperhi/wessbas.testPlanGenerator

 
 

Repository files navigation

INTRODUCTION
------------

This project contains the source code for the Test Plan Generator, which builds
JMeter Test Plans, based on M4J-DSL models. Each resulting Test Plan can be
loaded into JMeter and is associated with a set of Behavior Models, which are
stored by the generator as matrices in CSV files; these files will be written to
the location(s) defined in the regarding M4J-DSL model.

Input: WESSBAS DSL instance, Configuration files

Output: JMeter Testplan conforms to the JMeter Plugin markov4j

SYSTEM REQUIREMENTS
-------------------

The project has been developed with the use of the following tools:

  - JDK 1.7
  - Xtext 2.5.4
  - Eclipse Modeling Tools
  
ACADEMIC LITERATURE
------------------  
  
Automatic extraction of probabilistic workload specifications for 
load testing session-based application systems  (Hoorn, Vögele, Schulz, Hasselbring, Krcmar)  

PROJECT CONTENT
---------------

Additionally to the standard structure of an Eclipse project, the following
folders are included:

  - folder "build" contains the compiled classes and the JavaDoc which is
    generated by running the build.xml script.

  - folder "configuration" contains the properties files, which are required
    for running the generator. In particular, these files demonstrate how to
    define default properties for Test Plan elements and the generator itself
    respectively. Furthermore, default parameter settings for Test Plan elements
    are provided as CSV files; those files are possibly empty, if no default
    values are intended to be set.

  - folder "dist" contains the distribution archives built by executing the
    build.xml; these files are not executable yet, see the "Development Notes"
    below for additional information.

  - folder "examples" contains some example files with user behavior
    information (probabilities and think times), as well as several models.
    The following sub-folders are included:

      o "configuration" -- some example configuration files; in particular,
                           the "csv" sub-folder contains default parameter
                           settings for Test Plan elements, which illustrate
                           the format to be used, if default values shall be
                           set.

      o transformation  -- example input/output files for miscellaneous
                           transformations, divided into regarding sub-folders.

  - folder "lib" contains all required libraries, structured as a hierarchy of
    sub-folders; these folders indicate the packages associated with included
    libraries. 

  - folder "output" contains the output files of a test run, which generally
    include a JMeter Test Plan (.JMX) and the user behavior models (.CSV).

  - folder "test" is intended to contain some binary test files, generated by
    the build.xml script; this is still an open issue.


USAGE
-----

Class "net.sf.markov4jmeter.testplangenerator.TestPlanGenerator" provides the
main() method, which requires a certain set of options to be passed via
command-line. The following options must be provided at least:

  -i  -- path to the input M4J-DSL model.
  -o  -- path to the output JMeter Test Plan.
  -t  -- path to the properties file with Test Plan element default settings.

An example options sequence (to be used in the Eclipse run configuration) might
look as follows (in one row):

-i ".\examples\specj\input\workloadmodel.xmi" 
-o ".\examples\specj\output\testplan.jmx" 
-t ".\configuration\testplan.default.properties"

DEVELOPMENT NOTES
-----------------

The source code is comprehensively commented, and most of it should be
self-explaining; all required libraries are included.

An executable JAR archive should be generated by using the File->Export option
in Eclipse. Note that the configuration files have to be provided separately
with each of such JAR files. The build.xml file needs to be revised, since it
does not produce an executable JAR file yet; it has only been included in
addition to the alternative JAR generation option provided by Eclipse.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%