有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!


共 (2) 个答案

  1. # 1 楼答案

    屏幕截图应该用@After注释的方法之一拍摄。像这样:

    @After
    public void finish(Scenario scenario) {
        try {
            byte[] screenshot =
            helper.getWebDriver().getScreenshotAs(OutputType.BYTES);
            scenario.embed(screenshot, "image/png");
        } catch (WebDriverException somePlatformsDontSupportScreenshots) {
    
        System.err.println(somePlatformsDontSupportScreenshots.getMessage());
        }
        finally {
            helper.getWebDriver().close();
        }
    }
    
  2. # 2 楼答案

    有一个“order”参数可以传递给@Before@After以控制执行顺序:

    @Before( order = 5 )
    public void foo() {}
    
    @After( order = 500 )
    public void bar() {}
    

    在钩子以升序运行之前(首先是最低的顺序号),而在钩子以降序运行之后(首先是最高的顺序号)