, view all tags

CREAM Test work plan


The CREAM testsuite is a set of python scripts that interacts with the CREAM command line tools in order to perform several functional tests.

Installation and setup

The easiest way to deploy the testsuite is to have a UI node already available, for further details refer to the Generic Installation and Configuration Guide. The testsuite can be installed using yum creating a file called testsuites.repo in the yum.repos.d directory with the following definition:

and then running
yum update
yum install glite-testsuites-cream

After the installation it is suggested to check if the environment variable GLITE_LOCATION points to the correct gLite installation directory, i.e. the one containing the bin folder with the CREAM clients.

Work plan

Testsuite description

The set of test can be divided into two main categories, according to the type of status detection mechanism for a job:

Proxy management

Each test can be run using either an external user voms-proxy or with an internal management of the voms-proxy. The default mechanism is using an external voms-proxy. The external voms-proxy is not renewed by the test, the user is responsible for updating that credential if required in such a way that it does not interfere with tests, for example "renaming" the new proxy into the old one. The external voms-proxy path is defined with the environment variable X509_USER_PROXY, the main default is /tmp/x509_uuid. With the internal management of the voms-proxy the testsuite keeps track of the renewal of that credential, the user has just to provide a valid personal certificate and private key. The environment variables required for enabling this mode are: X509_USER_CERT and X509_USER_KEY; when this mode is selected each test requires the definition of the VO to be used (option --vo) and the voms-proxy-init client must be properly configured.

Delegation management

Each test can be run either using a single delegated proxy on the CE for all the submissions or with one delegated proxy per submitted job, see --delegationType option. The tester must be aware of using the second mode can overload the entire system, both the service and the testsuite, so the tuning of the test parameters must consider that issue.

Isolation and interference tests

One of the basic requirements for a test is to be isolated; each test handles only its own jobs and resources in general (delegated proxies, lease tokens, etc.) with no interferences from other tests. Multiple tests can be executed in parallel in order to detect interferences on the service side; for example the cream-test-monitored-lease-expired test can be run together with cream-test-monitored-submit for discovering a wrong lease management for the jobs submitted by the latter.

Hints for test tuning

  • Due to unavoidable delays in the command scheduling, the life-time of the job submitted with the cream-test-notified-cancel has to be at least 3 times longer than the rate parameter. With shorter life-time the job can terminate before the testsuite is able to detect the change of its status.

Proposed test plan

The set of tests described in this section is used for the pre-certification of the latest version of the CREAM CE and can be considered a template for external testers. In the following the CREAM CE under test is cream-12.pd.infn.it:8443 with Torque and cream_A as assigned queue.

The simple.jdl contains:


The log4py.conf contains:

Format: %T %L %C [%F] - %M
Target: cream-test-cream-12.log
Ansi: False
LogLevel: Debug

  • Simple submission with polling:
    cream-test-monitored-submit -r 30 -n 1000 -m 50 -C 50 -R cream-12.pd.infn.it:8443/cream-pbs-cream_A -l log4py.conf -j simple.jdl
    The renewal process is disabled, the variable X509_USER_PROXY must point to a 12-hours long proxy.

  • Simple submission with notifications:
    cream-test-notified-submit -r 30 -n 1000 -m 50 -C 50 -p 9000 -R cream-12.pd.infn.it:8443/cream-pbs-cream_A -l log4py.conf -j simple.jdl
    The renewal process is disabled, the variable X509_USER_PROXY must point to a 12-hours long proxy.
Edit | Attach | PDF | History: r32 | r11 < r10 < r9 < r8 | Backlinks | Raw View | More topic actions...
Topic revision: r9 - 2008-11-25 - PaoloAndreetto
  • Edit
  • Attach
This site is powered by the TWiki collaboration platformCopyright © 2008-2022 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback