当我使用 MicrosoftWebDriver for Edge 执行测试时,一切正常,但是当我最小化窗口时,所有测试都失败了。Edge 或 MicrosoftWebDriver 是否有任何选项可以避免这种行为?
1 回答
当您的测试执行正在进行时,您一直试图最小化浏览器窗口,这将违反所有最佳实践。在这一点上,值得一提的是,由于Selenium模拟用户操作,因此Selenium需要浏览器焦点。如果失去焦点, Selenium将无法执行代码行。在执行测试时考虑以下步骤:
- 浏览器最大化:当您执行测试时,始终保持Web 浏览器最大化,因此大多数元素都在视口内
根据最佳实践,您应该尝试在一个隔离的测试环境中执行您的测试脚本/自动化框架,远离手动干预,并使用所有必需的软件和硬件配置和设置。
您可以在How to run chrome driver in background using selenium with Ruby for Mac OSx中找到详细讨论?
您还可以选择在Headless版本中使用Google Chrome或Mozilla Firefox 。
对于Firefox ,您可以在How to make firefox headless programatically in Selenium with python?中找到详细讨论。
对于Chrome,您可以在 selenium.common.exceptions.WebDriverException 中找到详细讨论:消息:'chromedriver' 可执行文件需要在无头 Chrome 的 PATH 错误中
对于Ghost 浏览器,您可以在哪些驱动程序支持“无浏览器”/“无头”测试中找到详细讨论?