CREAM regression, BLAH functionality and regression testsuites installation, configuration and use

cream_blah_testsuite installation

Prerequisite: cream_testing (i.e. cream functionality testsuite) installed

All cream and blah testsuites (functionality and regression) work "over" a EMI User Interface. First step:
  • install a emi user interface
  • create your user
  • install your user certificate
  • test your EMI UI with a simple job submission.

EMI UI installation and configuration instructions are available here.

When the UI is running, be sure that the environment variable X509_USER_PROXY is set to your proxy path (something like /tmp/x509up_u0). If not, set it.

cream_blah_testsuite depends on cream_test testsuite. Second step:

  • install cream_test testsuite.

cream_test testsuite installation, configuration and use instructions are available here.

Set italiangrid repository

Repository Not Available now.

Install cream_blah_testsuite

Get the lastest cream_blah_testsuites rpm available here and install it with:
yum install cream_blah_testsuites-X.Y-Z.noarch.rpm 

Note: EMI UI and cream_test must be already installed to be able to install cream_blah_testsuites.

Set SSH keys authentication

Since cream_test v. 1.8 it is provided a script to semi-automate the process - please check in cream_test installation and documentation for more details.

Tha manual procedure is the standard procedure to grant ssh key access in linux:

  • From EMI UI where testsuites are installed create an ssh rsa key pair for host validation, here's how:
         my-ui:~# ssh-keygen -t rsa

  • Now you need to copy the public key to the CREAM CE to be tested (do NOT copy the private key), obviously use scp to do this
         my-ui:~# scp ~/.ssh/ root@my-ce:~

  • Connect to the CREAM CE (my-ce):
         my-ui:~# ssh root@my-ce

  • Check out .ssh stuff, if .ssh dir doesn't exist you need to create it
         my-ce ~ # ls -la ~/.ssh
         ls: cannot access /root/.ssh: No such file or directory
         my-ce ~ # mkdir .ssh
         my-ce ~ # chmod 700 .ssh

  • Now copy your ssh public key into authorized keys file and delete it when finished:
         my-ce ~ # cat ~/ >> .ssh/authorized_keys
         my-ce ~ # chmod 600 .ssh/authorized_keys
         my-ce ~ # rm

  • Test if the setup is correct. You must be able to copy or to connect to the CREAM CE from the EMI UI without supplying passwd.


Sometimes additional configurations are requested on remote ssh daemon, this may vary from basic security configuration. If final test failed you probably have PublicAuthentication or RSA disabled. In this case you need to change them (it doesn't affect or lower your current security). Tipically this change is done by editing /etc/ssh/sshd_config file or better (for security) the user-specific ~/.ssh/config. To get the correct configuration, see that the following attributes are set (not commented or set to "no") in your sshd_config or ~/.ssh/config file RSAAuthentication yes PubkeyAuthentication yes

If you change sshd_config file with these values you need to restart ssh daemon (/etc/init.d/sshd restart)

Note: Thanks to Andrea Benini Ben for this page

Configure cream functionality testsuite

Edit and customize

Configure cream_blah_testsuites

  • Create the cream_blah testsuites configuration file:
         cp /opt/cream_blah_testsuites/lib/conf/cream_testsuite_conf.ini.template /opt/cream_blah_testsuites/lib/conf/cream_testsuite_conf.ini
    and customize it. Be careful:
    • Set the right middleware version installed in the ce under test
    • Set the right path of the yaim configuration files (site-info-path) and be sure they are editable
    • Check the blah_parser parameter value. It must be adequate to the blparser version (old or new) and batch system
  • In the user shell you will use to launch tests source the file: /opt/cream_blah_testsuites/
         source /opt/cream_blah_testsuites/ 
    It will setup the environment needed to run the testsuites.
  • Set python4 pythonpath doing:
       export PYTHONPATH=/usr/lib/python2.4/site-packages:$PYTHONPATH

Testsuite run

A generic description on how to run tests in cream testsuites is available here.

  • At first create a user proxy:
        voms-proxy-init -voms <VO>

  • Set database access permissions runing on CE:

  • Caveats:
    • lauch the testsuites in a shell where you run previously /opt/cream_blah_testsuites/ and set PYTHONPATH
    • lauch the testsuites in a shell where you have write permissions: robot fremework tryes to write log files in the path where it is launched and it fails if it is unable to create its logs.

Run BLAH testsuites

  • Run BLAH functionality testsuite:
   pybot /opt/cream_blah_testsuites/testsuites/blah_testing/tests
  • Run BLAH functionality tests one by one:
   pybot /opt/cream_blah_testsuites/testsuites/blah_testing/tests/check_notifications_for_normally_finished_jobs.html
   pybot /opt/cream_blah_testsuites/testsuites/blah_testing/tests/check_notifications_for_cancelled_jobs.html
   pybot /opt/cream_blah_testsuites/testsuites/blah_testing/tests/check_notifications_for_suspended_resumed_jobs.html
  • Run BLAH regression tests for cream configured with old blparser
   pybot -i old_parser /opt/cream_blah_testsuites/testsuites/blah_regression/tests/bug_*.html
  • Run all BLAH regression tests for cream configured with new blparser
   pybot -i new_parser /opt/cream_blah_testsuites/testsuites/blah_regression/tests/bug_*.html
  • Run BLAH regression tests for a specific release, ex. blah 1.18.0
   pybot -i blah_1.18.0 /opt/cream_blah_testsuites/testsuites/blah_regression/tests/bug_*.html
  • To switch from old to new blparser you have to:
    • Go to the cream ce, set
      and reconfigure using yaim.
    • In file /opt/cream_blah_testsuites/lib/conf/cream_testsuite_conf.ini set in section [blah_specific]:
              parser_type = with_updater_notifier
              parser_log_file = /var/log/cream/glite-ce-bnotifier.log
  • To switch from new to old blparser you have to:
    • Go to the cream ce, set
      and reconfigure using yaim.
    • In file /opt/cream_blah_testsuites/lib/conf/cream_testsuite_conf.ini set in section [blah_specific]:
              parser_type = with_blparser_only
              parser_log_file = /var/log/cream/glite-lsfparser.log

Run CREAM regression testsuite

  • Run all CREAM regression tests
   pybot  /opt/cream_blah_testsuites/testsuites/cream_regression/tests/bug_*.html

Versions compatibility

  • cream_blah_testsuite-0.1-0 is tested with cream_test-1.8.el5-1 and python 2.6

-- SaraBertocco - 2012-10-12

Edit | Attach | PDF | History: r9 < r8 < r7 < r6 < r5 | Backlinks | Raw View | More topic actions
Topic revision: r9 - 2013-01-31 - SaraBertocco
This site is powered by the TWiki collaboration platformCopyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback