Программные интерфейсы (API)

TestService API

Используйте данный веб-сервис для создания тестовой документации, запуска тестов и отметки результатов выполнения тестов. Использование сервиса доступно после авторизации. Все методы сервиса в качестве первого параметра принимают ключ, полученный после авторизации.

 

Протокол: SOAP, WebService

Ссылка: http://<host>/api/testservice

WSDL описание (document/literal): http://<host>/api/testservice?wsdl

WSDL описание (rpc/encoded): http://<host>/api/testservice?wsdl&style=rpc&use=encoded

 

Методы

НазваниеВозвращаемое значениеНазначение

Create (string token.Key, TestScenario object)

TestScenario

Создание нового раздела тестовой документации, привязанного к корневому узлу тестовой документации. Атрибуты нового раздела передаются в параметре object. Возвращает объект, описывающий созданный тестовый раздел.

Find (string token.Key, TestScenario object)

TestScenario

Загрузка атрибутов раздела тестовой документации по заданным параметрам, определенным в object. Если задать значение object.Id, то метод выполнит поиск по идентификатору тестового раздела. Если указать значение атрибута object.Caption, то - найдет раздел по его названию. Возвращает объект, описывающий искомый тестовый раздел.

Append (string token.Key, TestScenario parent, TestScenario object)

TestScenario

Создает новый подраздел тестовой документации в существующем разделе, идентифицируемом параметром parent. Возвращает объект, описывающий созданный тестовый подраздел.

Run (string token.Key, TestScenario object, string version, Environment environment)

TestExecution

Запускает на тестирование переданный в качестве параметра object тестовый раздел документации. Если у переданного тестового раздела есть дочерние разделы, то в тест будет включать в себя все дочерние разделы. При создании теста можно указать версию тестируемого приложения, а также окружение, на котором осуществляется тестирование. Окружение идентифицируется атрибутов environment.Caption. Необходимо заранее настроить справочник окружений в проекте. Метод возвращает объект, описывающий тест.

ReportResult (string token.Key, TestExecution execution, TestScenario object, TestExecutionResult result)

Отметка о результате тестирования тестового раздела (object) в составе теста (execution). Результат выполнения идентифицируется атрибутом result.ReferenceName.

ReportIssue (string token.Key, TestExecution execution, TestScenario object, Request request)

Request

Регистрация в проекте ошибки, полученной в результате тестирования раздела (object) в составе теста (execution). Параметры ошибки, например, название, содержание и т.п. задается в атрибутах объекта request. В результате выполнения метода возвращается объект Request, описывающий созданное пожелание.

ReportFile (string token.Key, TestExecution execution, TestScenario object, Attachment file)

Загрузка в проект файла, связанного с результатами тестирования раздела (object) в составе теста (execution). Вы можете загрузить связанный с результатом снимок экрана, дамп или лог-файл.

GetResult (string token.Key, TestExecution execution)

TestExecutionResult

Возвращает текущий результат выполнения теста в виде объекта TestExecutionResult.

 

Классы

НазваниеАтрибутНазначение

TestScenario

Id

Идентификатор объекта

Caption

Название тестового раздела

Content

Содержание тестового раздела

ParentPage

Идентификатор родительского тестового раздела

Environment

Id

Идентификатор объекта

Caption

Название окружения, уникальное значение, используемое для идентификации окружения

TestExecutionResult

Id

Идентификатор объекта

Caption

Отображаемое название результата

ReferenceName

Кодовое название результата, уникальное значение, используемое для идентификации типа результата

Request

Id

Идентификатор объекта

Caption

Название пожелания/ошибки

Description

Описание пожелания/ошибки

Attachment

Id

Идентификатор объекта

FilePath

Название файла, которое будет отображаться в проекте

FileExt

MIME-тип файла

File

Текстовое поле типа base64binary, содержащее тело файла в кодировке base64

 

Примеры (C#)
 // авторизуемся в проекте
 security.SecurityService api = new security.SecurityService() { 
      Url = 'http://<host>/api/securityservice'
 };
 
 security.Token _token = api.login("guest", "guest", "development");
 
 // создаем тестовый раздел документации
 testing.TestService _api = new testing.TestService() { 
      Url = 'http://<host>/api/testservice'
 };
 
 testing.testscenario root = new testing.testscenario { Caption = "Название 1"};
 root = _api.Create(_token.Key, root);
 
 // добавляем дочерний раздел
 testing.testscenario child = new testing.testscenario { Caption = "Название 2", Content = "Содержание 2" };
 child = _api.Append(_token.Key, root, child);
 
 // запускаем тест на выполнение
 testing.testexecution execution =
      _api.Run(_token.Key, root, "1.1", new testing.environment { Caption = "Windows XP" } );
 
 // устанавливаем результат тестирования по дочернему разделу
 _api.ReportResult(_token.Key, execution, child,
      new testing.testexecutionresult { ReferenceName = "failed" });
 
 // регистрируем ошибку
 testing.request bug = new testing.request { Caption = "Ошибка в тесте 2" };
 bug = _api.ReportIssue(_token.Key, execution, child, bug);
 
 // загружаем файл, например, дамп
 string fileName = Environment.GetEnvironmentVariable("windir") + "\\notepad.exe";
 FileStream fs = File.Open(fileName, FileMode.Open, FileAccess.Read);
 
 byte[] fileBytes = new byte[fs.Length];
 fs.Read(fileBytes, 0, (int)fs.Length);
 fs.Close();
 
 testing.attachment file = testing.attachment
 {
     FilePath = "notepad.exe",
     FileExt = (new FileInfo(fileName)).Extension,
     File = fileBytes
 };
 
 _api.ReportFile(_token.Key, execution, child, file);

Далее:

SupportService API

DataService API

Пример использования SOAP API на C#

Пример использования SOAP API на PHP