SBLIM: Test Suite. Test Suite Specification and Implementation Details. Revision 4 Last updated June 13, 2003

Size: px
Start display at page:

Download "SBLIM: Test Suite. Test Suite Specification and Implementation Details. Revision 4 Last updated June 13, 2003"

Transcription

1 SBLIM: Test Suite Test Suite Specification and Implementation Details Revision 4 Last updated June 13, 2003 Document Owner: Heidi Neumann LTC Systems Management heidineu@de.ibm.com Distribution: SBLIM Open Source Project http.//oss.software.ibm.com/developerworks/projects/sblim/ Master Copy is located on PC of document owner

2 1 Document Control Change History Reviewers List Contributing Authors Introduction Purpose of this document Test Approach / Requirements Interface Test Consistence Test Specification Test Problem Areas SBLIM Test Suite Prerequisites Architecture File Structure User Interfaces Script : run.sh Script : interface.pl Script : consistence.pl Interface Test Input File Class specific Syntax Header Syntax Paragraph Syntax Example Association specific Syntax Header Syntax Paragraph Syntax Example Report File Class specific Syntax Association specific Syntax Instance Interface enuminstancenames() or enuminstances() getinstance() setinstance() createinstance() deleteinstance() execquery() Association Interface associatornames() & associators() referencenames() & references() Algorithm to Handle the Input Parameter role, resultrole and resultclass associatornames() referencenames() Report File Method Interface Property Interface Indication Interface Common Interface Tests Check for expected Exception Consistence Test Capabilities Input File Class specific Syntax

3 Header Syntax Paragraph Syntax on Class Level Paragraph Syntax on Property Level Paragraph Syntax on Instance Level Example Association specific Syntax Header Syntax Paragraph Syntax on Reference Level Example Report File Class Specific Syntax Association Specific Syntax Class Specific Test Cases Class Level Property Level Instance Level Association Specific Test Cases Association Level Specification Test

4 1 Document Control 1.1 Change History Revision Date Description 1 04/04/2003 Initial Draft Version 2 04/25/ reorganization of input and report file descriptions for interface test (moved from chapter 3 to chapter 4) - Chapter 5 : Consistence Test written 3 05/15/ Chapter 5 : additional return codes on property level defined - Chapter 5 : input / report file descriptions and return codes for association test defined 4 06/13/ Chapter 6 : comment added to be future task - Review of complete document in preparation to the announcement 1.2 Reviewers List Name Robert Kieninger Adrian Schuur Viktor Mihajlovski Role & Responsibility 1.3 Contributing Authors Name address Description Robert Kieninger kieningr@de.ibm.com Input for Requirements and Purpose of the test suite 4

5 2 Introduction 2.1 Purpose of this document Performing hand-operated tests of available CIM Instrumentation can become a nightmare, if tests for different operating systems, Linux distributions, releases and hardware platforms are required. In order to guarantee that one CIM Instrumentation is functioning correct within different environments, a test suite is being developed that offers the user a well defined set of test types to define Instrumentation dependent test scenarios and the possibility to perform automated function verification tests against the installed CIM Instrumentation. The SBLIM Test Suite is subject of this document. The reader should be familiar with CIM, CIM terms and should have some deeper knowledge about provider implementations. 2.2 Test Approach / Requirements The test suite acts as a CIM Client and uses a generic command line interface (SBLIM WBEMCLI package) that can be parameterized to perform the CIMOM calls. The command line interface WBEMCLI can communicate with different CIMOM Implementations, like OpenCimom and Pegasus. The test suite itself is script based and interprets the return values of the WBEMCLI command. The test suite has to be easy extendable regarding the test of new classes / providers. The test suite covers the following three types of tests for CIM Instrumentation. One that generically verifies that all required provider interfaces are properly implemented, one that checks if the returned values are really meaningful and one that checks if the returned values follow the specification. All tests have to be as much self checking as possible Interface Test The most important and supposing easiest to implement test scenario is a general functionality test of the interface types supported by the provider. Known types are the Instance, Association, Property, Method and Indication (or Event) Interfaces. Each interface type supports a defined set of operations. The first iteration of the test suite will be able to execute each operation of the Instance and Association Interfaces and interpret the returned results. A requirement against the design of the test suite is the possibility to easily support the other interface types. A modularized approach will be the choice here. The user is able to define on operations level which tests to perform. Therefore he needs knowledge about the interface types and their special operations. This allows the user to specify the scope of the test scenario. The user should be able to specify a certain Exception he expects. Some implementations require, that an exception like NOT_SUPPORTED is thrown by the provider. This makes sense, if an operation is callable, but has no functionality. For example, the createinstance() call of the OperatingSystem instance provider does not make sense. Supporting this operation would mean, that an OS should install another OS over itself! To offer the client a self-describing return code, the decision was made, to return NOT_SUPPORTED. Returning a status of OK would mean that the operation was successfully performed. This is wrong, because there is no functionality implemented for this operation. 5

6 2.2.2 Consistence Test The consistence test distinguished between class and association level. The class level contains a test between the numbers of reported instances against the system state. The number of valid instances is collected by a script or only one single command. Described on a file system example, the provider should return not more and not less instances than file systems are known to the operating system. So it can be checked if the provider returns duplicates or does not report some of the instances. On property level two types are important to check the correctness of the returned property values. One can check the observance of threshold values. The other one is checking returned property values against system values. The last test step checks the consistence of the property values within each single instance. The association level contains a test between the number of reported target instances against the association definition and the system state. A further test checks the correctness of the instances reported by the association provider against the instances, reported by the instance provider of the target instance. The system values are collected by test scripts. To automate the execution of these test steps the system test scripts follow certain syntax Specification Test The specification test makes use of the meta-information about the model. Within this test type, it is possible to figure out, if the provider implements the class definition in the required manner. For example, the definition of a class marks a certain property as required. But the provider does not return a value for this property. This is a violation of the CIM specification. 2.3 Problem Areas Due to the dynamic nature of the returned data it will be hard, if not impossible, to create tests that check for semantically correct results (chapter Consistence Test). However, because of the layered architecture it should be possible to create a dummy version of the Resource Encapsulation Library, that will allow the providers to generate reproducible results. They can be used for automated validation of correct data processing within the providers. CIMOM CMPI CMPI Provider CMPI Provider CMPI Provider Resource Encapsulation Library (Data Gathering) Instrumentation Package R R R R R Figure 1 : Architecture of CIM Instrumentation Packages 6

7 3 SBLIM Test Suite 3.1 Prerequisites To guarantee a correct functioning of the SBLIM Test Suite, the user has to make sure, that the following prerequisites are satisfied. the CIMOM is configured and functioning correct the CIMOM is running the model to test is completely loaded into the CIMOM repository the installation process of the CIM Instrumentation (provider) was successfully completed the CIMOM is capable of calling the provider 3.2 Architecture The entry point to the test suite is class level. That means each test type (see 2.2 Test Approach / Requirements ) is performed to one single class name. To automate the test for a collection of classes a small shell script can be written, which calls the test suite entry point with the respective class name. The used programming languages are Perl and shell scripting. For each class and test type an input file must be written by the user. The semantic of this file follows a well defined structure, which is described in the chapters 4.1 Input File and 5.2 Input File. For each performed test of a certain class a report file is created. These statistical data describe the status of each test step ( ok or failed and a description ), the time spend in system and user mode (describes the resource consumption of the test process), a summary of the succeeded and failed test steps and the overall times spend in system and user mode File Structure File Name run.sh cimom.pm interface.pl instance.pm associator.pm shell script perl module perl script perl module perl module Functionality contains the collection of test types to perform (interface, constistence, specification) Contains the access information to the specific CIMOM -> edit to fit your system parses the input file and selects the corresponding interface type implementation of the instance interface tests implementation of the association interface tests 7

8 consistence.pl consistence.pm system/<platform>/ createkeyfiles.sh perl script perl module shell script parses the input file and selects the corresponding level to test (class or association) implementation of the class and association level tests creates two files : ComputerSystem.keys and OperatingSystem.keys; the files offer the CreationClassName and Name of the classes for reference by other classes, e.g. Process cim directory contains the input files for the interface tests system/<platform> directory contains the input files for the consistence tests stat directory contains all report files after test execution; for each executed test one report file Each type of test (Interface, Consistence and Specification) is divided into two major parts, where the first part is mandatory and the second part a recommendation to automate the execution of tests for more than one class / association. The first part is writing the necessary definition files, later called input files to define the classes / associations to test. The input files have to follow certain syntax. The syntax is described in the corresponding chapter. In addition it can be necessary to write shell script for the system data gathering. The second part is writing a small shell script to automate the execution of the test types. The script run.sh can be used as entry point User Interfaces Script : run.sh The script run.sh is the entry point for a user, who wants to use the whole functionality of the test suite. The script executes first the interface test and second the consistence test for the given class. Usage : First the variable SYSTEM_PATH has to be edited to fit to the actual system. The variables HOST and TEST_DIR should be initialized correctly, but they can be change if necessary../run.sh <class name> Script : interface.pl The perl script interface.pl executes the interface operations against the provider as defined by the input file. In addition the parameter -assocparams defines, that the algorithm which handles the validation of the input parameter role, resultrole and resultclass of the association operations has to be tested. Usage :./interface.pl <class name>./interface.pl <class name> -assocparams Script : consistence.pl The perl script consistence.pl executes the consistence test and compares the values returned by the provider against the system data as defined by the input file. 8

9 If the consistence test is started for the first time on a certain machine, the script system/<platform>/createkeyfiles.sh is executed to create the platform specific key files. If this step fails, the complete test will fail. Under circumstances it can be necessary to enhance the functionality of this test script. It depends on the classes to test. Usage :./consistence.pl <class name> <system/<platform>> 9

10 4 Interface Test 4.1 Input File The input file defines the class / association to test. For each class / association one input file has to exist in the directory cim. The name of the file has to be <class name>.cim. The syntax of the input files distinguishes between two parts. The header contains overall information of the class / association itself. The header is followed by paragraphs, describing the interface type and operation to test. It is not necessary to insert all operations of a certain interface. By adding a certain paragraph to the input file, the decision was made to test this interface operation. By leaving a certain paragraph out, the decision was made to not test this interface operation Class specific Syntax Header Syntax The key words class and objectpath are mandatory. The class qualifier defines the name of the class. The objectpath qualifier defines a full qualified object path of a sample instance of this class. The object path must not contain a newline! The object path is necessary to perform operations like createinstance() and deleteinstance(). If the intention is only to test a certain returned Exception, the sample instance can be a dummy instance and does not need to exist on the test system. The qualifier volatile should only be used for classes, which represent volatile data, for example the class CIM_Process. The intention of this qualifier is to find a mechanism how to handle the dynamical nature of some data. It is very likely that each time you call especially the getinstance() operation of a provider for volatile data, the returned answer can vary between ok and NOT_FOUND. To avoid in principle failing the test has to be aware of this difference. ****************************************************************************** class : <class name> objectpath : <object path of a sample instance> [ volatile ] Paragraph Syntax Each paragraph defines the interface type Instance and the operation to perform. Supported key words for operations are enuminstancenames, enuminstances, get, set, create, delete and execquery. The qualifier Expected Exception is optional and needs only be defined, if a certain Exception is expected to be thrown (as described in Interface Test ). Instance enuminstancenames 10

11 Instance delete [Expected Exception : <insert expected exception type>] Instance execquery Example ***************************************************************************** class : Linux_ComputerSystem objectpath : Linux_ComputerSystem.CreationClassName=Linux_ComputerSystem,Name\ =testsystem.ibm.com Instance enuminstancenames Instance create Expected Exception : NOT_SUPPORTED Association specific Syntax An association is defined in mof syntax as followed : [ Association ] class Linux_RunningOS : CIMRunningOS { [Override Antecedent ] Linux_OperatingSystem REF Antecedent; [Override Dependent ] Linux_ComputerSystem REF Antecedent; } Header Syntax The key words association and objectpath are mandatory. The association qualifier defines the name of the association. The objectpath qualifier defines a full qualified object path of a sample instance of this association. The object path must not contain a newline! The object path is necessary to perform instance operations like createinstance() and deleteinstance(). If the intention is only to test a certain returned Exception, the sample instance can be a dummy instance and does not need to exist on the test system. The qualifiers sourcerole, targetrole, sourceclass and targetclass are mandatory and define the association specific reference properties. The sourcerole specifies the name of the source reference. It is recommended to use the name of the first reference in the association, for example Antecedent. The targetrole specifies the name of the target reference. It is recommended to use the name of the second reference in the association, for example Dependent. The sourceclass specifies the class name of the source reference, for example Linux_OperatingSystem. If the provider supports a CIM_<class name> and returns instances with class names of other, derived classes, then list first the CIM_<class name> followed by all the derived class names. The targetclass specifies the class name of the target reference, for example Linux_ComputerSystem. If the provider supports a CIM_<class name> and returns instances with class names of other, derived classes, then list first the CIM_<class name> followed by all the derived class names. 11

12 ****************************************************************************** association : <association name> objectpath : < object path of a sample instance> sourcerole : <role of the source reference> targetrole : <role of the target reference> sourceclass : <class name(s) of the source reference> targetclass : <class name(s) of the target reference> Paragraph Syntax Each paragraph defines the interface type Association and the operation to perform. Supported operations are associators, associatornames, references and referencenames. Association associators Association referencenames Example ***************************************************************************** association : Linux_RunningOS objectpath : Linux_RunningOS.Antecedent= Linux_OperatingSystem.CSCreationClass Name=Linux_ComputerSystem,CSName=testsystem.ibm.com,CreationClassName=Linux_Op eratingsystem,name=testsystem.ibm.com,dependent= Linux_ComputerSystem.Creatio nclassname=linux_computersystem,name=testsystem.ibm.com sourcerole : Antecedent targetrole : Dependent sourceclass : Linux_OperatingSystem targetclass : Linux_ConputerSystem Instance enuminstancenames Instance create Expected Exception : NOT_SUPPORTED Association associators Association associatornames Association references Association referencenames 12

13 4.2 Report File The report file is generated per tested class. For each executed interface test one report file exists in the directory stat. The name of the file is <class name>.stat. The syntax of the report files is similar to the syntax of the input files. The report file contains some additional information. Each interface type has its own chapter. If an input file defines tests on instance and association operations this test results in a report file, containing one chapter for the results of the instance interface test and one chapter containing the results of the association interface tests. Each chapter header specifies the start date of the test. The paragraph of the single operations depends on the returned execution status. Each report file contains a summary to report an overall statistic of the tests. It contains the number of succeeded and failed tests and the times the whole test case spend in user and system mode Class specific Syntax Possible return codes of the operations are defined in chapter 4.3 Instance Interface. If the test returned with ok, a statistic of the time spent in system and user mode is reported. In addition if an enumeration was tested the number of returned instances is reported. Example : ****************************************************************************** class : Linux_ComputerSystem Fri Apr 4 8:43: Instance enuminstancenames Status : ok RC : 1 Number of returned Instances : 1 user time : 0.01 child user time : 0 ut : 0.01 system time : 0 child system time : 0 st : 0 Instance create Status : failed unexpected exception occurred - <wbemcli output> RC : 2 ****************************************************************************** Linux_ComputerSystem Number of Tests where Status ok : 1 Number of Tests where Status failed : 1 user time : 0.02 child user time : 0 ut : 0.02 system time : 0 child system time : 0.01 st : Association specific Syntax Possible return codes of the operations are defined in chapter 4.4 Association Interface. The traversal of an association can be performed in two directions. The test distinguishes between them. Therefore the 13

14 status of both directions is reported separately. If both tests returned with ok a statistic of the time spend in system and user mode is reported. Example : ****************************************************************************** class : Linux_RunningOS Fri Apr 4 8:44: Instance enuminstancenames Status : ok RC : 1 Number of returned Instances : 1 user time : 0.01 child user time : 0 ut : 0.01 system time : 0 child system time : 0 st : 0 Instance create Status : ok operation returned with NOT_SUPPORTED RC : 1 ****************************************************************************** association : Linux_RunningOS Fri Apr 4 8:45: Association associators RC : 1.1 Status : Linux_OperatingSystem to Linux_ComputerSystem : ok Number of returned Instances : 1 Status : Linux_ComputerSystem to Linux_OperatingSystem : ok Number of returned Instances : 1 user time : 0.03 child user time : 0 ut : 0.03 system time : 0 child system time : 0.01 st : 0.01 Association associatornames RC : 1.1 Status : Linux_OperatingSystem to Linux_ComputerSystem : ok Number of returned Instances : 1 Status : Linux_ComputerSystem to Linux_OperatingSystem : ok Number of returned Instances : 1 user time : 0.05 child user time : 0 ut : 0.05 system time : 0 child system time : 0.02 st : 0.02 Association references RC : 1.1 Status : Linux_OperatingSystem to Linux_ComputerSystem : failed <description> Association referencenames RC : 1.1 Status : Linux_OperatingSystem to Linux_ComputerSystem : failed <description> 14

15 ****************************************************************************** Linux_RunningOS Number of Tests where Status ok : 4 Number of Tests where Status failed : 2 user time : 0.08 child user time : 0.03 ut : 0.11 system time : 0.03 child system time : 0.02 st : Instance Interface The CIM Instance Provider Interface supports the following operations : enuminstances() enuminstancenames() getinstance() setinstance() createinstance() deleteinstance() execquery() The perl functions to test the instance operations are implemented in the perl module instance.pm. The module exports the functions enumerate, get, create, delete, execquery and check_returnedexception enuminstancenames() or enuminstances() The perl function enumerate is responsible for testing the instance provider operations enuminstancenames() and enuminstances(). The perl function sends an enuminstancenames() or enuminstances() request to the CIMOM and validates the returned values. Test Return Code Return Code Description check if an exception occurred 2 failed - exception occurred - <wbemcli output> check if the returned instance(s) is/are of failed - returned instance(s) is/are of wrong 3 the requested class type class type 1 ok getinstance() The perl function get is responsible for testing the instance provider operation getinstance(). The perl function sends an enuminstancenames() request to the CIMOM to get the object paths of all available instances. For each object path an getinstance() request is send to the CIMOM and the returned value is validated. 15

16 Test Return Code Return Code Description check if enuminstancenames() returned 2 failed - enumeration - exception occurred - with an exception <wbemcli output> check if the by enuminstancenames() returned instance(s) are of the requested 3 failed - enumeration - returned instance(s) is/are of wrong class type class type check if an exception occurred 12 failed - exception occurred - <wbemcli output> check if the returned instance is of the requested class type 13 failed - returned instance is of wrong class type - <wbemcli output> check if a volatile class type returned with another exception than NOT_FOUND 14 warning - volatile class type returned with exception - <wbemcli output> 1 ok setinstance() Currently not supported createinstance() The perl function create is responsible for testing the instance provider operation createinstance(). The perl function sends an createinstance() request to the CIMOM and validates the returned value. If successful, an getinstance() operation of the new instance is executed to test if the instance was really created. Test Return Code Return Code Description check if an exception occurred 2 failed - exception occurred - <wbemcli output> check if instance was created 3 failed - instance was not created check if in getinstance an exception occurred 12 failed - exception occurred - <wbemcli output> 1 ok deleteinstance() The perl function delete is responsible for testing the instance provider operation deleteinstance. The perl function sends an deleteinstance() request to the CIMOM and validates the return value. If successful, an getinstance() operation of the old instance is executed to test if the instance was really deleted. Test Return Code Return Code Description check if an exception occurred 2 failed - exception occurred - <wbemcli output> check if instance was deleted 3 failed - instance was not deleted check if in getinstance an exception occurred 12 failed - exception occurred - <wbemcli output> 1 ok 16

17 4.3.6 execquery() Currently not supported. 4.4 Association Interface The CIM Association Provider Interface supports the following operations : associators() associatornames() references() referencenames() The perl functions to test the association operations are implemented in the perl module associator.pm. The module exports the functions associators, references and check_role_resultrole_resultclass_params associatornames() & associators() The perl function associators is responsible for testing the association provider operations associatorname s() and associators(). For each reference class name (source and target reference) the perl function associators sends an enuminstancenames() request to the CIMOM to get the object paths of all available instances. For each object path an associatornames() or associators() request is send to the CIMOM and the returned values are checked. If the qualifier sourceclass or targetclass define a list of class names, only the first entry with the CIM_<class name> is taken to perform this test.! The parameter assocclass is set to the class name of the association. If this parameter is not supported by the provider, the complete test will fail! Test check if in enuminstancenames() an exception occurred check if an exception occurred 12 check if the returned instance is of the expected target class type Return Return Code Description Code failed - enumeration <source class name> - 2 exception occurred - <wbemcli output> failed - (associators associatornames) - exception occurred - <wbemcli output> 13 failed - returned instance(s) is/are of wrong class type <target class name> 1 ok referencenames() & references() The perl function references is responsible for testing the association provider operations referencenames() and references(). 17

18 For each reference class name (source and target reference) the perl function references sends an enuminstancenames() request to the CIMOM to get the object paths of all available instances. For each object path an referencenames() or references() request is send to the CIMOM and the returned values are checked. If the qualifier sourceclass or targetclass define a list of class names, only the first entry with the CIM_<class name> is taken to perform this test.! The parameter resultclass is set to the class name of the association. If this parameter is not supported by the provider, the complete test will fail! Test Return Code Return Code Description check if in enuminstancenames() an failed - enumeration <source class name> - 2 exception occurred exception occurred - <wbemcli output> check if an exception occurred 12 failed - (references referencenames) - exception occurred - <wbemcli output> check if the returned instance is of the expected target class type 13 failed - returned instance(s) is/are of wrong class type <target class name> 1 ok Algorithm to Handle the Input Parameter role, resultrole and resultclass The perl function check_role_resultrole_resultclass_params is responsible for testing the algorithm, which validates the parameters role, resultrole and resultclass. associators() supports role, resultrole and resultclass associatornames() supports role, resultrole and resultclass references() supports role and resultclass referencenames() supports role and resultclass First a clarification to the meaning / handling of the input parameters assocclass and resultclass within the association operations needs to be done. The associators() / associatornames() calls return instance(s) / object path(s) of the referenced target class. The references() / referencenames() calls return instance(s) / object path(s) of the association class itself. The parameter assocclass defines the name of the association class the requester is interested to. The parameter resultclass defines the class name of the returned instance(s) / object path(s). So for referencenames() / references() the parameters assocclass and resultclass have the same meaning. Both define the name of the association class. This behavior is visible in the Client request. The Client request only supports setting the resultclass parameter for the references() / referencenames() calls. The CIMOM takes the value of the resultclass parameter and submits it as assocclass parameter to the provider. So don t be confused, when using the association provider interface. As described in the two chapters before, the support of the parameter assocclass is mandatory for the execution of the tests. That s why an additional test for this parameter is not performed. For references() / referencenames() only the role parameter is checked. The test requires, that at least referencenames() and references() on the one hand and associatornames() and associators() on the other hand use the same algorithm to validate the input parameter. Ideally all four operations would use the same algorithm. This requirement is based on the implementation of the perl function check_role_resultrole_resultclass_params. Only the referencenames() and associatornames() calls are used for the execution of the test. 18

19 The perl function check_role_resultrole_resultclass_params sends an enuminstancenames() request of the sourceclass to the CIMOM to get the object paths of all available instances. The described tests are only performed, if the source is not a CIM_<class name>. If the input file defines a list of class names starting with the common CIM_<class name>, the CIM_<class name> is jumped over and the enumeration is performed for each of the derived class names. For each object path returned by the enumeration, the following described tests against the associatornames() and referencenames() are executed. To test the algorithm the other way around, the perl function check_role_resultrole_resultclass_params switches the content of the sourceclass and the targetclass. This means the targetclass becomes the sourceclass and the former sourceclass becomes the targetclass. Then the test is performed again associatornames() For each object path returned by the enumeration, the per l function check_resultclass is called. The function tests the validation of the input parameter resultclass. If this test was successful, the perl function check_role_resultrole, to test the validation of the input parameter role and resultrole is called. The order is mandatory and based on the implementation of check_role_resultrole. The resultclass parameter in check_role_resultrole is set for each call. For completeness the perl functions check_resultclass and check_role_resultrole set the resultclass parameter to each possible targetclass. This is important, if a list of class names for a certain reference is supported by the association provider. Test check if in enuminstancenames() an exception occurred check if in associatornames() an exception occurred Return Code 2 12 Return Code Description failed - enumeration <source class name> - exception occurred - <wbemcli output > failed - exception occurred - <wbemcli output > set the value of the resultclass parameter to the target class name - check if instance(s) of the target class is/are returned set the value of the resultclass parameter to the source class name - check if no instances are returned set the value of the role parameter to the source role - check if instance(s) of the target class is/are returned set the value of the role parameter to the target role - check if no instances are returned set the value of the resultrole parameter to the target role - check if instance(s) of the target class is/are returned 17 failed - resultclass parameter seems to be ignored (1) 1 ok 18 failed - resultclass parameter seems to be ignored (2) 1 ok - no instance(s) returned 13 failed - role parameter seems to be ignored (1) 1 ok 14 failed - role parameter seems to be ignored (2) 1 ok - no instance(s) returned 15 failed - resultrole parameter seems to be ignored (1) 19

20 1 ok set the value of the resultrole parameter to the source role - check if no instances are returned 16 failed - resultrole parameter seems to be ignored (2) 1 ok - no instance(s) returned referencenames() For each object path returned by the enumeration, the perl function check_role_resultrole is called. The function tests the validation of the input parameter role. Test check if in enuminstancenames() an exception occurred check if in referencenames() an exception occurred Return Code 2 12 Return Code Description failed - enumeration <source class name> - exception occurred - <wbemcli output > failed - exception occurred - <wbemcli output > set the value of the role parameter to the source role - check if the source class plays the specified role in the association instance set the value of the role parameter to the target role - check if no instances are returned 13 failed - role parameter seems to be ignored (1) 1 ok 14 failed - role parameter seems to be ignored (2) 1 ok - no instance(s) returned Report File The report file is generated per tested association and only if the test of the algorithm was requested explicitly by calling./interface.pl <class name> -assocparams. For each tested association one report file is created in the directory stat. The name of the file is params_<class name>.stat. The file header specifies the name of the association and the start date of the test. Each interface type (associatornames() and referencenames())has its own chapter. The chapter contains information about the object path of the source class, the name of the target class and the tested input parameter. Reported are the status description of the test and the number of returned instances. Each report file ends with a summary to report an overall statistic of the tests. It contains the number of succeeded and failed tests and the times the whole test case spend in user and system mode. The report file may become very large but each chapter is self-describing and should be easy to read. Example : ****************************************************************************** class : Linux_RunningOS test algorithm to validate the input parameter role, resultrole and resultclass Fri Apr 4 8:44:

21 associatornames sourceclass : testsystem.ibm.com:5988/root/cimv2:linux_operatingsystem.cscreat ionclassname=linux_computersystem,csname=testsystem.ibm.com,creationclassname= Linux_OperatingSystem,Name= testsystem.ibm.com targetclass : Linux_ComputerSystem test content : resultclass is set to Linux_ComputerSystem Status : ok Number of returned Instances : 1 test content : resultclass is set to Linux_OperatingSystem Status : ok no instance(s) returned referencenames sourceclass : testsystem.ibm.com:5988/root/cimv2:linux_operatingsystem.cscreat ionclassname=linux_computersystem,csname=testsystem.ibm.com,creationclassname= Linux_OperatingSystem,Name= testsystem.ibm.com targetclass : Linux_ComputerSystem test content : role is set to Antecedent Status : ok Number of returned Instances : 1 test content : role is set to Dependent Status : ok no instance(s) returned associatornames sourceclass : testsystem.ibm.com:5988/root/cimv2:linux_operatingsystem.cscreat ionclassname=linux_computersystem,csname=testsystem.ibm.com,creationclassname= Linux_OperatingSystem,Name= testsystem.ibm.com targetclass : Linux_ComputerSystem test content : resultrole is set to Dependent resultclass is set to Linux_ComputerSystem Status : ok Number of returned Instances : 1 test content : resultrole is set to Antecedent resultclass is set to Linux_ComputerSystem Status : ok no instance(s) returned associatornames sourceclass : testsystem.ibm.com:5988/root/cimv2:linux_computersystem.creation ClassName=Linux_ComputerSystem,Name=testsystem.ibm.com targetclass : Linux_OperatingSystem test content : resultclass is set to Linux_OperatingSystem Status : ok Number of returned Instances : 1 21

22 test content : resultclass is set to Linux_ComputerSystem Status : ok no instance(s) returned ****************************************************************************** Linux_RunningOS Number of Tests where Status ok : 16 Number of Tests where Status failed : 0 user time : 0.01 child user time : 0.13 ut : 0.14 system time : 0.02 child system time : 0.08 st : Method Interface An automated test for Method Provider is currently not implemented, but planed. 4.6 Property Interface An automated test for Property Provider is currently not implemented, but planed. 4.7 Indication Interface An automated test for Indication Provider is currently not implemented, but planed. 4.8 Common Interface Tests Check for expected Exception The perl function check_returnedexception can be used for each supported instance and association operation. Intention is to test if a certain exception, like NOT_SUPPORTED is thrown by the provider. If the input file contains the qualifier Expected Exception for a certain operation, the perl function check_returnedexception is called and the returned value is checked for the expected exception. The perl function sends the appropriate request to the CIMOM and validates the returned value to be the expected exception. Test Return Code check if an exception occurred 8 check if an unexpected exception occurred 9 1 Return Code Description failed - <expected exception> expected check behavior of the provider by hand! failed - unexpected exception occurred - <wbemcli output> ok - operation returned with <expected exception> 22

23 5 Consistence Test 5.1 Capabilities The consistence test offers different capabilities for two different levels. It is distinguished between class specific and association specific test cases. On class level the following cases can be tested for consistence : test the number of provider reported instances against the number reported by the system itself o The number of available file system instances is a subset of the entries in the /etc/fstab and /etc/mtab (only supported fs types and without duplicates). test the property values reported by the provider against the values reported by the system itself o The provider reported Name for ComputerSystem is the hostname. The property has to contain the same value, as it is given by the hostname call. test the observance of threshold values for property values o The reported value has to be <, > or = the user defined value test the property values of a certain instance, to be consistent to each other o The processor speed of ID 0 is 930 MHz and of ID MHz. The provider has to report within the instance for ID 0 a CurrentClockSpeed of 930 MHz and nothing else. On association level the following cases can be tested for consistence : test the number of reported target instances against the association definition (system values) o The association RunningOS between ComputerSystem and OperatingSystem is one-to-one. The provider has to report one instance for both directions. test if the association provider supported associators() call reports instance(s), that is / are equivalent to the corresponding instance(s), reported by the getinstance() call against the class provider o The association provider reported a ComputerSystem instance. This instance has to be equal to the ComputerSystem instance reported by the getinstance() call against the class provider of ComputerSystem. 5.2 Input File The input file defines the classes to test. Each class / association, where the consistence test should be performed, has to have its input file in the directory system/<platform>. The name of the file has to be <class name>.system. Otherwise the consistence test is not executed for this class / association. 23

24 5.2.1 Class specific Syntax Header Syntax The key word class is mandatory and defines the name of the class. The qualifier volatile should only be used for classes, which represent volatile data, for example the class CIM_Process. The intention of this qualifier is to find a mechanism how to handle the dynamical nature of some data. It is very likely that each time you call especially the getinstance() operation of a provider for volatile data, the returned answer can vary between ok and NOT_FOUND. To avoid in principle failing the test has to be aware of this difference. ****************************************************************************** class : <class name> [ volatile ] Paragraph Syntax on Class Level Each line defines the name of the class, the compare operation to execute and the number of reported instances. Supported key words for the compare operations are : -eq ok if instance count is equal to the expected number -lt ok if instance count is less than the expected number -gt ok if instance count is greater than the expected number Supported syntax and key words for the number of reported instances are : -cmd <command to execute> command has to return a number <value> The execution of the command ( -cmd ) has to return only one value. A list of values can not be handled! <class name> : (compare operation) (expected number) <class name> : (compare operation) (expected number) Paragraph Syntax on Property Level Each line defines the name of the property, the compare operation to execute and the system value. The values given for this test case are checked at each reported instance, independent of the system object it represents. This is important to know, because checking of instance specific values is not possible with this test scenario. The next chapter describes how to check value consistence within a certain instance. Supported key words for the compare operations are : -eq ok if property value is equal to system value -lt ok if property value is less than system value -gt ok if property value is greater than system value -grep ok if property value contains a certain regular expression -set ok if property value contains a value -empty ok if property value does not contain a value 24

25 Supported syntax and key words for the system values are : -cmd <command to execute> -file <filename>[<line index>] <value> The execution of the command ( -cmd ) has to return only one value. A list of values can not be handled! If the enumeration of the class returns more than one instance, the given system value has to fulfill the compare operation (-eq, -lt ) for each instance! Otherwise the test will fail by default. The tester has to be aware of this behavior when writing the input files for the consistence test. <property name> : (compare operation) (system value) <property name> : (compare operation) (system value) Paragraph Syntax on Instance Level This test case checks the data consistence within a certain instance. It is difficult to realize and needs some special attention. Adding the corresponding paragraph to the input file is only the first of two steps. The following two lines have to be placed in the <class name>.system file. The first line defines the test type Instance Level and a script to execute. The second line describes the order for the mapping between the values in the generated system data file and the CIM properties. The compare operation is always equal. Instance Level : <full qualified script name> Property Order : <unique key> <prop1> <prop2> <propn> The second step is writing a script called <class name>.sh. The script must be located in the system/<platform> directory. The script collects the system values on instance level and generates a file <class name>.instance in the system/<platform> directory. The script has to support the option -rm to delete the generated <class name>.instance file. The content of the generated file has to be organized as following : a paragraph contains the system values of one special instance the order of the values has to follow the property order, defined in the input file of the class delimiter between paragraphs is an empty line Example ***************************************************************************** class : Linux_ComputerSystem Linux_ComputerSystem : -eq 1 CreationClassName : -eq -file ComputerSysten.keys[0] Name : -eq -file ComputerSysten.keys[1] EnabledStatus : -eq 2 Instance Level : Linux_ComputerSystem.pl Property Order : Name PrimaryOwnerName PrimaryOwnerContact 25

26 5.2.2 Association specific Syntax Header Syntax The key word association is mandatory and defines the name of the association. ****************************************************************************** association : <class name> Paragraph Syntax on Reference Level Each line defines the name of the source class, the name of the target class, the compare operation to execute and the number of reported instances. In addition of testing the number of returned instances reported by the association provider via the associators() call, these instances are compared to the instance(s) reported by the corresponding instance provider of the target class. Syntax to define the target class name is : -target <target class name> Supported key words for the compare operations are : -eq ok if instance count is equal to the expected number -lt ok if instance count is less than the expected number -gt ok if instance count is greater than the expected number Supported syntax and key words for the number of reported instances are : -cmd <command to execute> command has to return a number <value> The execution of the command ( -cmd ) has to return only one value. A list of values can not be handled! <source class name> : (target) (compare operation) (expected number) <source class name> : (target) (compare operation) (expected number) Example ***************************************************************************** association : Linux_RunningOS Linux_ComputerSystem : -target Linux_OperatingSystem eq 1 Linux_OperatingSystem : -target Linux_ComputerSystem eq Report File The report file is generated per tested class. The consistence test creates one report file in the directory stat. The name of the file is <class name>.system. 26

27 5.3.1 Class Specific Syntax The syntax of the report files is similar to the syntax of the input files. The report file contains some additional information. Each level has its own chapter. Each chapter header specifies the name of the class, the start date of the test and the tested level. Each report file contains a summary to report the overall statistic of the tests. It contains the number of succeeded and failed tests. ****************************************************************************** class : Linux_ComputerSystem Fri Apr 4 8:43: Class Level Status : ok counted instances 1 equal 1 equal ****************************************************************************** class : Linux_ComputerSystem Fri Apr 4 8:43: Property Level CreationClassName Status : ok property value was : Linux_ComputerSystem Name Status : ok property value was : testsystem.ibm.com EnabledStatus Status : ok property value was : 2 equal equal equal ****************************************************************************** Linux_ComputerSystem Number of Tests where Status ok : 4 Number of Tests where Status failed : Association Specific Syntax The syntax of the report files is similar to the syntax of the input files. The report file contains some additional information. The header of the report file specifies the class name of the association and the start date of the test. Each source to target line of the input file has its own chapter. Each header specifies the source class name and the target class name. Each paragraph contains the full qualified object path of the source instance, the return codes and status descriptions for the test to check the number of returned references and the test to compared the referenced instances with the instances reported by the getinstance() call. The report file ends with a summary to report the overall statistic of the tests. It contains the number of succeeded and failed tests. 27

CIM INSTRUMENTATION FOR LINUX : FUNCTIONAL SPECIFICATION

CIM INSTRUMENTATION FOR LINUX : FUNCTIONAL SPECIFICATION CIM INSTRUMENTATION FOR LINUX : FUNCTIONAL SPECIFICATION PROVIDER SPECIFICATION AND IMPLEMENTATION DETAILS Document Version : 1.0 Date Last Changed : November 18, 2003 Document Owner : Heidi Neumann Department

More information

WBEM Services. Jim Davis Sun Microsystems, Inc. June11, 2002

WBEM Services. Jim Davis Sun Microsystems, Inc. June11, 2002 WBEM Services Jim Davis Sun Microsystems, Inc. June11, 2002 Agenda Objectives Features Basic Architecture CIMOM Architecture & Integration Java WBEM API Developing Clients Developing Providers Get Involved!

More information

November 18-21, 2008, Santa Clara Marriott, Santa Clara, CA Python CIM Providers with PyWBEM

November 18-21, 2008, Santa Clara Marriott, Santa Clara, CA Python CIM Providers with PyWBEM November 18-21, 2008, Santa Clara Marriott, Santa Clara, CA Python CIM Providers with PyWBEM Bart Whiteley Sr. Software Engineer Motivation Design Goals Benefits Architecture Interface Details Demonstration

More information

IBM Spectrum Accelerate Version Application Programming Interface (API) Reference Guide IBM SC

IBM Spectrum Accelerate Version Application Programming Interface (API) Reference Guide IBM SC IBM Spectrum Accelerate Version 11.5.4 Application Programming Interface (API) Reference Guide IBM SC27-8546-02 Note Before using this document and the product it supports, read the information in Notices

More information

Resource Management with CIM for Linux. --- draft ---

Resource Management with CIM for Linux. --- draft --- Resource Management with CIM for Linux --- draft --- Base File System & Volume Process & Service IBM Copyright March 2002 author : Linux Technology Center (LTC) Systems Management Heidi Neumann heidineu@de.ibm.com

More information

The Java TM API for Web Based Enterprise Management JSR-48. Version Final. October 26, 2009

The Java TM API for Web Based Enterprise Management JSR-48. Version Final. October 26, 2009 The Java TM API for Web Based Enterprise Management JSR-48 Version Final October 26, 2009 JSR-48 Copyright 2003-2009 WBEM Solutions, Inc. 1 of 45 Abstract Web Based Enterprise Management (WBEM) is a set

More information

Integrated Enterprise Management Using WBEM/SNMP Gateway

Integrated Enterprise Management Using WBEM/SNMP Gateway Integrated Enterprise Management Using WBEM/SNMP Gateway So-Jung Lee*, Hong-Taek Ju** and James W. Hong* *Dept. of Computer Science and Engineering, POSTECH, Korea ** Dept. of Computer Engineering, Keimyung

More information

Assignment 3, Due October 4

Assignment 3, Due October 4 Assignment 3, Due October 4 1 Summary This assignment gives you practice with writing shell scripts. Shell scripting is also known as bash programming. Your shell is bash, and when you write a shell script

More information

IBM XIV Storage System Version Application Programming Interface (API) Reference Guide IBM GC

IBM XIV Storage System Version Application Programming Interface (API) Reference Guide IBM GC IBM XIV Storage System Version 11.6.2 Application Programming Interface (API) Reference Guide IBM GC27-3916-09 Note Before using this document and the product it supports, read the information in Notices

More information

HP OpenVMS Guest VM Provider

HP OpenVMS Guest VM Provider HP OpenVMS Guest VM Provider Provider overview Description The HP OpenVMS Guest VM Provider is a Web-Based Enterprise Management (WBEM) instance provider. It provides information about a HPVM Guest on

More information

Application Programming Interface Reference

Application Programming Interface Reference IBM XIV Storage System Version 11.0 Application Programming Interface Reference GC27-3916-00 Note Before using this information and the product it supports, read the information in Notices on page 51.

More information

sfcb Small Footprint Cim Broker Introduction

sfcb Small Footprint Cim Broker Introduction sfcb Small Footprint Cim Broker Introduction Adrian Schuur schuur@de.ibm.com May 2005 LTC Systems Management 2 Contents Simple questions: Why? What? How? A Picture and Terminology used Detailed description

More information

Credential Management Profile

Credential Management Profile 1 2 3 4 Document Number: DSP1082 Date: 2011-09-16 Version: 1.0.0 5 6 7 8 Document Type: Specification Document Status: DMTF Standard Document Language: en-us 9 DSP1082 10 11 Copyright notice Copyright

More information

WBEM Web-based Enterprise Management

WBEM Web-based Enterprise Management 1 WBEM Web-based Enterprise Management What is WBEM (revision) 2 CIM provides a data modelling process and language (Managed Object Format). Includes standard models (schemata) for systems, applications,

More information

VERSION 2.0. VMware CIM SDK. Programming Guide

VERSION 2.0. VMware CIM SDK. Programming Guide VERSION 2.0 VMware CIM SDK Programming Guide VMware, Inc. 3145 Porter Drive Palo Alto, CA 94304 www.vmware.com Please note that you will always find the most up-to-date technical documentation on our Web

More information

Pegasus An Open-Source CIMOM Implementation

Pegasus An Open-Source CIMOM Implementation Pegasus An Open-Source CIMOM Implementation Karl Schopmeyer Chair, Open Group Enterprise Management Forum A presentation for the DMTF 2002 DevCon Tuesday 11 June 4:30 5:30 pm Agenda Overview -What (and

More information

Shell Programming. Introduction to Linux. Peter Ruprecht Research CU Boulder

Shell Programming. Introduction to Linux. Peter Ruprecht  Research CU Boulder Introduction to Linux Shell Programming Peter Ruprecht peter.ruprecht@colorado.edu www.rc.colorado.edu Downloadable Materials Slides and examples available at https://github.com/researchcomputing/ Final_Tutorials/

More information

sottotitolo A.A. 2016/17 Federico Reghenzani, Alessandro Barenghi

sottotitolo A.A. 2016/17 Federico Reghenzani, Alessandro Barenghi Titolo presentazione Piattaforme Software per la Rete sottotitolo BASH Scripting Milano, XX mese 20XX A.A. 2016/17, Alessandro Barenghi Outline 1) Introduction to BASH 2) Helper commands 3) Control Flow

More information

HP-VMS LAN Provider CIM Provider for Ethernet LAN interfaces.

HP-VMS LAN Provider CIM Provider for Ethernet LAN interfaces. HP-VMS LAN Provider CIM Provider for Ethernet LAN interfaces. provider overview description The HP-VMS LAN Provider is a CIM Provider for Ethernet-based LAN interfaces. The Provider provides information

More information

Computer System Chassis Instance Provider

Computer System Chassis Instance Provider Provider provider overview description The Provider is a Web-Based Enterprise Management (WBEM) instance provider that retrieves the HP base server physical asset information of the system. The Provider

More information

KVM Forum 2007 Tucson, Arizona

KVM Forum 2007 Tucson, Arizona Standard-based Systems Management Solution for KVM KVM Forum 2007 Tucson, Arizona Heidi Eckhart heidieck@linux.vnet.ibm.com Open Hypervisor Team IBM Linux Technology Center August 30 th 2007 Linux is a

More information

Announcements. Lab Friday, 1-2:30 and 3-4:30 in Boot your laptop and start Forte, if you brought your laptop

Announcements. Lab Friday, 1-2:30 and 3-4:30 in Boot your laptop and start Forte, if you brought your laptop Announcements Lab Friday, 1-2:30 and 3-4:30 in 26-152 Boot your laptop and start Forte, if you brought your laptop Create an empty file called Lecture4 and create an empty main() method in a class: 1.00

More information

Chapter 9: Dealing with Errors

Chapter 9: Dealing with Errors Chapter 9: Dealing with Errors What we will learn: How to identify errors Categorising different types of error How to fix different errors Example of errors What you need to know before: Writing simple

More information

Memory Instance Provider

Memory Instance Provider Memory Instance Provider Provider overview Description Memory Instance Provider provides information about system s physical memory. The Memory Instance Provider is a Web-Based Enterprise Management (WBEM)

More information

Working Draft, Extensions to C++ for Modules

Working Draft, Extensions to C++ for Modules Document Number: Date: 2017-03-19 Revises: N4637 Reply to: Gabriel Dos Reis Microsoft gdr@microsoft.com Working Draft, Extensions to C++ for Modules Note: this is an early draft. It s known to be incomplet

More information

Client Code - the code that uses the classes under discussion. Coupling - code in one module depends on code in another module

Client Code - the code that uses the classes under discussion. Coupling - code in one module depends on code in another module Basic Class Design Goal of OOP: Reduce complexity of software development by keeping details, and especially changes to details, from spreading throughout the entire program. Actually, the same goal as

More information

CSE 374: Programming Concepts and Tools. Eric Mullen Spring 2017 Lecture 4: More Shell Scripts

CSE 374: Programming Concepts and Tools. Eric Mullen Spring 2017 Lecture 4: More Shell Scripts CSE 374: Programming Concepts and Tools Eric Mullen Spring 2017 Lecture 4: More Shell Scripts Homework 1 Already out, due Thursday night at midnight Asks you to run some shell commands Remember to use

More information

CIM Common Information Model

CIM Common Information Model CIM Common Information Model Web-based Enterprise Management Matthias Hölzer-Klüpfel 2004-08-22, akademy, Ludwigsburg Overview What's the problem? Distributed Management Task Force Common

More information

Physical Asset Profile

Physical Asset Profile 1 2 3 4 Document Number: DSP1011 Date: 2008-01-29 Version: 1.0.0 5 Physical Asset Profile 6 7 8 Document Type: Specification Document Status: Final Standard Document Language: E 9 10 11 12 13 14 15 16

More information

Cisco IOS Shell. Finding Feature Information. Prerequisites for Cisco IOS.sh. Last Updated: December 14, 2012

Cisco IOS Shell. Finding Feature Information. Prerequisites for Cisco IOS.sh. Last Updated: December 14, 2012 Cisco IOS Shell Last Updated: December 14, 2012 The Cisco IOS Shell (IOS.sh) feature provides shell scripting capability to the Cisco IOS command-lineinterface (CLI) environment. Cisco IOS.sh enhances

More information

Generic Operations. Document number: DSP0223. Date: Version: Document type: Specification. Document status: DMTF Standard

Generic Operations. Document number: DSP0223. Date: Version: Document type: Specification. Document status: DMTF Standard 1 2 3 4 Document number: Date: 2012-08-30 Version: 1.0.1 5 6 7 8 9 10 11 12 13 14 15 16 Document type: Specification Document status: DMTF Standard Document language: en-us 17 18 19 Copyright notice Copyright

More information

10961B: Automating Administration with Windows PowerShell

10961B: Automating Administration with Windows PowerShell 10961B: Automating Administration with Windows PowerShell Course Overview This course provides students with the knowledge and skills to automate administration with Windows PowerShell, using features

More information

DCLI User's Guide. Modified on 20 SEP 2018 Data Center Command-Line Interface

DCLI User's Guide. Modified on 20 SEP 2018 Data Center Command-Line Interface Modified on 20 SEP 2018 Data Center Command-Line Interface 2.10.0 You can find the most up-to-date technical documentation on the VMware website at: https://docs.vmware.com/ If you have comments about

More information

Shell programming. Introduction to Operating Systems

Shell programming. Introduction to Operating Systems Shell programming Introduction to Operating Systems Environment variables Predened variables $* all parameters $# number of parameters $? result of last command $$ process identier $i parameter number

More information

SSH Service Profile. Document Identifier: DSP1017. Date: Version: Supersedes: Document Class: Normative

SSH Service Profile. Document Identifier: DSP1017. Date: Version: Supersedes: Document Class: Normative 1 2 3 4 Document Identifier: Date: 2019-03-15 Version: 1.0.1 5 6 7 8 9 Supersedes: 1.0.0 Document Class: Normative Document Status: Published Document Language: en_us 10 11 12 13 14 15 16 17 18 19 20 21

More information

IBM i Version 7.2. Security Object signing and signature verification IBM

IBM i Version 7.2. Security Object signing and signature verification IBM IBM i Version 7.2 Security Object signing and signature verification IBM IBM i Version 7.2 Security Object signing and signature verification IBM Note Before using this information and the product it

More information

Assignment 2. Summary. Some Important bash Instructions. CSci132 Practical UNIX and Programming Assignment 2, Fall Prof.

Assignment 2. Summary. Some Important bash Instructions. CSci132 Practical UNIX and Programming Assignment 2, Fall Prof. Assignment 2 Summary The purpose of this assignment is to give you some practice in bash scripting. When you write a bash script, you are really writing a program in the bash programming language. In class

More information

Dynamic Query Documentation

Dynamic Query Documentation Dynamic Query Documentation L-Soft Sweden AB 2007 19 June 2018 Overview LISTSERV version 15.5 can execute on-demand Dynamic Queries against either LDAP or traditional DBMS servers, and use the results

More information

Table of Contents. Eccella 1

Table of Contents. Eccella 1 ECCELLA 22-Apr-14 Table of Contents Introduction... 2 About the tool... 2 Features... 2 Scope... 3 Components... 4 Input... 4 Outputs... 5 Points to Note... 5 Operation... 6 Installation... 6 Update Licensing

More information

IBM Education Assistance for z/os V2R1

IBM Education Assistance for z/os V2R1 IBM Education Assistance for z/os V2R1 Item: CIM Standards Currency Element/Component: CIM Material is current as of June 2013 Agenda Presentation Objectives Overview Usage & Invocation Interactions &

More information

A Module Mapper. 1 Background. Nathan Sidwell. Document Number: p1184r1 Date: SC22/WG21 SG15. /

A Module Mapper. 1 Background. Nathan Sidwell. Document Number: p1184r1 Date: SC22/WG21 SG15. / A Module Mapper Nathan Sidwell Document Number: p1184r1 Date: 2018-11-12 To: SC22/WG21 SG15 Reply to: Nathan Sidwell nathan@acm.org / nathans@fb.com The modules-ts specifies no particular mapping between

More information

Feature List. PB Code Analyzer (PBCA) Copyright Ecocion, Inc.

Feature List. PB Code Analyzer (PBCA) Copyright Ecocion, Inc. Feature List PB Code Analyzer (PBCA) Copyright 1998-2010 Ecocion, Inc. PB CODE ANALYZER OVERVIEW The PB Code Analyzer (PBCA) suite consists of many useful tools integrated together in a simple to use,

More information

Essential Skills for Bioinformatics: Unix/Linux

Essential Skills for Bioinformatics: Unix/Linux Essential Skills for Bioinformatics: Unix/Linux SHELL SCRIPTING Overview Bash, the shell we have used interactively in this course, is a full-fledged scripting language. Unlike Python, Bash is not a general-purpose

More information

CIM Interop Model White Paper CIM V2.7. CIM Interop Model White Paper CIM Version 2.7 Version 0.9 June 19, 2003

CIM Interop Model White Paper CIM V2.7. CIM Interop Model White Paper CIM Version 2.7 Version 0.9 June 19, 2003 CIM Interop Model White Paper CIM Version 2.7 Version 0.9 June 19, 2003 Abstract The DMTF Common Information Model (CIM) is a conceptual information model for describing computing and business entities

More information

MAVEN INTERVIEW QUESTIONS

MAVEN INTERVIEW QUESTIONS MAVEN INTERVIEW QUESTIONS http://www.tutorialspoint.com/maven/maven_interview_questions.htm Copyright tutorialspoint.com Dear readers, these Maven Interview Questions have been designed specially to get

More information

Managing Application Configuration Data with CIM

Managing Application Configuration Data with CIM Managing Application Configuration Data with CIM Viktor Mihajlovski IBM Linux Technology Center, Systems Management Introduction The configuration of software, regardless whether

More information

C++ CIM Client OpenPegasus. Denise Eckstein Hewlett-Packard

C++ CIM Client OpenPegasus. Denise Eckstein Hewlett-Packard C++ OpenPegasus Denise Eckstein Hewlett-Packard Module Content C++ Client Overview Concept Overview Client Example Client API 2 CIM Operations Terminology A CIM Operation describes a management action

More information

How to Improve FMI Compliance

How to Improve FMI Compliance 1 FMI Cross Check: How to Improve FMI Compliance Revisions: 28.07.15 V3.1 with all ticket changes proposed for voting at Steering Committee meeting (AJ) accepted by Steering Committee 28.7.2015 19.06.15

More information

STATS Data Analysis using Python. Lecture 8: Hadoop and the mrjob package Some slides adapted from C. Budak

STATS Data Analysis using Python. Lecture 8: Hadoop and the mrjob package Some slides adapted from C. Budak STATS 700-002 Data Analysis using Python Lecture 8: Hadoop and the mrjob package Some slides adapted from C. Budak Recap Previous lecture: Hadoop/MapReduce framework in general Today s lecture: actually

More information

More Scripting Techniques Scripting Process Example Script

More Scripting Techniques Scripting Process Example Script More Scripting Techniques Scripting Process Example Script 1 arguments to scripts positional parameters input using read exit status test program, also known as [ if statements error messages 2 case statement

More information

MASSACHVSETTS INSTITVTE OF TECHNOLOGY Department of Electrical Engineering and Computer Science. Issued: Wed. 26 April 2017 Due: Wed.

MASSACHVSETTS INSTITVTE OF TECHNOLOGY Department of Electrical Engineering and Computer Science. Issued: Wed. 26 April 2017 Due: Wed. ps.txt Fri Apr 07 14:24:11 2017 1 MASSACHVSETTS INSTITVTE OF TECHNOLOGY Department of Electrical Engineering and Computer Science 6.945 Spring 2017 Problem Set 9 Issued: Wed. 26 April 2017 Due: Wed. 12

More information

EECS2301. Example. Testing 3/22/2017. Linux/Unix Part 3. for SCRIPT in /path/to/scripts/dir/* do if [ -f $SCRIPT -a -x $SCRIPT ] then $SCRIPT fi done

EECS2301. Example. Testing 3/22/2017. Linux/Unix Part 3. for SCRIPT in /path/to/scripts/dir/* do if [ -f $SCRIPT -a -x $SCRIPT ] then $SCRIPT fi done Warning: These notes are not complete, it is a Skelton that will be modified/add-to in the class. If you want to us them for studying, either attend the class or get the completed notes from someone who

More information

Usability Report. Author: Stephen Varnado Version: 1.0 Date: November 24, 2014

Usability Report. Author: Stephen Varnado Version: 1.0 Date: November 24, 2014 Usability Report Author: Stephen Varnado Version: 1.0 Date: November 24, 2014 2 Table of Contents Executive summary... 3 Introduction... 3 Methodology... 3 Usability test results... 4 Effectiveness ratings

More information

Writing Providers for the OpenPegasus CIM Environment

Writing Providers for the OpenPegasus CIM Environment Writing Providers for the OpenPegasus CIM Environment Karl Schopmeyer Tuesday 13:00 17:00 Project Manager, OpenPegasus Project Chair DMTF Application Work Group Version 1.1, 17 June 2003 Agenda What is

More information

Profile Registration. Document Number: DSP1033. Date: Version: Document Type: Specification. Document Status: Final

Profile Registration. Document Number: DSP1033. Date: Version: Document Type: Specification. Document Status: Final 1 2 3 4 Document Number: DSP1033 Date: 2007-07-31 Version: 1.0.0 5 Profile Registration 6 7 8 Document Type: Specification Document Status: Final Document Language: E 9 10 11 Copyright notice Copyright

More information

Working With Forms and Surveys User Guide

Working With Forms and Surveys User Guide Working With Forms and Surveys User Guide Doubleknot, Inc. 20665 Fourth Street, Suite 103 Saratoga, California 95070 Telephone: (408) 971-9120 Email: doubleknot@doubleknot.com FS-UG-1.1 2014 Doubleknot,

More information

Purpose. Target Audience. Prerequisites. What Is An Event Handler? Nagios XI. Introduction to Event Handlers

Purpose. Target Audience. Prerequisites. What Is An Event Handler? Nagios XI. Introduction to Event Handlers Purpose This document describes how to use event handlers in to take predefined actions when the hosts or services you are monitoring change state. Event handlers are used to automate processes taken when

More information

Working Draft, Extensions to C++ for Modules

Working Draft, Extensions to C++ for Modules Document Number: Date: 2017-02-03 Revises: N4610 Reply to: Gabriel Dos Reis Microsoft gdr@microsoft.com Working Draft, Extensions to C++ for Modules Note: this is an early draft. It s known to be incomplet

More information

LCE Splunk Client 4.6 User Manual. Last Revised: March 27, 2018

LCE Splunk Client 4.6 User Manual. Last Revised: March 27, 2018 LCE Splunk Client 4.6 User Manual Last Revised: March 27, 2018 Table of Contents Getting Started with the LCE Splunk Client 3 Standards and Conventions 4 Install, Configure, and Remove 5 Download an LCE

More information

DCLI User's Guide. Data Center Command-Line Interface 2.9.1

DCLI User's Guide. Data Center Command-Line Interface 2.9.1 Data Center Command-Line Interface 2.9.1 You can find the most up-to-date technical documentation on the VMware website at: https://docs.vmware.com/ If you have comments about this documentation, submit

More information

Subcontractors. bc math help for the shell. interactive or programatic can accept its commands from stdin can accept an entire bc program s worth

Subcontractors. bc math help for the shell. interactive or programatic can accept its commands from stdin can accept an entire bc program s worth Subcontractors bc, xargs,, find David 2011-14 bc math help for the shell interactive or programatic can accept its commands from stdin can accept an entire bc program s worth 1 bc math help for shell bc,

More information

Pass-Through Module Profile

Pass-Through Module Profile 1 2 3 4 Document Number: DSP1020 Date: 2009-06-16 Version: 1.0.0 5 6 7 8 9 Document Type: Specification Document Status: DMTF Standard Document Language: E DSP1020 10 11 12 13 14 15 16 17 18 19 20 21 22

More information

Punctual Dicom Workstation

Punctual Dicom Workstation DICOM Conformance Statement Punctual Dicom Workstation Company Name Product Name Product Version 2.0 Document number 2008-1001 Date June 1, 2009 Punctual Software Inc. Punctual Dicom Workstation TABLE

More information

Manual Instrumentation 2 Manual Instrumentation Process Throughout this document we will refer to the code in an unsupported language as the original

Manual Instrumentation 2 Manual Instrumentation Process Throughout this document we will refer to the code in an unsupported language as the original CodeTEST Tools Application Note Manual Instrumentation Manually insert test-point instructions, or tags, in source code to gather real time execution analysis using the Freescale CodeTEST Tools. Purpose

More information

Industrial Data Forwarder for Splunk Kepware, Inc.

Industrial Data Forwarder for Splunk Kepware, Inc. Industrial Data Forwarder for Splunk 2016 Kepware, Inc. Industrial Data Forwarder for Splunk 2 Table of Contents Table of Contents 2 Industrial Data Forwarder for Splunk 3 Overview 3 User Interface 4 Quick

More information

WBEM Infrastructure Introduction

WBEM Infrastructure Introduction WBEM Infrastructure Introduction Tuesday, June 17, 2003 3:15 PM - 4:05 PM Denise Eckstein Hewlett-Packard Page 1 WBEM Overview Web-Based Enterprise Management (WBEM) is a platform and resource independent

More information

redis-lua Documentation

redis-lua Documentation redis-lua Documentation Release 2.0.8 Julien Kauffmann October 12, 2016 Contents 1 Quick start 3 1.1 Step-by-step analysis........................................... 3 2 What s the magic at play here?

More information

Update 9/16/16: Version published to the ServiceNow store now supports Helsinki, Istanbul and Jakarta.

Update 9/16/16: Version published to the ServiceNow store now supports Helsinki, Istanbul and Jakarta. Qualys CMDB Sync App The Qualys CMDB Sync App synchronizes Qualys IT asset discovery and classification with the ServiceNow Configuration Management Database (CMDB) system. The App automatically updates

More information

CS 3114 Data Structures and Algorithms DRAFT Project 2: BST Generic

CS 3114 Data Structures and Algorithms DRAFT Project 2: BST Generic Binary Search Tree This assignment involves implementing a standard binary search tree as a Java generic. The primary purpose of the assignment is to ensure that you have experience with some of the issues

More information

Quick Reference for shmdefine

Quick Reference for shmdefine Quick Reference for shmdefine 0898010-050 June 2008 Copyright 2008 by Concurrent Computer Corporation. All rights reserved. This publication or any part thereof is intended for use with Concurrent products

More information

Case Studies in Access Control

Case Studies in Access Control Joint software development Mail 1 / 38 Situations Roles Permissions Why Enforce Access Controls? Unix Setup Windows ACL Setup Reviewer/Tester Access Medium-Size Group Basic Structure Version Control Systems

More information

INFORMATION TECHNOLOGY COMMITTEE ESCB-PKI PROJECT

INFORMATION TECHNOLOGY COMMITTEE ESCB-PKI PROJECT INFORMATION TECHNOLOGY COMMITTEE ESCB-PKI PROJECT ESCB-PKI REGISTRATION AUTHORITY APPLICATION MOST COMMON ERRORS VERSION 1.2 ECB-PUBLIC 15-November-2012 ESCB-PKI - Common errors v.1.2.docx Page 2 of 20

More information

Bourne Shell Reference

Bourne Shell Reference > Linux Reviews > Beginners: Learn Linux > Bourne Shell Reference Bourne Shell Reference found at Br. David Carlson, O.S.B. pages, cis.stvincent.edu/carlsond/cs330/unix/bshellref - Converted to txt2tags

More information

Learn Windows PowerShell 3 in a Month of Lunches

Learn Windows PowerShell 3 in a Month of Lunches Learn Windows PowerShell 3 in a Month of Lunches Second Edition DON JONES JEFFERY HICKS 11 MANN I NG Shelter Island contents preface xx'ii about this booh author online xx xix about the authors acknowledgments

More information

INTRODUCTION 3 SYSTEM REQUIREMENTS 4 PACKAGE CONTENT 4 CHANGELOG 4 FAST GUIDE 8 PSD2UGUI IN DEPTH 12 PSD LAYERS STRUCTURES 14

INTRODUCTION 3 SYSTEM REQUIREMENTS 4 PACKAGE CONTENT 4 CHANGELOG 4 FAST GUIDE 8 PSD2UGUI IN DEPTH 12 PSD LAYERS STRUCTURES 14 PSD2uGUI USER GUIDE INTRODUCTION 3 SYSTEM REQUIREMENTS 4 PACKAGE CONTENT 4 CHANGELOG 4 FAST GUIDE 8 PSD2UGUI IN DEPTH 12 Commands 12 Variables 13 PSD LAYERS STRUCTURES 14 Toggle Photoshop structure 14

More information

Perceptive Matching Engine

Perceptive Matching Engine Perceptive Matching Engine Advanced Design and Setup Guide Version: 1.0.x Written by: Product Development, R&D Date: January 2018 2018 Hyland Software, Inc. and its affiliates. Table of Contents Overview...

More information

4 CoffeeStrainer Virtues and Limitations

4 CoffeeStrainer Virtues and Limitations In this chapter, we explain CoffeeStrainer s virtues and limitations and the design decisions that led to them. To illustrate the points we want to make, we contrast CoffeeStrainer with a hypothetical,

More information

Bash scripting basics

Bash scripting basics Bash scripting basics prepared by Anatoliy Antonov for ESSReS community September 2012 1 Outline Definitions Foundations Flow control References and exercises 2 Definitions 3 Definitions Script - [small]

More information

Universal Format Plug-in User s Guide. Version 10g Release 3 (10.3)

Universal Format Plug-in User s Guide. Version 10g Release 3 (10.3) Universal Format Plug-in User s Guide Version 10g Release 3 (10.3) UNIVERSAL... 3 TERMINOLOGY... 3 CREATING A UNIVERSAL FORMAT... 5 CREATING A UNIVERSAL FORMAT BASED ON AN EXISTING UNIVERSAL FORMAT...

More information

Automating Administration with Windows PowerShell 2.0

Automating Administration with Windows PowerShell 2.0 Automating Administration with Windows PowerShell 2.0 Course No. 10325 5 Days Instructor-led, Hands-on Introduction This course provides students with the knowledge and skills to utilize Windows PowerShell

More information

DCLI User's Guide. Data Center Command-Line Interface

DCLI User's Guide. Data Center Command-Line Interface Data Center Command-Line Interface 2.10.2 You can find the most up-to-date technical documentation on the VMware website at: https://docs.vmware.com/ If you have comments about this documentation, submit

More information

Integrated Access Control Policy Management Profile

Integrated Access Control Policy Management Profile 1 2 3 4 Document Number: DSP1106 Date: 2011-09-16 Version: 1.0.0 5 6 Integrated Access Control Policy Management Profile 7 8 9 Document Type: Specification Document Status: DMTF Standard Document Language:

More information

SOFA NetBeans Module

SOFA NetBeans Module Charles University, Prague Distributed Systems Research Group SOFA NetBeans Module an introductory guide Revision 1.0 June 2003 Contents 1 Module s Essentials 3 1.1 Introduction........................

More information

Automation of SMI-S managed storage systems with Pywbem

Automation of SMI-S managed storage systems with Pywbem Automation of SMI-S managed storage systems with Pywbem V 0.9-6 Sept 17 V 0.91-11 Sept 17 Karl Schopmeyer k.schopmeyer@swbell.net Inova Development, Inc. 1 What is Pywbem? Python API for communicating

More information

Advanced patching of SUSE Linux Enterprise Server 10 with ZENworks Linux Management 7.2

Advanced patching of SUSE Linux Enterprise Server 10 with ZENworks Linux Management 7.2 SUSE LINUX Enterprise Server 10 www.novell.com Advanced patching of SUSE Linux Enterprise Server 10 with ZENworks Linux Management 7.2 Version 0.1 Disclaimer Novell, Inc. makes no representations or warranties

More information

Siebel Application Deployment Manager Guide. Version 8.0, Rev. A April 2007

Siebel Application Deployment Manager Guide. Version 8.0, Rev. A April 2007 Siebel Application Deployment Manager Guide Version 8.0, Rev. A April 2007 Copyright 2005, 2006, 2007 Oracle. All rights reserved. The Programs (which include both the software and documentation) contain

More information

The current topic: Python. Announcements. Python. Python

The current topic: Python. Announcements. Python. Python The current topic: Python Announcements! Introduction! reasons for studying languages! language classifications! simple syntax specification Object-oriented programming: Python Types and values Syntax

More information

Lecture 5. Essential skills for bioinformatics: Unix/Linux

Lecture 5. Essential skills for bioinformatics: Unix/Linux Lecture 5 Essential skills for bioinformatics: Unix/Linux UNIX DATA TOOLS Text processing with awk We have illustrated two ways awk can come in handy: Filtering data using rules that can combine regular

More information

Quality Assurance Program Addendum for IEC Specific Product Testing

Quality Assurance Program Addendum for IEC Specific Product Testing Quality Assurance Program Addendum for IEC 61850 Specific Product Testing July 15, 2008 Version 1.3 Prepared for the UCA International Users Group - 1-07/15/2008 PREPARED BY: UCA International Users Group

More information

gcc hello.c a.out Hello, world gcc -o hello hello.c hello Hello, world

gcc hello.c a.out Hello, world gcc -o hello hello.c hello Hello, world alun@debian:~$ gcc hello.c alun@debian:~$ a.out Hello, world alun@debian:~$ gcc -o hello hello.c alun@debian:~$ hello Hello, world alun@debian:~$ 1 A Quick guide to C for Networks and Operating Systems

More information

CimConteXtor User Guide

CimConteXtor User Guide CimConteXtor User Guide V3 1/86 CimConteXtor User Guide User Guide V3 CimConteXtor is an Enterprise Architect Add-In. The main purpose of CimConteXtor is to create a UML profile in EA, profile that is

More information

DCLI User's Guide. Data Center Command-Line Interface 2.7.0

DCLI User's Guide. Data Center Command-Line Interface 2.7.0 Data Center Command-Line Interface 2.7.0 You can find the most up-to-date technical documentation on the VMware Web site at: https://docs.vmware.com/ The VMware Web site also provides the latest product

More information

IBM Network Advisor Port Commissioning Quick Start Guide

IBM Network Advisor Port Commissioning Quick Start Guide IBM Storage Networking IBM Network Advisor Port Commissioning Quick Start Guide Supporting IBM Network Advisor version 14.0.2 This product contains software that is licensed under written license agreements.

More information

We d like to hear your suggestions for improving our indexes. Send to

We d like to hear your suggestions for improving our indexes. Send  to Index [ ] (brackets) wildcard, 12 { } (curly braces) in variables, 41 ( ) (parentheses) in variables, 41 += (append) operator, 45 * (asterisk) wildcard, 12 $% automatic variable, 16 $+ automatic variable,

More information

System Error Code 1 Means Incorrect Function.

System Error Code 1 Means Incorrect Function. System Error Code 1 Means Incorrect Function. Try checking Event Viewer & Temp Folders log for the error i.e. Exit Code 1 for your deployment as it seems with #EC: macro to excempt this success return

More information

Removing files and directories, finding files and directories, controlling programs

Removing files and directories, finding files and directories, controlling programs Removing files and directories, finding files and directories, controlling programs Laboratory of Genomics & Bioinformatics in Parasitology Department of Parasitology, ICB, USP Removing files Files can

More information

Improving the Accuracy of Function Points Counts

Improving the Accuracy of Function Points Counts The PROJECT PERFECT White Paper Collection Improving the Accuracy of Function Points Counts Abstract Amit Javadekar The Function Point (FP) Analysis model was invented by Allan Albrecht in 1979 as an alternative

More information

Shells and Shell Programming

Shells and Shell Programming Shells and Shell Programming 1 Shells A shell is a command line interpreter that is the interface between the user and the OS. The shell: analyzes each command determines what actions are to be performed

More information

Project 2: Scheme Interpreter

Project 2: Scheme Interpreter Project 2: Scheme Interpreter CSC 4101, Fall 2017 Due: 12 November 2017 For this project, you will implement a simple Scheme interpreter in C++ or Java. Your interpreter should be able to handle the same

More information

Repstor affinity. Installation and Configuration Guide(Generic)

Repstor affinity. Installation and Configuration Guide(Generic) Repstor affinity Installation and Configuration Guide(Generic) Document Version 3.7 April 2018 Contents 1. INTRODUCTION TO REPSTOR AFFINITY 3 ADVANTAGES OF REPSTOR AFFINITY... 3 2. REPSTOR AFFINITY INSTALLATION

More information