Я пытаюсь загрузить тестовые примеры в CA Rally с использованием Pyral библиотеки Python, тестовые примеры успешно загружены, но не удается установить владельца для тестового примера - PullRequest
0 голосов
/ 14 июня 2019

Я пытаюсь загрузить тестовые примеры в CA Rally с использованием Pyral библиотеки Python, тестовые примеры успешно загружены, но не удается установить владельца для тестового примера

import sys
from pyral import Rally, rallyWorkset

options = [arg for arg in sys.argv[1:] if arg.startswith('--')]
args = [arg for arg in sys.argv[1:] if arg not in options]

server, user, password, apikey, workspace, project = 
rallyWorkset(options)


rally = Rally(server='rally1.rallydev.com', 
      apikey="************************",
      workspace='***', project='*****',
      server_ping=False)
response = rally.get('UserStory', fetch = True, projectScopeDown=True, 
query = 'FormattedID = *****', instance=True)
target_project = rally.getProject()
testcase_fields = {
 "Project"     : target_project.ref,
 "WorkProduct" : response.ref,
 "Name"        : "Fifth Test Case",
 "Owner"       : "myDisplayName" or "myUserName",(Nothing Works)
 "Description" : "This is a python integration test",
 "Method"      : "Manual",
 "Type"        : "Acceptance",
 "Pre Conditions"  : "This is Pre-Condition",
 "Validation Input"  : "This is validation input",
 "Validation Expected Result"  : "This is validation expected result",
 "Post Conditions"  : "This is post condition"
}
testcase = rally.put('TestCase', testcase_fields)
print(testcase.details())

Ошибка при использовании поля владельца:

File "<ipython-input-57-c146d75c3723>", line 51, in <module>
    testcase = rally.put('TestCase', testcase_fields)

File "C:\Users\achaube2\AppData\Local\Continuum\anaconda3\lib\site-packages\pyral\restapi.py", line 1024, in put
    raise RallyRESTAPIError(problem)

RallyRESTAPIError: 422 Cannot parse object reference from "myDisplayName"

Test Case is uploaded successfully if i remove the Owner Filed in above code

Ответы [ 3 ]

0 голосов
/ 19 июня 2019

Правильно.

Поле «Владелец» является ссылкой на объект «Пользователь».Вам нужно будет установить поле Owner со ссылкой на ObjectID владельца пользовательского объекта.

0 голосов
/ 20 июня 2019

Сначала вам нужно получить объект пользователя, например:

user_req = rally.getUserInfo(username="name@domain.com")
user = user_req[0]

Затем вы можете использовать его для ссылок в TestCase, например:

"Owner"       : user.ref
0 голосов
/ 15 июня 2019

Я думаю, что 'user' show будет ссылкой на user-object.

...