Structure:

  • bugs/ contains a python module for each bug. Each module it is necessary to have at least the run() method that implements all the required actions to test the bug.
  • libutils/ contains common utility functions to be used for testing WMS and running the regression tests
  • data/ contains a .jdl or scripts or some data needed for running the testing script for each bug
  • testdata/ contains the sqlite based database file which contains information about all the available regression tests

How to add a new regression test

For each new bug:

  • create a module with name .py under the 'bugs' package (execution will be started from the run() method which is necessary to be implemented).
  • add any necessary file under the 'data' directory (input data, external jdl , script)
  • register the new test with register_regTest.py

How to register a new regression test:

To register a new regression test it is necessary to have already create the corresponding python module under the 'bugs' package. During the registration the user will provide the following information:

  • Bug number
  • Link to savannah bug page
  • Short description of the bug
  • Description of actions that should be taken to test the bug

When we use file based registration it is necessary to create a description file with the following format:

Bug: <put the bug number>
Link: <link to savannah bug page>
Summary: <short description of the bug>
Description:
And then a list of actions that should be taken to test the bug.

Available commands – tools:

list_regTests.py

Display the list of the registered regression tests.
Usage: 

list_regTests.py [-h] [-d <level>] [-o <filename>]

 -h               this help
 -d <level >      print verbose messages (level = (1|2|3)
 -o <filename>    save only bug numbers at filename

register_regTest.py

Register a new regression test for some bug. There are two operation modes interactive and file based registration.
Usage: 

register_regTest.py [-h] [-f <filename>]

 -h               this help
 -f <filename>    filename

execute_regTest.py

Execute automatically regression tests.
Usage: 

execute_regTest.py -a | -b <#bug> | -i <file> [-s] [-h] [-l] [-d <level>] [-c <conf>]

 -b <#bug>        execute the regression test for given #bug
 -a               execute all available regression tests
 -i <file>        execute only the regression tests that are listed to file
 -h               this help
 -s               show all the available tests
 -l               save output in a file
 -d <level >      print verbose messages (level = (1|2|3)
 -c <conf>        configuration file

If user specifies option -a then the command will execute all the available regression tests from the database. If user specifies option -i then will be executed automatically only the regression tests for the bugs which are listed in the . To execute only a single bug use option -b <#bug>. Supports “continue on error” and logging.

-- AlessioGianelle - 2011-10-03

Topic revision: r1 - 2011-10-03 - AlessioGianelle
 
This site is powered by the TWiki collaboration platformCopyright © 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback