OpenTestMan
Information
The Open Test Manager (OpenTestMan) is a validation test suite whose purpose is to test interoperability of Management Access Points (MAP) which claim to be DMTF-DASH compliant. The DMTF Desktop and mobile Architecture for System Hardware (DASH) is a suite of specifications, which includes the DMTF Web Services for Management (WS-Management) specification, to address the challenges of desktop and mobile client system management. The AMD SIMFIRE project has additional tools to test interoperability of DASH management consoles.
The OpenTestMan project is maintained by AMD's Systems Manageability team.
Projects Using OpenTestMan:
Technical Details
OpenTestMan can run on both Windows and Linux platforms. It is implemented as a Bash Shell script, so it has a dependency on cygwin in the Windows platform and on Linux platform it uses the bash shell. Please visit the following link for more details on cygwin http://www.cygwin.com/
Opentestman Source Repository
This project's Sourceforge.net Subversion repository can be checked out through SVN with the following instruction set:
svn co https://openwsman.svn.sourceforge.net/svnroot/openwsman/opentestman
(Warning: This is a generic Subversion checkout command which will pull all modules, tags and/or branches of the project. Please refer to project home page for specific SVN instructions, or use "Browse Repository" link; in most cases, you will want to add '/trunk' to the HTTPS URL above to check out only trunk (main development line)).
Information about accessing this Subversion repository may be found in our document titled Subversion (Version Control for Source Code).
Latest Release
0.6.0 is the latest release which now provides complete support for the DMTF DASH Transport and Discovery protocols, DASH 1.0 profiles, and support for the WS Management protocol.
- Support DASH transport (http, https).
- Support DASH basic and digest security profiles.
- Support all WS-Man Protocol including WS-Eventing.
- Support DASH 1.0 profiles**.
** Indication profile is not supported now.
A list of the changes can be found in the OpentestmanChangeLog
Download Details
The source for opentestwsman can be downloaded from the project page at Sourceforge.
Dependencies
OpenTestMan requires JAVA JDK 1.5 or higher to be installed. You can find out what JAVA is used by typing "java -version" from the command line.
OpenTestMan uses libxml2 for XML schema validation. It requires libxml version 20623 or higher to be installed. You can find out what libxml version by typing "xmllint -version" from the command line. Please visit the following link to download the latest libxml http://www.xmlsoft.org/
Setup
Extract (unzip or untar) the compressed tool to any directory
Following is the file structure of the tool
(dir) results [test results are stored here in html format] (dir) tests [test case directory] (dir) etc [supporting scripts & config files] (file) opentestman.sh [tool executable] (file) README [this file] (file) INSTALL [installation instructions] (file) AUTHORS [authors list] (file) VERSION [product version] (file) COPYING [license agreement]
Build
Build the java tools library by going to the etc/tools directory and running 'build_tools.sh'.
Configuration
opentestman.xml is the configuration file for OpenTestMan. It exists in ./etc directory.
Following is the detail description:
ipaddr - tested target destination IP address.
port - tested target Port Number for WS-Management over http.
sslport - tested target Port Number for WS-Management over https.
authentication - user authentication method where "basic" for basic
authentication and "digest" for digest authentication.
This value is case sensitive.
usename - user name for user authentication.
password - password for user authentication.
transport - transport used by WS-Management in tested target
where "http" for HTTP and "https" for HTTPS.
This value is case sensitive.
truststore - trusted SSL certficate store filename (include the filepath).
truststorepasswd - trusted SSL certficate store access password.
uri_path - wsa:TO URI's suffix token sequence, like /wsman.
resource - tested target resource information used by WS-Protocol test
where:
base_classname: CIM classname used by protocol test
namespace: CIM class's namespace
key: key property name of base_classname Class
parent_classname: parent class of base_classname Class
When the HTTPS transport is used,one need to create SSL certificate store file name in ./etc directory.
SSL certificate store name should match opentestman.xml "truststore" name.
To generate SSL certicate store use following command. Make sure "keytool" utility is installed on the system. "keytool" is normally installed in your java jdk directory under /bin or /jre/bin.
[]$ keytool -import -file <certificate> -keystore <truststore> -trustcacerts
Enter keystore password: <truststorepasswd>
Re-Enter password: <truststorepasswd>
Trust this certificate?[no]: yes
For detail information about keytool, please visit http://java.sun.com/j2se/1.4.2/docs/tooldocs/tools.html#security
Result(s)
The test result of the validation suite is stored in ./results/report.html in the form of html file. View report.html using an internet browser.
Each test case in the suite has following result
- Pass if the test output is as expected/defined in the specification(s) - Fail the test fails a normative rule checking in the specification(s). - Warn the test fails a recommended rule checking in the specification(s) - Info the test is skipped or not supported.
The Test Run Summary section in report.html lists the test case and associated result of all the test cases being executed. Clicking the hyper link of a test case result icon will link to that test case detail section which includes description of the test, request generated, response received, detail failure reason (if any), etc.
Opentestman Usage
Example 1: run testcase from the default tests directory
./opentestman.sh
Example 2: run testcases from the non-default directory, testcasedir should be supplied
./opentestman.sh testcasedir
