使用Safari浏览器进行Selenium自动化测试

时间:2020-09-29 05:04:18

标签: java selenium automation

我在Safari浏览器中执行硒测试脚本时出现问题。

  • 问题是:-我正在测试一个应用程序,其中前端是从Angular构建的。有一个使用Prime-Ng的弹出模式构建,当我使用Safari浏览器运行测试脚本时,它没有打开。但是该安全脚本适用于Firefox和Chrome浏览器。

这是我的代码:-

@Test(priority = 24)
public void testExitPopUp()throws Exception{
    try {
        gp.linktoExitgdpr.click();
       // gp.linktoExitgdpr.sendKeys(Keys.RETURN);
        logger.info("Exit Link Is Selected");
        Thread.sleep(4000);
        if (gp.exirtPopUpPane.isDisplayed()) {
            logger.info("Pop up Window is Displayed");
            Assert.assertTrue(true);
        } else {
            logger.info("Pop up Window is not Displayed");
            captureScreen(driver, "PopUPError");
            Assert.fail();
        }
    }catch (Exception e){
        logger.info("Missing Elements (Exception)");
        captureScreen(driver, "exceptionmissingelemnts");
        Assert.fail();
    }
}

注意:-这里所有元素都是从另一个类调用的。 以下代码显示了我如何获取这些元素。

链接到Exitgdpr- @FindBy(xpath =“ / html / body / app-root / app-survey-layout / app-survey / app-survey-gdpr / div [1] / div / div [3] / div / div / div / div [3] / div [3] / a“) @CacheLookup 公共WebElement linktoExitgdpr;

exirtPopUpPane- @FindBy(xpath =“ / html / body / app-root / app-survey-layout / app-survey / app-survey-gdpr / div [2] / p-toast / div / p-toastitem / div”) @CacheLookup 公共WebElement exirtPopUpPane;

1 个答案:

答案 0 :(得分:0)

使用最新的PrimeNG 9.0.6。和Angular:9.1.2检查生产变量在enviroment.production变量中是否为真值,并且在为生产enableProdMode()构建项目时必须调用ng build --prod

if (environment.production) { enableProdMode(); }