【问题标题】:Best way to test a web application for multiple versions of browser using Selenium automation?使用 Selenium 自动化为多个版本的浏览器测试 Web 应用程序的最佳方法?
【发布时间】:2017-12-10 12:28:03
【问题描述】:

我已经做了很长一段时间的研究,但无法找到一个好的解决方案 - 因此想到在 StackOverflow 上提问。

我已经使用 Selenium Webdriver 对不同的浏览器进行了自动化测试,但最近我发现 Chrome 的旧版本出现了一些问题 - 现在,我的问题是是否有任何方法可以运行脚本不同版本的浏览器,例如测试应在 Chrome 48 - Chrome 59 上运行(仅涵盖专业版本)。

我从研究中得到的两个解决方案是 -

1. 如以下链接覆盖 chrome 二进制位置: https://stackoverflow.com/a/16562068/6738995

然后我开始研究如何下载 Chrome 的二进制文件,我还找到了官方 repo - http://commondatastorage.googleapis.com/chromium-browser-snapshots/index.html

2。在提供多版本浏览器支持的云解决方案提供商(如 BrowserStack 或 SauceLabs 等)上使用 Selenium Webdriver

现在,我想用尽与第一种方法相关的所有选项,即如果没有适当/简单的方法来实施解决方案,那么我将采用第二种方法。

我不愿意采用第二种方法的原因是我可能会失去控制(我推测使用该平台可能有一些限制,我可能是错的,只能在尝试之后找到尝试)和也会有与此相关的学习曲线,我还必须花费时间和资源来稳定所选技术。

提前致谢。

【问题讨论】:

  • 酱实验室提供多个版本的同一浏览器。这样您就可以触发任何版本,甚至是测试版。
  • 是的 - 我在问题本身中提到,如果第一个不起作用,那么我将不得不选择使用上述产品在云中实现自动化的第二个解决方案。
  • 你问哪个最好?然后显然是 Saucelabs/BrowserStack 方法。您不能维护多个版本。会很忙。不要重新发明轮子。如果您有时间和耐心,那么您可以采用方法 1
  • 我理解这种困惑 - 我现在已经编辑了这个问题。我的目标是用尽与方法 1 相关的所有选项,然后只转向第二种方法,因为我已经用第一种方法构建了系统,我将不得不花费更多的时间和资源来使用第二种方法。

标签: google-chrome selenium selenium-webdriver selenium-chromedriver ui-automation


【解决方案1】:

如果资源对您来说不是问题/限制,那么您可以使用虚拟机,例如 VMWare,并使用不同的 Web 浏览器模拟单独的测试环境。但是,如果您正在寻找 the best 解决方案,那么您必须使用像 SauceLabs 或 BrowserStack 这样的云解决方案。

【讨论】:

  • 是的,虚拟化就是这样一种解决方案,但它比切换所需的浏览器二进制文件需要更多的参与。顺便说一句,您是否使用过 Docker 或对当前情况下使用 docker 有任何想法?
猜你喜欢
  • 1970-01-01
  • 2021-01-15
  • 2023-03-30
  • 1970-01-01
  • 2011-06-28
  • 1970-01-01
  • 1970-01-01
  • 2010-09-07
  • 1970-01-01
相关资源
最近更新 更多