Получение информации о тесте Jenkins: методы и примеры кода

Чтобы получить список тестов в Jenkins, вы можете использовать Jenkins REST API или Jenkins CLI. Вот несколько способов получения тестовой информации с использованием этих подходов:

Метод 1. Использование API-интерфейса Jenkins REST
Вы можете использовать API-интерфейс Jenkins REST для получения информации о заданиях и результатах тестов. Чтобы получить информацию о тестировании, вы можете использовать следующую конечную точку API:

Конечная точка: http://<jenkins_url>/job/<job_name>/api/json?tree=jobs[name,builds[number,url,testReport[duration,totalCount,skipCount,failCount,passCount]]]

Пример кода на Python с использованием библиотеки requests:

import requests
import json
jenkins_url = "http://<jenkins_url>"
job_name = "<job_name>"
api_endpoint = f"{jenkins_url}/job/{job_name}/api/json?tree=jobs[name,builds[number,url,testReport[duration,totalCount,skipCount,failCount,passCount]]]"
response = requests.get(api_endpoint)
data = json.loads(response.text)
# Extract test information from the response
jobs = data["jobs"]
for job in jobs:
    test_report = job["testReport"]
    if test_report:
        duration = test_report["duration"]
        total_count = test_report["totalCount"]
        skip_count = test_report["skipCount"]
        fail_count = test_report["failCount"]
        pass_count = test_report["passCount"]
        # Process the test information as needed

Метод 2: использование интерфейса командной строки Jenkins
Вы также можете использовать интерфейс командной строки Jenkins (CLI) для получения тестовой информации. Интерфейс командной строки предоставляет команду get-builds, которую можно использовать для получения результатов тестирования конкретного задания.

Пример команды CLI:

$ java -jar jenkins-cli.jar -s <jenkins_url> get-builds <job_name> --tree testReport[duration,totalCount,skipCount,failCount,passCount]

Убедитесь, что файл jenkins-cli.jarзагружен и доступен в вашем локальном каталоге.