Useful Tools for Testing
Aled Smith
Useful Tools for Testing Aled Smith Useful Tools for Testing - - PowerPoint PPT Presentation
Useful Tools for Testing Aled Smith Useful Tools for Testing This presentation will be looking at two useful tools for performing tests: 1. Virtual Machine Creator
Aled Smith
What is it?
configuring OpenStack virtual machines. How does it work?
What can it do?
any SSH tasks like installing and configuring software can be executed from a Python script. It also provides built-in functions to perform tasks like sudo commands and file transfers.
new slave nodes and executing Jenkins jobs.
and modifying virtual machines.
Jenkins OpenStack JenkinsAPI Nova SSH Fabric VM Creator
installed for the purposes of running test projects using Jenkins.
Generate new key-pair Create virtual machine Expand main partition Add ‘jenkinst’ service account Install WinCC-OA Install Subversion Install PVSSBootstrapper Install Java Connect VM to Jenkins Install X-Window
Virtual Machine Creator must complete for this particular use case.
to any specific use case and the user can pick and choose the functions they’d like to use and also add their own.
installed for the purposes of running test projects using Jenkins.
Generate new key-pair Create virtual machine Expand main partition Add ‘pvss’ local account Install WinCC-OA Install Subversion Install PVSSBootstrapper Install X-Window
Virtual Machine Creator must complete for this particular use case.
to any specific use case and the user can pick and choose the functions they’d like to use and also add their own.
Linux 6 virtual machine is created with WinCC-OA installed that is not a Jenkins slave, has a local account called ‘pvss’ and has Samba and Gmoon installed.
Create virtual machine Install Samba Install Gmoon
into a Jenkins job. Jenkins Job: https://icejenkins.cern.ch/job/CREATE_JENKINS_SLAVE/
What is it?
WinCC-OA project. What can it do?
How does it work?
them to the user. The user can then select the tests that they want executing.
installed/tested, their sources and the location of the unit test ctl script in an XML file.
Start via GUI panel. Find available unit tests within project. Run the unit tests. Publish the results of the unit tests. End via GUI panel. User selects unit tests.
CTRL Python
Delete project Start via command line. Use existing project? Check project is registered and start it. Create project, install desired components and start project. Start Unit-Test-Harness within project. Copy results from project and stop project Clean-up project? End via command line. Yes No Yes No
formats of data while the RDA3 server continuously iterates the data it publishes.
checks each iteration of data that is received and records any missed or incorrect iterations.
such as starting the RDA3 Server.
installation of the components.
following flow chart:
Start via GUI panel. Find available unit tests within project. Run the unit tests. Publish the results of the unit tests. End via GUI panel. User selects unit tests.
CTRL Python
Start Jenkins job Start RDA3 client Start RDA3 server Start listener and leave running for fixed time End of Jenkins job Publish test results
Jenkins
Initialise listener values Stop listener Delete project Start via command line. Use existing project? Check project is registered and start it. Create project, install desired components and start project. Start Unit-Test-Harness within project. Copy results from project and stop project Clean-up project? End via command line. Yes No Yes No
setup_project.py run_tests.py
XML code within the XML configuration file that is passed to the Unit-Test-Harness through the command line.
components that need to be installed, their sources and also defines the location of the test suite file.
Unit-Test-Harness to execute all of the unit test cases but these can also be specified individually using the <testCase> tag.
test cases and their logic.
routine.
following assert routines:
Jenkins Job: https://icejenkins.cern.ch/job/RDA3_CLIENT_MONITOR/
Useful Links:
Virtual Machine Creator:
Unit-Test-Harness:
Fabric:
JenkinsAPI:
Nova: