I recently started playing with Rally python REST API I tried to create Test Cases, But the problem I have is, I am not sure how to Add steps and add content to those steps is there a JSON format for that?
Please help me on this
I recently started playing with Rally python REST API I tried to create Test Cases, But the problem I have is, I am not sure how to Add steps and add content to those steps is there a JSON format for that?
Please help me on this
Following is a brief example of how to do this:
#!/usr/bin/env python
#################################################################################################
#
# createtestcasewithsteps.py -- Create a TestCase, add Test Steps
#
USAGE = """
Usage: createtestcasewithsteps.py
"""
#################################################################################################
import sys, os
from pyral import Rally, rallySettings
my_server = "rally1.rallydev.com"
my_user = "user@company.com"
my_password = "password"
my_workspace = "My Workspace"
my_project = "My Project"
rally = Rally(my_server, my_user, my_password, workspace=my_workspace, project=my_project)
rally.enableLogging('createtestcasewithsteps.log')
# For a TestCase: Name, Method, Type are required;
# Workspace cannot be specified in the JSON, it defaults to
# the logged in account's Workspace setting
# The TestCase can optionally be associated to a WorkProduct
# Project and WorkProduct must be object refs to relevant Rally Entity instances.
# In this example the WorkProduct is a Defect.
target_project = rally.getProject()
target_defect_id = "DE4"
target_defect = rally.get('Defect', query='FormattedID = %s' % target_defect_id, instance=True)
testcase_fields = {
"Project" : target_project.ref,
"WorkProduct" : target_defect.ref,
"Name" : "Data Import Automated Test 01",
"Method" : "Automated",
"Type" : "Regression"
}
print "Creating Test Case ..."
testcase = rally.put('TestCase', testcase_fields)
print "Created TestCase: %s OID: %s" % (testcase.FormattedID, testcase.oid)
# Add Test Case Steps
#
for i in range(3):
input="Step Input for Step: "+str(i)
expected_result="Expected Result for Step: "+str(i)
testcasestep_fields = {
"TestCase" : testcase.ref,
"StepIndex" : i,
"Input" : input,
"ExpectedResult" : expected_result
}
testcasestep = rally.put('TestCaseStep', testcasestep_fields)
print "===> Created TestCaseStep: %s OID: %s" % (testcasestep.StepIndex, testcasestep.oid)