【问题标题】:How to generate pass/fail report for android application using appium in android studio(using Testng)如何在android studio中使用appium为android应用程序生成通过/失败报告(使用Testng)
【发布时间】:2019-09-20 15:38:54
【问题描述】:

我想在 Appium 中使用 android-studioandroid 应用程序 生成通过/失败报告(使用 TestNG)

关于可以与代码链接并在android studio中生成报告的第3方工具的任何想法

我已经尝试过范围报告,但它没有为应用程序提供报告,因为我看不到那里创建的任何报告文件

【问题讨论】:

    标签: android testng appium appium-android


    【解决方案1】:
    1. 您的外部报表类应该实现IReporter 类。
    2. 在你的 testNg xml 运行器中注册你的外部报告类作为监听器。
    3. 再次验证您的输出文件路径 它应该工作!祝你好运:)!!!

    【讨论】:

      【解决方案2】:

      好像你配置错了。范围报告旧版本和新版本有点不同。这是一个生成范围报告的示例。创建范围报告生成器

      @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>
      

      【讨论】:

        猜你喜欢
        • 2019-08-01
        • 2023-03-24
        • 2018-02-24
        • 1970-01-01
        • 2018-12-28
        • 1970-01-01
        • 1970-01-01
        • 2018-09-04
        • 2020-01-03
        相关资源
        最近更新 更多