Как сгенерировать отчёт о прохождении / неудаче для андроид-приложения, используя appium в андроид-студии (используя Testng) - PullRequest
0 голосов
/ 02 мая 2019

Я хочу сгенерировать отчеты о сбоях / неудачах для приложения для Android с использованием android-studio в Appium (с TestNG)

Любое представление о сторонних инструментах, которые могут связываться с кодом и генерировать отчет в Android Studio

Я пытался Отчет о размере , но он не предоставляет отчеты для приложения, так как я не вижу ни одного файла отчета, созданного там

Ответы [ 2 ]

1 голос
/ 10 мая 2019

Похоже, вы неправильно настроили.Отчеты об объеме старая версия и новая версия немного отличаются.Вот пример для создания отчета по экстентам.Создайте построитель отчетов Extent

@BeforeSuite
    @Parameters({"browser","URL","Env"})
    public void beforeSuite(String browser,String URL,String Env) {
        DateFormat formatter = new SimpleDateFormat("dd_MM_yyyy");
        String today = formatter.format(date);
        createDir = new CreateDirectories();
        createDir.createFolderWithSpecificName(OUTPUT_FOLDER + today);
        ExtentHtmlReporter htmlReporter = new ExtentHtmlReporter(OUTPUT_FOLDER + today +"/"+ FILE_NAME);
        htmlReporter.config().setDocumentTitle("Test Report");
        htmlReporter.config().setReportName("Regression Report");
        htmlReporter.config().setTheme(Theme.DARK);
        extent = new ExtentReports();
        extent.attachReporter(htmlReporter);
        extent.setSystemInfo("BROWSER" , browser);
        extent.setSystemInfo("URL", URL);
        extent.setSystemInfo("ENVIRONMENT" , "ENV");
    }

    @BeforeClass
    public synchronized void beforeClass() {
        ExtentTest parent = extent.createTest(getClass().getName());
        parentTest.set(parent);
    }

    @BeforeMethod
    public synchronized void beforeMethod(Method method) {
        ExtentTest child = parentTest.get().createNode(method.getName());
        test.set(child);
    }

    @AfterMethod
    public synchronized void afterMethod(ITestResult result) {

        StringBuilder inputArgs = new StringBuilder();
        Object objects[] = result.getParameters();

        for(Object obj : objects){
            if(obj==null){
                inputArgs.append("  ");
            }else{
                inputArgs.append(obj.toString());
            }
            inputArgs.append(" , ");
        }

        if (result.getStatus() == ITestResult.FAILURE)
            test.get().fail(result.getThrowable()+ "Input Parameters : "+inputArgs.toString());
        else if (result.getStatus() == ITestResult.SKIP)
            test.get().skip(result.getThrowable() + "Input Parameters : "+inputArgs.toString());
        else
            test.get().pass( " Test Passed. Input parameters : " +inputArgs.toString());
        extent.flush();
    }

Затем запустите ExtentReport с классом public class Base extends ExtentTestNGReportBuilder

Другой способ - создать прослушиватель.Подробности конфигурации доступны на сайте отчетов о экстентах.

<suite name="Suite" parallel="false" thread-count="5" verbose="1">
    <listeners>
        <listener class-name="utils.listners.ExtentTestNGIReporterListener"> 
</listener>
0 голосов
/ 03 мая 2019
  1. ваш класс внешнего отчета должен реализовывать класс IReporter.
  2. зарегистрируйте ваш внешний класс отчета в качестве слушателя в вашем testNg xml runner.
  3. снова проверьте путь к выходному файлу Он должен работать!!! Удачи:) !!!
...