【问题标题】:How can I make Internet Explorer run faster with Selenium?如何使用 Selenium 使 Internet Explorer 运行得更快?
【发布时间】:2013-01-15 11:51:00
【问题描述】:

我在使用 selenium 自动执行脚本时遇到了 Internet Explorer 的问题。太慢了,我的脚本超时了。

我正在使用 CSS 定位器进行自动化。谁能告诉我如何提高 Selenium 自动化测试的速度?

【问题讨论】:

  • 你在用什么? Selenium RC 还是 Selenium 2 (WebDriver)?

标签: performance internet-explorer selenium


【解决方案1】:

尝试使用 IE webdriver,它不支持 css3 但仍然更快。如果你想使用标准的 selenium api 编写测试,那么使用 webdriverbacked selenium 或尝试使用带有浏览器字符串的 ISFW 作为 iexplorerDriver 或 iexplorerRemoteDriver。我们还面临 IE 的速度问题,我们利用了ISFW 提供的 webdriver 支持。

【讨论】:

  • 我下载了我们有相同的框架,只是我发现有 ISFW-plugin.xpi 文件但是如何使用它。而且我认为这是一个 FF 浏览器插件文件,它不在 IE 上运行。你能解释一下如何走得更远吗?????????
  • ISFW-plugin 有助于将您在 IDE 中记录的步骤导出为 ISFW 格式。导出后,您可以对任何支持 selenium 的浏览器运行测试。为此,您需要通过提供参数在 application.properties 或 xml 配置文件中设置浏览器名称。如果您阅读了 zip 提供的文档,那么您可以获得更多的想法。对于简单的评估,只需通过将浏览器字符串设置为 iexplorerDriver 或 iexplorerRemoteDriver 来运行 zip 中提供的演示测试,您就会明白。我正在编写我们在单独答案中下载 zip 后执行的步骤。
【解决方案2】:

超时查找元素非常罕见!

可能是您正在运行测试的机器缺乏资源。 CSS 选择器使用来自 Sizzle 的 javascript 来查找对象。

尝试检查它是否有更多资源,例如 CPU 和 RAM,然后看看是否有帮助。

【讨论】:

  • 我发现 IE 很慢是因为网站包含 flash 和 javascript 而不是因为 RAM 或 CPU 较少。那么你能就这一点提出任何建议吗?我要自动化的网站包含 Flash 和 javascript。你有什么解决办法??????
【解决方案3】:

正如我在评论您的问题时所讨论的,以下是我在下载 zip 后采取的步骤

  1. 提取到一个目录说project-home
  2. 下载 selenium-standalone-server jar 并放在project-home/server
  3. 我在project-home/src 目录下找到了一些示例测试,因此执行了批处理文件project-home/scripts/seleniumTestRunner.bat 以获取演示。

我发现在 Firefox 中运行的测试是 selenium.defaultBrowser=*firefoxproject-home/resources/application.properties 文件中。然后我尝试通过使用不同的浏览器字符串更改值并发现工作正常。

对于 IE 使用 *iehta 或 *iexplore

selenium.defaultBrowser=*iehta

对于 IE webdriver 使用

selenium.defaultBrowser=iexplorerDriver

对于 IE 远程 webdriver 使用

selenium.defaultBrowser=iexplorerRemoteDriver

我还通过从示例代码中获取 ref 编写了一个额外的测试并且工作正常。

IDE插件的使用

  1. 安装 xpi
  2. 记录新的测试
  3. 导出的测试:文件-> 将测试用例导出为-> InfostretchFW 格式
  4. 提供带有 .java 扩展名的文件名
  5. 保存在 project-home\src\com\sample\automation\tests 下

IDE plug-in 添加了一些有用的功能。以下是它提供的附加命令

  1. 定义模块

  2. 结束模块

  3. IF, EndIF

  4. 否则,如果

  5. 虽然,结束时

    希望这些信息对您有所帮助。前段时间,我从 InfoStretch 支持中心获得了上述所有帮助! :)

谢谢。

【讨论】:

  • 感谢您提供信息并抽出宝贵时间帮助我。谢谢!
【解决方案4】:

如果您使用 Selenium RC,您可以迁移到 WebDriver (Selenium 2)。 WebDriver (Selenium 2) 比 Selenium RC 更快。 id 最好找出元素。使用 CSS Locator 很好,因为使用 css locator 比 xpath 快。所以在这一点上你是在正确的轨道上。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-03-11
    • 1970-01-01
    • 1970-01-01
    • 2015-05-05
    • 2016-12-26
    • 2014-11-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多