Selenium WebDriver 引擎支持以下浏览器进行回放:

  • Firefox 47.0.2 及更早版本
  • Google Chrome
  • Internet Explorer 11
  • Safari 7-9.x on Mac OSX
  • Microsoft Edge Windows Anniversary Edition (版本 38.14393)+ (请查阅 Microsoft Edge Notes 以获得其他信息)
  • 基于 Chromium 的 Edge 浏览器版本 79+ (请查阅 Microsoft Edge Notes 以获得其他信息)。

使用 Parasoft Native Driver (legacy) 引擎录制和回放时支持以下浏览器:

  • Internet Explorer 11
  • Google Chrome 9+
  • Firefox 3.6-54 (仅用于播放,不支持录制)

还可以通过桌面浏览器执行移动界面测试,如 移动界面测试中所述。

Firefox 注意事项

  • Firefox 3 或更高版本中不支持回放允许浏览文件并上传的输入。
  • 如果 Firefox 正在进行自动更新(更新已下载,但尚未安装),web 场景可能无法正确回放(Virtualize 将启动 Firefox,Firefox 将打开一个对话框检查附加组件兼容性;这会导致回放失败)。如果发生这种情况,请在 Virtualize 之外启动 Firefox,以完成更新安装。一旦更新完成,就可以像往常一样回放 web 场景。

Internet Explorer 注意事项

  • 使用 Internet Explorer 之前,请查阅 配置 IE 浏览器设置

  • 对于 Internet Explorer 9 或 10,我们建议在注册事件侦听器时使用 addEventListener()。但是,如果使用 attachEvent(),这是一个特定于 IE 的事件模型,则需要手动更新 <Virtualize Directory>\eclipse\plugins\com.parasoft.xtest.libs.web_<version>\root\browsers\ie\HTMLUtil.js ,以强制 Virtualize 使用特定于 IE 的模型模拟 JavaScript 事件。您需要在这个文件中做以下更改:

    SOAtest

    “ext.HTMLUtil.preferLegacyEventModel = false;"
    更改为
    "ext.HTMLUtil.preferLegacyEventModel = true;"

    Virtualize

    “_wk_HTMLUtil.preferLegacyEventModel = false;"
    更改为
    "_wk_HTMLUtil.preferLegacyEventModel = true;"

  • 当 Internet Explorer 9 第一次启动时,它将打开一个警告对话框,其中声明“记录器注册器现在可以使用了”。您需要单击 Enable 以确保您的 web 场景能够正确地记录和回放。为了获得最佳效果,您应该在单击 Enable Enable后关闭并重新打开浏览器。

  • 不支持模态对话框中的文件输入。
  • Internet Explorer 8 及更高版本中不支持对文件输入(允许您浏览到文件并将其上载的输入)进行记录和回放。

Chrome 注意事项

  • 当在 Linux 上指定 Chrome 可执行文件的路径时,请选择 google-chrome (比如, /opt/google/chrome/google-chrome)—not chrome。在 Windows 上,路径通常是 C:\Users\usernane\AppData\Local\Google\Chrome\Application\chrome.exe。在 Mac 上,路径通常是 /Applications/Google Chrome.app
  • 如果您刚刚记录了一个 web 场景,而最后一步的浏览器内容没有被捕获,那么您可以播放该场景来捕获该内容。注意,当关闭浏览器窗口停止录制时,就会发生这种情况。推荐的最佳实践是通过单击 Stop Recording 按钮(而不是关闭浏览器窗口)来停止录制。

  • 在 Chrome 上,自动生成异步请求测试只捕获来自 XMLHttpRequest 对象的请求。它不检测来自隐藏 IFrame 调用的异步请求。如果需要,您可以手动添加这样的异步请求测试。

  • 当用户对一个元素进行操作时,Chrome(与 Internet Explorer 和 Firefox 不同)不会检查其他帧,以确保定位器在帧之间是唯一的。因此,一个已记录的动作可能会在它所记录的帧之外的帧中回放。如果遇到这种意外行为,请确定一个唯一的定位器并更改浏览器回放工具中使用的定位器。

  • 在某些情况下,在异步请求发生之前需要登录。Firefox 和 IE 将检测到这一点,测试套件将自动创建执行此登录的安装测试。然后,异步测试将使用通过登录创建的 cookie。Chrome 不支持这一点。对于 Chrome, SOAtest 可以生成异步请求测试,但是登录步骤需要手动设置。要么作为设置测试,要么作为异步测试之前运行的测试套件工具。

  • Chrome 不支持对文件输入(允许浏览文件并上传文件的输入)进行记录和回放。
  • 当使用 Parasoft 本机引擎在 Mac 上录制或回放 Chrome 时,关闭 Chrome 会打开一个对话框,上面写着“Google Chrome 希望使用存储在密钥链中的‘Chrome Safe Storage’中的机密信息。想允许访问这个项目吗?”即使您选择“总是允许”,这个对话框也会在每次 Chrome 启动和关闭时打开。若要防止每次打开此对话框:
    • 请打开 Applications> Utilities> Keychain Access
    • 控件,单击 Chrome Safe Storage,然后从快捷菜单中选择 Get Info
    • 切换到 Access Control,选择 Allowall applications to access this item,然后单击 Save Changes。您将需要输入管理员密码才能继续。

Safari 注意事项

  • Safari 支持使用 Selenium WebDriver 引擎进行回放。

       •  有关相关限制的列表,请参见 Safari-Specific Issues

Microsoft Edge 注意事项

必须有您 Edge 版本可执行正确的 MicrosoftWebDriver。如果您收到“无法启动 Microsoft Edge”的错误消息,您可能需要下载驱动程序。有关其他信息,请访问 https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver 。

启用对基于 Chromium 的 Microsoft Edge 浏览器的支持

对在未附带以下工具的基于 Chromium Edge 浏览器上的回放,msedgedriver.exe WebDriver 很有必要:SOAtest 和 Virtualize、可以通过以下网址下载驱动程序:

https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/

将驱动程序保存至 <INSTALL>\eclipse\plugins\com.parasoft.xtest.libs.web_<version>\root\browsers\webdriver\edge\x86\ 目录,启用对基于 Chromium 的 Microsoft Edge 浏览器的支持。

在 Microsoft Edge 中对回放进行故障排除

当 SOAtest/Virtualize 进程以特权访问方式运行时,无法启动 Edge。采取以下行动来解决这个问题:

  1. 使用非管理员帐户或打开用户帐户控制通知的管理员帐户,以非特权进程的形式运行 SOAtest/Virtualize。
  2. 启用管理员用户的用户帐户控制通知:

    非 Windows 家庭版:

    1. 打开本地安全策略(secpol.msc),并在本地策略/安全选项下启用 User Account Control Admin Approval Mode for the Built-in Administrator account

    Windows 家庭版:

    1. 使用 regedit.exe 导航到 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
    2. 如果不存在,则创建 DWORD 值 "FilterAdministratorToken"
    3. 将 "FilterAdministratorToken” 的值设置为 1
     
  3. 如果在启动期间从计划的任务启动 SOAtest/Virtualize,请确保启用了 Run only when user is logged on 选项。


  • No labels