Как динамически генерировать отчет об очаровании

Новичок в отчете allure. Я использую testng и Java8. Каждый раз, когда я запускаю тесты, мне нужно делать «привлекательные результаты». Есть ли способ, с помощью которого результаты будут автоматически обновляться вместо того, чтобы каждый раз запускать команду?


person user3627332    schedule 22.08.2018    source источник


Ответы (2)


Шаг 1: Добавьте зависимости AllureReportBuilder из репозитория Maven.

Шаг 2: Добавьте приведенный ниже код для создания отчета об очаровании.

Это создаст папку Allure Report.

new AllureReportBuilder("1.5.4", new File("target/allure-report")).unpackFace(); 
new AllureReportBuilder("1.5.4", new File("target/allure-report")).processResults(new File("target/allure-results"));

Примечание. Приведенный выше код принадлежит allure1

person Rahul Jain    schedule 08.01.2019

Я столкнулся с той же проблемой в python. Итак, что я придумал, так это запустить команду терминала через скрипт python в файле conftest.py pytest.

    import subprocess
    def pytest_sessionfinish(session, exitstatus):
        """
        Run command to set allure path and generate allure report after the test run is over
        """
        # Running pytest can result in six different exit codes:
        # Exit code 0:  All tests were collected and passed successfully
        # Exit code 1:  Tests were collected and run but some of the tests failed
        # Exit code 2:  Test execution was interrupted by the user
        # Exit code 3:  Internal error happened while executing tests
        # Exit code 4:  pytest command line usage error
        # Exit code 5:  No tests were collected
        print '\nrun status code:', exitstatus
        if (exitstatus != 2 or exitstatus != 3 or exitstatus!= 4 or exitstatus != 5):
            command_to_export_allure_path= ['export PATH=$PATH:/usr/local/bin:/usr/local/bin/allure-commandline/allure-2.7.0/bin/']
            command_generate_allure_report= ['allure generate --clean -o %s/Allure/ %s'%(allure_report_dir, allure_report_dir)]
            print command_to_export_allure_path
            print command_generate_allure_report
            subprocess.call(command_to_export_allure_path, shell=True)
            subprocess.call(command_generate_allure_report, shell=True)

Я уверен, что должен быть какой-то способ запустить команду терминала через код Java.

person Shashi Kumar Raja    schedule 24.09.2018
comment
Спасибо. Это помогает - person user3627332; 26.09.2018