PTL Directory Structure
Test command: pbs_benchpress PTL-based commands: pbs_config: for configuring PBS and PTL for testing Commands that are not currently in use: pbs_as: for future API mode Core Python library: PBSTestLib Supporting files for PBSTestLib: pbs_api_to_cli.py, pbs_ifl_mock.py PBS test suite: pbs_testsuite.py containing PBSTestSuite (which is Python testing framework) Utilities PTL provides, such as pbs_snaputils.py, pbs_logutils.py, pbs_dshutils.py, pbs_crayutils.py, etc. Feature-specific tests Test suites under this directory should inherit base class TestFunctional Tests related to PBS interfaces (IFL, TM, RM) Test suites under this directory should inherit base class TestInterfaces Performance tests Test suites under this directory should inherit base class TestPerformance Server & comm failover tests Stress, load, and endurance tests Test suites under this directory should inherit base class TestResilience Security tests Test suites under this directory should inherit base class TestSecurity Testing PTL itself Test suites under this directory should inherit base class TestSelf Upgrade-related tests Test suites under this directory should inherit base class TestUpgradesContents of pbspro/test/fw/:
Directory Description of Contents fw bin
pbs_loganalyzer: for analyzing daemon and accounting logs
pbs_snapshot: for capturing state of complex
pbs_stat: for getting status of PBS objects, e.g. jobs, queues
pbs_cov: for getting code coverage
pbs_py_spawn: left over from another project
pbs_swigify: for future API modedoc Documentation source .rst files ptl PTL package lib utils plugins Nose plugins for PTL framework Contents of pbspro/test/tests/:
Directory Description of Contents tests functional interfaces performance resilience security selftest upgrades
Tests
Each test is a Python method and is a member of a Python class defining a test suite.
Tests are named test_<test name>
Test Suites
Each test suite is a Python class made up of tests. Each test is a method in the class.
Test suites are named Test<test suite name>
Test Files
Each test file contains one test suite.
Test files are named pbs_<feature name>.py
Inherited Python Classes
PTL is derived from and inherits classes from the Python unittest unit testing framework.
PTL test suites are directly inherited from the unittest TestCase class.