При импорте результатов теста создается дубликат теста - PullRequest
0 голосов
/ 05 мая 2020

Вот что мы делаем:

  1. Создайте новый тест через REST API с типом теста как Automated [Generic] и убедитесь, что поле определения теста заполнено по мере необходимости. (путь к классам + '.' + имя класса). Предположим, что тестовый ключ для этого теста - MYPROJ-999.

  2. Мы запускаем автоматический тест и генерируем отчет Junit xml. xml для того же теста, который был создан в # 1.

  3. Мы публикуем результат с помощью REST API.

curl -H "Content-Type: multipart / form-data" -u пользователь: pwd -F "file=@report.xml" https://jira.my.com/rest/raven/1.0/import/execution/junit?projectKey=MYPROJ

Ожидаемый результат:

Результат для MYPROJ-999 должен быть обновлен с помощью PASS / FAILED, и должна быть создана новая проблема выполнения теста. Создавать новый тест не следует.

Фактический результат:

API создает новый тест вместо обновления существующего теста MYPROJ-99.

Интересное наблюдение: если мы создадим тест с использованием Jira UI вместо REST API, он будет работать нормально. Не создается повторяющихся тестов.

Насколько мы можем судить, тест, созданный с помощью пользовательского интерфейса, и тест, созданный с помощью REST API, выглядят совершенно одинаково. Итак, мы не можем понять, почему тест, созданный через API, ведет себя иначе.

Ответы [ 2 ]

0 голосов
/ 31 июля 2020

пробел в начале поля Generi c Definition, в котором содержится этот уникальный идентификатор, не является нормальным. Пожалуйста, сообщите об этом как об ошибке :)

0 голосов
/ 06 мая 2020

После долгой отладки я нашел причину root, и она настолько тривиальна, но вызывает большую проблему. Не уверен, что это ошибка ??

В любом случае, вот в чем дело.

Когда мы создаем тест типа Automated [Generic] с использованием пользовательского интерфейса приложения Jira или тест создается с помощью API результатов импорта, поле определения теста содержит значение classpath + '.' + Classname value, но с пробел в начале текста.

Но когда я создавал тест через конечную точку create issue api и заполнял поле определения, я не давал пробел в начале пути к классам + '.' + имя класса значение, потому что я даже не знал, что Jira / Xray добавляет пробел в начало.

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

...