Добавление тестовых случаев в HP-ALM с помощью REST API

Я хочу автоматизировать добавление новых тестовых случаев в HP-ALM с помощью REST API. Я не нашел ничего в документации, чтобы помочь мне достичь этого, и мне было интересно, добился ли кто-нибудь еще успеха в этом.


person redstapler    schedule 30.01.2015    source источник


Ответы (2)


Документация по API, предоставляемая через ALM, очень полезна.

1) аутентифицировать сеанс 2) захватить Cookie 3) создать тест (см. ниже - ИЗ ДОКУМЕНТАЦИИ ALM)

используйте тип объекта, который вы хотите создать, и укажите соответствующие поля.

Пример с XML

POST /qcbin/rest/domains/{domain}/projects/{project}/defects HTTP/1.1
Content-Type: application/xml
Accept: application/xml
Cookie: QCSession=xxx; LWSSO_COOKIE_KEY=xxx

Данные

<Entity Type="defect">
<Fields>
<Field Name="detected-by">
<Value>henry_tilney</Value>
</Field>
<Field Name="creation-time">
<Value>2010-03-02</Value>
</Field>
<Field Name="severity">
<Value>2-Medium</Value>
</Field>
<Field Name="name">
<Value>Returned value not does not match value in database.</Value>
</Field>
</Fields>
</Entity>

Пример с JSON

POST /qcbin/rest/domains/{domain}/projects/{project}/defects HTTP/1.1
Content-Type: application/json
Accept: application/json
Cookie: QCSession=xxx; LWSSO_COOKIE_KEY=xxx

Данные

{"Fields":[{"Name":"detected-by","values":[{"value":"henry_tilney"}]},                {"Name":"creation-time","values":[{"value":"2010-03-02"}]},{"Name":"severity","values":[{"value":"2-Medium"}]},{"Name":"name","values":[{"value":"Returned value not does not match value in database.</ "}]}]}

Пример XML, который я использовал для тестовой сущности

<Entity Type="test">
<Fields>
<Field Name="name">
<Value>MY TEST CASE</Value>
</Field>
<Field Name="description">
<Value>Test created from api</Value>
</Field>
<Field Name="owner">
<Value>roglesby</Value>
</Field>
<Field Name = "subtype-id">
<Value>VAPI-XP-TEST</Value>
</Field>
<Field Name = "parent-id">
<Value>6209</Value>
</Field>     
</Fields>
</Entity>
person Roglesby    schedule 12.05.2015

Я создал небольшой модуль для отправки запросов REST в HP ALM с помощью python. Например, я использую следующую команду:

myCreate = self.nSession.post(entUrl, headers=self.header, data=xml_data)

После того, как правильный сеанс установлен, я использую простое действие POST. Значение в скобках соответственно:

entUrl = '{0}/rest/domains/{1}/projects/{2}'.format(self.server, self.domain, self.project) + вы должны добавить объект, который хотите создать --> тесты например.

{server}/qcbin/rest/domains/{domain}/projects/{project}/tests

headers — это словарь, содержащий все заголовки, необходимые для поддержания соединения открытым.

данные содержат формат файла xml или JSON со всей информацией для создания теста (например)

Надеюсь, это поможет другим пользователям (поскольку вопрос довольно старый). Хорошего дня.

person Marco smdm    schedule 10.01.2017