Test Harness

TestHarness4LAMS2 is a load test tool for the workflow engine (or progress engine) of LAMS 2.x server.
It is designed in the hope to be easy to use and flexible to future change in LAMS 2.x.

The core concept is test suite. One test suite is for one LAMS 2.x server instance.
One test suite typically but not neccesarily includes one admin test, one author test,
one monitor test and one learner test, it depends on how they are setup.

There is typically one mock admin in admin test, one mock author in author test ,
one mock monitor in monitor test and a number of mock learners in learner test.

Mutiple test suites can run parallelly on one or more PCs to test one or more servers. In one test suite,
those tests run sequentially, that is admin test -> author test -> monitor test -> learner test.
That's required by the LAMS logic. But in learner test, the mock learners hit the server parallelly.

The configuration files are quite self-explanatory. Anyone can configure them easily once they
read the comments. There is also a readme.txt included in the package for quick start.

Now in both run.bat and run target of build.xml, 2 JVM Memory options are set, they are:
"-XX:MaxPermSize=256m" and "-Xmx512m" where "256m" is the permanent generation (used to hold reflective
data of the VM itself such as class objects and method objects. These reflective objects are allocated
directly into the permanent generation, and it is sized independently from the other generations.)
and "512m" is the JVM heap size.
This setting should be enough to mock 400-500 learners running through a 20 activity lesson.
If you get PermGen out of memory message or java.lang.OutOfMemoryError during your test,
you need increase them accordingly.

Here is the overview of the classes, packages and their relationships:

 
Usage steps:

1.Take a look at the properties files in this folder first and edit them as you need.
  Usually you need only modify the following properties :
  * TargetServer and httpPort in the master test properties file called test.properties usually
  * NumberOfLearners in learner test properties file
  * LearningDesignFile in author test properties file

2.Execute "run" ant target on any platform with Apache Ant installed,
  or go to TestHarness4LAMS2 dir in windows explorer or on command line,
  and execute run.bat if you are on Microsoft Windows platform.
 
* Modify log.properties according to the comments in it to change level of log details 
 
Disclaimer :

  This program is created in the hope that it will help estimate how many concurrent
  users a LAMS 2.x server can handle, but WITHOUT ANY GARANTEE  the server can support
  that number of users in service use.
   
  This program is more a load test tool than a functional test tool,
  so it does NOT GARANTEE there is no functional bug in the target server.
   

See Test Harness Usage for further details

Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.