在测试可以安全结束之前使用端端测试结束之前,请调用范围报告



当我尝试生成范围报告时,我会遇到此错误。我已经通过reports.endtest(test);

关闭了报告

这是我的代码:

@beforemethod public void beforemethod(方法方法){ test = reports.starttest(((this.getClass()。getSimplename() " ::" method.getName()),method.getName()); test.signauthor(" Roy"); test.AssignCategory("烟雾测试"); }

@Test(priority = 0)
public static void initialSetup() throws InterruptedException, IOException {
    System.setProperty("webdriver.ie.driver", "\IEDriverServer.exe");
    b = new InternetExplorerDriver();
    b.get("https://something.com");
    Alert alert = b.switchTo().alert();
    String _user_name = "kirstie";
    String _password = "88525";
    alert.authenticateUsing(new UserAndPassword(_user_name, _password));
    b.switchTo().defaultContent();
}
@Test(priority = 1, enabled = true)
public static void secondClient() throws Exception {
    b.findElement(By.xpath("//*[@class='main-sidebar open']")).click();
    b.findElement(By.xpath("//*[@class='sub-menu group open']/li")).click();
}
@AfterMethod
public void afterMethod(ITestResult iTestResult) throws IOException {
    if (iTestResult.getStatus() == ITestResult.FAILURE) {
        String screenshotPath = GetScreenshot.capture(driver, "screenShots");
        test.log(LogStatus.FAIL, "Screenshot", test.addScreenCapture(screenshotPath));
        test.log(LogStatus.FAIL, "Test Case Failed is " + iTestResult.getName());
        test.log(LogStatus.FAIL, "Test Case Failed is " + iTestResult.getThrowable());
    } else if (iTestResult.getStatus() == ITestResult.SKIP) {
        test.log(LogStatus.SKIP, "Test Case Skipped is " + iTestResult.getName());
    }
    reports.endTest(test);
}
@AfterSuite
public void afterSuite() {
    reports.flush();
    reports.close();
}

我只是复制并粘贴我使用的项目的模板。希望通过使用此

来解决您的问题
    WebDriver driver;
    ExtentHtmlReporter htmlReporter;
    ExtentReports extent;
    ExtentTest test;

            @BeforeTest
            public void setUp() {
                // where we need to generate the report
                htmlReporter = new ExtentHtmlReporter("Your report Path");
                extent = new ExtentReports();
                extent.attachReporter(htmlReporter);
                // Set our document title, theme etc..
                htmlReporter.config().setDocumentTitle("Rentalhomes");
                htmlReporter.config().setReportName("Rentalhomes Production Testing");
                htmlReporter.config().setTestViewChartLocation(ChartLocation.TOP);
                htmlReporter.config().setTheme(Theme.DARK);

                            }
           }
            @Test
            public void HomepageLogo() throws Exception {
                test = extent.createTest("rentalhomesHomePage");
                //Your Test
            }
          @AfterMethod
          public void setTestResult(ITestResult result) throws IOException {

              if (result.getStatus() == ITestResult.FAILURE) {
                  test.log(Status.FAIL, result.getName());
                  test.log(Status.FAIL,result.getThrowable());
                  //test.fail("Screen Shot : " + test.addScreenCaptureFromPath(screenShot));
              } else if (result.getStatus() == ITestResult.SUCCESS) {
                  test.log(Status.PASS, result.getName());
                  //test.pass("Screen Shot : " + test.addScreenCaptureFromPath(screenShot));
              } else if (result.getStatus() == ITestResult.SKIP) {
                  test.skip("Test Case : " + result.getName() + " has been skipped");
              }
              extent.flush();
          driver.close();
            }
        }

remove//extent.starttest("testcasename"," description");从您的代码

最新更新