Examples
IBM.com Jazz.net Documentation RPE Forum developerWorks Getting Started

Contents

  1. Structure
    1. Introdution, variables and starting
    2. Creating a RQM Test Plan template
  2. Formatting
    1. Formatting Basics
    2. Master Page
  3. Query
    1. Query Basics

Introduction, variables and starting

Goal: A very basic sample to get RPE to know.

TIP! I've always a notepad file with the snippets of URLs open! Easy for copy/paste.

Template creation

  1. Start new template
  2. Drag Container on document
  3. Menu Data > New Variable External
    • clmProject
      The project name to access e.q. JKE Banking (Quality Management)
    • host
      The hostname e.q. clm.jkebanking.net
    • port
      The port number e.q. 9443

    Because these variables are external you can set them in the specification. You can set in this way the user name but not the password. So this is to be defined on the Test Plan Feed. That's the reason why userid/password variables are defined in several templates. They are not used.

  4. Drag a Paragraph into the container
  5. Drag 3x Text into the Paragraph
  6. Double click on first Text
  7. Select Data Expession Tab
  8. Expand the Variables tab, select host.
  9. Repeat to set port on second text
  10. Repeat to set clmProject on last text
  11. Select Generate Document
  12. Select Next
  13. Select clmProject and key in your clmProject
  14. Select host and key in your host
  15. For port the default will do.

RPE Launcher

You set the defined variables in the RPE Launcher.

Warning! This setup of the RPE Launcher is standard for every Sample.
  1. Select the RPE Launcher tab
  2. Select Target: PDF
  3. Select Path
  4. Select -button
  5. Key in sample1.pdf
  6. Select open
  7. Key in clmProject for example JKE Banking (Quality Management)
  8. Key in host for example business.vanlint5.nl
  9. Optionally key in port for example 443
    There are defaults defined, so by having an empty field the value get the default assigned.
Tip! Validate your design often by re-running.
Output examplesample1.pdf
sample1.htm
Template Sourcesample1.dta

RQM Example

The following steps shows how you can create a template listing information from a Test Plan, Test Cases and Test Results.

List Test Plans

Goal: List the test plans.

There are several ways to accomplish this. This is just one option. I wanted to have a 'template' which had the 'variables' defined in the specification.

We enhance the sample1.dta, use a save as sample2.dta.

  1. Create internal variable singleProjectFeedURL (no default)
  2. Drag new container
  3. Select the new container
  4. Select next to Assignment
  5. Select Add (later on Edit to change)
  6. Select singleProjectFeedURL

    Figure: Assembling the singelProjectFeedURL

    The code:

    java.lang.System.out.println( ">>>> host: " + host);
    java.lang.System.out.println( ">>>> clmProject: " + clmProject);
    var tempURL="https://"+host+":"+port+"/qm/service/com.ibm.rqm.integration.service.IIntegrationService/resources/"+clmProject+"/"
    java.lang.System.out.println( ">>>> singleProjectFeedURL set to:");
    java.lang.System.out.println( ">>>> " + tempURL);
    tempURL
    

    Make sure you select the used variables in the left pane.

  7. Add other container > paragraph > text to display the variable singleProjectFeedURL

Create a Data Source Schema for the "Test Plan Feed".

  1. Contextual menu on the Data Source Schema > Insert > Data Source Schema
  2. Select Next in the Wizzard
  3. Schema Type: Rest
  4. Schema File:
    https://business.vanlint5.nl:9443/qm/service/com.ibm.rqm.integration.service.IIntegrationService/schema/feed.xsd
    
  5. Datasource ID: Test Plan Feed
  6. Enter valid userid/password (just to get the schema once, not the data)
  7. Authorization: Auto
  8. Select Finish
  9. Drag a Data Source Configuration after the paragraph printing the variable singleProjectURL.
  10. Drop the just created "Test Plan Feed" (from the Outline view) on the redish Data Source Configuration
  11. Select the Data Source Configuration
  12. Select the Properties Tab
  13. Select Dynamic Configuration
  14. Select the -icon of the URI
  15. Select the Script Expression tab
  16. keyin:
    singleProjectFeedURL+"testplan?abbreviate=false"
    
  17. Expand the Variables tree and select singleProjectFeedURL
  18. Add container following the Data Source Configuration
  19. Drag from the Data Source Schema (left) feed/entry to the container
  20. Add a subcontainer
  21. Drag feed/entry/title
  22. Add a paragraph to the subcontainer
  23. Drag /feed/entry/title/_value

Generate the document...

  1. Select the RPE Launcher tab
  2. Select the Data Source: Test Plan Feed
  3. Enter valid username
  4. Enter valid password
Savings! The userid, used by RPE, logging in into CLM needs no license only authorization to read! A contributor role will do!

In the specification you define the variables:

All other stuff is done within the template (e.g. feed-defintion).

More fields ....

  1. Add a paragraph after the paragrah showing feed/entry/title/_value
  2. Fill it with two Text fields.
  3. Change first Text field to "Owner:<space>"
  4. Drag the /feed/entry/content/testplan/owner to the Text field (above the <text>)
  5. Drag the /feed/entry/content/testplan/owner/_value to the <text>

See RPE Launcher to generate the document.

Source file: sample2.dta

Adding the Test Cases

Goal: Now we add the test cases of each test plan.

  1. Add a new Data Source Schema for Test Plan Feed (in the Outline). Use same schema definition:
    https://business.vanlint5.nl:9443/qm/service/com.ibm.rqm.integration.service.IIntegrationService/schema/feed.xsd
    
  2. Add a Container with the name Process Test Cases
  3. Add a Data Source Configuration
  4. Draf: Drag the Test Case Feed Schema from the Outline panel to the Data Source
  5. Select the Data Source Configuration
  6. Select the Properties
  7. Select the Advance
  8. Expand the Formatting > Data
  9. For the inherited data configuration key in Test Plan Feed
    Now it will use the userid/password defined in the Test Plan Feed specification.
  10. Expand the Formatting > Dynamic Configuration
  11. Select the URI
  12. Select the -icon of the URI
  13. Select the Script Expression tab
  14. keyin:
    var testPlanID = decodeURI(testPlanURL);
    var testCaseFeedURL = singleProjectFeedURL + "/testcase?fields=feed/entry/content/testcase[testplan/@href=\""+testPlanID +"\"]/*";
    java.lang.System.out.println( ">>>> " + testCaseFeedURL);
    testCaseFeedURL;
    

    Make sure you select the used variables in the left pane.

  15. Add a Container
  16. From the Test Case Feed (Data Source Schema's panel) drag the feed/entry/content/testcase to the container
  17. Add a Container with a Paragraph and a nested Text
  18. Drag the feed/entry/content/testcase/title to the Text field

See RPE Launcher to generate the document.

Source file: sample3.dta

Adding Last Run Results

Now we have the Test Plan ID and the Test Case ID. With those two we are able to query for the attached work items (TCERs) using the query above. In short hand:

singleProjectFeedURL+"/executionworkitem?fields=feed/entry/content/executionworkitem/(*|testplan[@href='"+testPlanURL+"']|testcase[@href='"+testCaseURL+"'])"

Container "Get TCER Info" we put various attributes of the TCER in RPE variables.

Container "Get TC Info" we put various attributes of the Test Case in RPE variables. Make note that this is just 1 result and not a feed (we need the qm.xsd for the TC Details definition)

Container "Get Last Result" we grab the current result of the TCER.

That result has a currentResult pointing to the last run with the Pass/Fail verdict. The URL we need to re-user to get the Execution Result.

Figure: Get information to print out table

Source file: sample4.dta

Formatting Basics

An example sharing a formatted result and sharing various tips.

Input / Source files:

Output:

I try to share the results of all formats of the same run, this way you can compare behavior. For example the style-sheets (css, dot) are different. For HTML the Master Page is not taken into account.

See RPE Launcher to generate the document.

Source file: sample-f1.dta

Master Page

This example has the Master Page (which is not used in HTML).

Some javascript code to format date and time.

var months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
var today = new Date()
var year = 1900+today.getYear();
var month = today.getMonth();
var month = months[today.getMonth()];
var day = today.getDate();
var hr = today.getHours();
var min = today.getMinutes();
if (min < 10) {
    min = "0" + min;
}
year+"-"+month+"-"+day+" "+hr+":"+min

See RPE Launcher to generate the document.

Source file: sample-f2.dta

All RPE pages are visible herecan extract data from various sources.

Cell formatting (like background color) to a row does not work.

Note! At this moment in time I'm not concered about the formatting. It's the data I want to access.

For formatting check RPE Samples.

RQM Requirements

Get string part of summary which contains the initial requirement description. This is stored in RQM and not updated when the requirement is changed in RM. So preferred is to follow the link and get the RM information. The format is something like " 123: This is the requirement" (format changed in 405 created requirements).

summary.substring(summary.indexOf(":")+1).replace(/^\s+|\s+$/g, "")

To get the id at the beginning of the summary, the URL is stored in the href.

summary.substring(0,summary.indexOf(":")).replace(/^\s+|\s+$/g, "")

See RPE Launcher to generate the document.

Source file: sample5.dta
Source file: sample5.pdf

Large example:
RQM-RRDG-TP.dta
RQM-RRDG-TP_5.pdf Running RQM404 (just released). I configured 2 projects, one JKE and one newly. The difference is when you ask for the related requirements of a test case using a feed (grabbing the summary field). When I create associated requirements NEWly you get on the summary something like "136: The application should start" When you generate on the imported JKE requirements you get the summary like "The application should start" Take also other fields into account. Several are empty. If needed I can share a RPE template which shows all this.


The following text is included only as reference. Have to validate it.

Old example: Get TP and TC information

The following shows a small example to get TP information:

Template


  1. Get Test Plan Collection create a Data Source Schema definition "Test Plan Collection" based on:
    https://business.vanlint5.nl:9443/qm/service/com.ibm.rqm.integration.service.IIntegrationService/schema/feed.xsd
    
  2. Place the /feed/entry on the container.
  3. Create an other Data Source Schema definition "Test Plan Details" based on:
    https://business.vanlint5.nl:9443/qm/service/com.ibm.rqm.integration.service.IIntegrationService/schema/qm.xsd
    
  4. Add Data Source Configuration to the container.
  5. Drag the just created Test Plan Details on the DSG.
  6. Formatting > Data > Inherited data configuration to Test Plan Collection
  7. Formatting > Dynamic Configuration > URI to feed/entry/id
  8. Add a Container after the DSG
  9. Drop from the Test Plan Details schema (left) the "testplan" on it.
  10. Now you've got many Test Plan fields available.

  11. The container has the testplan/testcase context
  12. Create an other Data Source Schema definition "Test Case Details" based on:
    https://business.vanlint5.nl:9443/qm/service/com.ibm.rqm.integration.service.IIntegrationService/schema/qm.xsd
    
  13. Add Data Source Configuration to the container.
  14. Drag the just created "Test Case Details" on the DSG.
  15. Formatting > Data > Inherited data configuration to Test Plan Collection
  16. Formatting > Dynamic Configuration > URI to testplan/testcase/href
  17. Add a Container after the DSG
  18. Drop from the Test Case Details schema (left) the "testcase" on it.
    Now you've got many Test Case fields available.

Specification

The Test Plan Collection defintion needs

  1. Uri
    https://business.vanlint5.nl:9443/qm/service/com.ibm.rqm.integration.service.IIntegrationService/resources/<project>/testplan
    
  2. Key in User name
    This user must have read authorization to the artifacts.
  3. Key in Password
  4. For Authentication select in Auto (had success with empty, Auto and OAuth)

The other DSG are all looking at this definition. Similar question is also posted on the RPE Forum

Where <project> is something like JKE+Testing+%28Quality+Management%29, so including the '(Quality Management)' and the spaces replaced by + (URLencoded). /resources/PMD_001+%28Quality+Management%29/testplan?abbreviate=false must have abbreviate=false!

All RPE pages are visible herecan extract data from various sources.

Query

Some RAW query examples, from my snippet file, some to be enhanced.

https://business.vanlint5.nl:9443/qm/service/com.ibm.rqm.integration.service.IIntegrationService/resources/My+Reporting+%28Quality+Management%29/testplan/urn:com.ibm.rqm:testplan:6?calmlinks=true
https://business.vanlint5.nl:9443/qm/oslc_qm/contexts/_ZJ9pcRklEeOfPN1jCvntow/resources/com.ibm.rqm.planning.VersionedTestPlan/urn:com.ibm.rqm:testplan:6
https://business.vanlint5.nl:9443/qm/service/com.ibm.rqm.integration.service.IIntegrationService/resources/My+Reporting+%28Quality+Management%29/executionworkitem/urn:com.ibm.rqm:executionworkitem:56
https://business.vanlint5.nl:9443/qm/service/com.ibm.rqm.integration.service.IIntegrationService/resources/My+Reporting+%28Quality+Management%29/executionresult/urn:com.ibm.rqm:executionresult:56
https://business.vanlint5.nl:9443/ccm/rpt/repository/workitem?fields=workitem/workItem[id=97]/*
https://business.vanlint5.nl:9443/ccm/rpt/repository/workitem?fields=workitem/workItem[id=97]/(id|summary|auditableLinks/*)