Outlook / Yahoo在Chrome中无头运行硒测试时表现很怪异

问题描述 投票:0回答:2

这真的很奇怪。尝试使用Yahoo,现在使用Outlook。我正在运行硒测试,该测试将从正在测试的应用程序发送电子邮件。我想通过检查是否收到正确的电子邮件来断言测试。发送电子邮件后,我将启动chrome驱动程序的第二个实例,并打开一个我已设置的测试电子邮件帐户(Yahoo / Outlook),登录,提取电子邮件,进行一些声明并通过测试。

但是,一旦我尝试以无头模式运行测试,就好像Outlook的版本不同,因此找不到该元素,则测试失败。用尽它的头,工作正常。它使用相同版本的chrome,chrome驱动程序和相同的chrome配置文件。通过让我的代码对失败进行屏幕截图,我可以看到Outlook网页看起来有所不同,因此即使我无头运行,也可以看到失败的地方。

以前有没有人遇到过这样的问题,如果是这样,我该如何解决?现在在做我的瑞典人。

google-chrome selenium headless
2个回答
0
投票

[至少从外观上看,Microsoft正在测试您使用的浏览器。至少这就是我所面对的。当您在Selenium中使用我的chromedriver的“ headless”选项时,就像您所做的那样,既然得到了另一个页面。我通过设置ChromeDriver的用户代理来解决:

System.setProperty("webdriver.chrome.driver", prop.getProperty("driver.path"));
ChromeOptions chromeOptions  = new ChromeOptions();
chromeOptions.addArguments("headless");
chromeOptions.addArguments("user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36");
ChromeDriver driver = new ChromeDriver(chromeOptions);

0
投票

[当我运行无头chrome时,它以浅色版本打开Outlook Webclient,而当我运行无头chrome时,它以其普通版本打开Outlook Webclient。任何人都可以帮忙。同样在上述答案中,此配置在哪里设置?在chromedriver node_module或...?

谢谢

© www.soinside.com 2019 - 2024. All rights reserved.