Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Published by Scroll Versions from space FUNCTDEV and version SOAVIRT_9.10.6_CTP_3.1.2

...

新浏览器场景默认使用 Selenium。任何现有浏览器场景(WebDriver 支持前所记录)可以配置在 Selenium 中回放(如 关于 Selenium WebDriver 引擎 Reconfiguring Legacy Browser Recordings to Play Back in Selenium中所描述)。

Selenium 引擎不能自动使用 X 虚拟帧缓存(Xvfb),但可以手动配置。例如,Xvfb 使您能够在 Linux 上的自动化 soatestcli 任务中运行 Selenium 浏览器场景,而无需显示。有关更多详情信息,请查阅 关于 Running Selenium WebDriver 引擎Browser Scenarios Using soatestcli on Linux

迁移注意事项

  • 传统的浏览器记录可能包含 Selenium 引擎不支持的操作。有关更多详情,请查阅 关于 Selenium WebDriver 引擎 Reconfiguring Legacy Browser Recordings to Play Back in Selenium 。
  • 由于 Selenium WebDriver 引擎使用 32 位版本的 Internet Explorer,所以在使用 Selenium 引擎时,任何自定义 Internet Explorer Executable Path 设置(比如,来自 Preferences> Browser> IE Executable Path)都将不适用)。
  • "Wait for Asynchronous Requests” 等待条件目前已弃用。无法添加新的等待条件,但是现有条件将继续工作,直到转换 Selenium 回放的相关场景。可以使用 "Wait for Interval without Traffic” 等待条件代替这些等待条件。确保间隔足够长,以便发生异步请求。
  • __No_Name_:# window 格式标识符可能在传统的浏览器记录中使用,以识别窗口,但是 Selenium WebDriver 框架不支持这种格式。若要迁移这些记录,请重新运行它们,然后将其打开并使用下拉菜单指定正确的窗口。可以使用窗口名称或窗口索引来标识一个窗口。

...

  • Chrome 28+ 和 Selenium 的 chrome 驱动器与 RHEL/!CentOS 6.x 互不兼容。CentOS 7.0 (64-bit) 工作 兼容 - 尽管有一个警告报告。该警告使用 setsebool -P unconfined_chrome_sandbox_transition 0命令行禁用掉。

...

Table of Content Zone
maxLevel2
indent60px
locationtop

升级 Selenium 客户端库(包括升级支持 Firefox 的 WebDriver)

无论您希望 Selenium WebDriver 使用什么浏览器进行回放,下面的步骤始终是更新它的第一步。Firefox 的 WebDriver 支持将作为该过程的一部分进行升级。 

  1. 跳转至 http://search.maven.org
  2. 从 maven.org (使用 jar 下载链接)中搜索并下载以下文件。
    • selenium-api-{x.y.z}.jar
    • selenium-chrome-driver-{x.y.z}.jar
    • selenium-firefox-driver-{x.y.z}.jar
    • selenium-ie-driver-{x.y.z}.jar
    • selenium-edge-driver- {x.y.z}.jar
    • selenium-java-{x.y.z}.jar
    • selenium-remote-driver-{x.y.z}.jar
    • selenium-safari-driver-{x.y.z}.jar
    • selenium-support-{x.y.z}.jar



  3. 从下载的每个 jar 文件中删除版本后缀(比如,{x.y.x})。例如, selenium-api-2.45.0.jar 应该重命名为 selenium-api.jar
  4. 在 SOAtest 安装目录中,运行 update.bat 脚本(适用于 Windows)或 update 脚本(适用于 Linux 和 Mac),其中带 –patch 参数以及前面步骤中下载并重命名的每个 jar 的路径。运行该脚本,将使用 patch 参数引用的文件代替安装中的版本。通过在文件后附加 .bak 扩展名,也将备份安装中可替换的文件。
    • 对于 Windows:运行 update.bat –patch /path/to/[name_of_file].jar
    • 对于 Linux 或 Mac:运行 ./update –patch /path/to/[name_of_file].jar。注意,在同一个版本的 Mac 上,您可能需要手动复制 Selenium 驱动器。

例如,在运行脚本升级 selenium-java.jar 文件时,以及文件下载到 %DOWNLOADS% 目录中时,这是看起来像 Windows 上的脚本输出。

Code Block
languagetext
c:\Program Files\Parasoft\SOAtest\9.9>update -patch %DOWNLOADS%\selenium-java.jar INFO: Patching file: C:\Program Files\Parasoft\SOAtest\9.9\eclipse\plugins\com.parasoft.xtest.libs.web_9.9.0.20141024\root\lib-java\org.seleniumhq.selenium\selenium-java.jar
Update completed successfully


完成以上步骤之后,可以通过跳转至 Firefox 插件页面并检查版本号来确定 FireFox 的 Selenium WebDriver 是否升级。

Anchor
ChromeDriver
ChromeDriver
升级 Chrome(ChromeDriver)的 WebDriver 支持

若要升级 Chrome 的 WebDriver 支持,请更新 ChromeDriver,如下所示:

  1. 如果您还没有这样做,请按照 Upgrading Selenium Client Libraries (Includes Updating WebDriver Support for Firefox)所描述那样升级 Selenium 客户端库。
  2. 跳转至 http://chromedriver.storage.googleapis.com/index.html上的 ChromeDriver 下载页面。
  3. 下载最新版本(可以点击 LATEST_RELEASE 链接找到最新版本)。
  4. 下载 ChromeDriver .zip 文件用于您的架构:
    • 对于 64 位和 32 位的 Windows:chromedriver_win32.zip
    • 对于 64 位和 32 位的 Mac:chromedriver_mac32.zip
    • 对于 64 位 Linux:chromedriver_linux64.zip
    • 对于 32 位 Linux:chromedriver_linux32.zip
  5. 从该 .zip 中提取 chromedriver.exe 文件。
  6. 在 SOAtest 安装目录中,运行 update.bat 脚本(针对 Windows)或 update 脚本(针对 Linux 和 Mac),其中带 –patch 参数以及到 chromedriver.exe 文件的路径。运行该脚本,将使用 patch 参数引用的文件代替安装中的版本。通过向文件附加 .bak 扩展名,它还将在安装中备份替换的文件。
    • 对于 Windows:运行 update.bat –patch /path/to/chromedriver.exe
    • 对于 Linux 或 Mac:运行 ./update –patch /path/to/chromedriver

Anchor
InternetExplorerDriver
InternetExplorerDriver
更新 Internet Explorer(InternetExplorerDriver)的 WebDriver 支持

若要更新 Internet Explorer 的 WebDriver 支持,请更新 InternetExplorerDriver,如下所示:

  1. 如果您还没有这样做,请按照 Upgrading Selenium Client Libraries (Includes Updating WebDriver Support for Firefox)所描述那样升级 Selenium 客户端库。
  2. 跳转至 Selenium 下载页面(http://www.seleniumhq.org/download/),然后在 Internet Explorer Driver Server 部分下,下载 32 bit Windows IE 版本—即使您正在运行 64 位的 Windows
  3. 从 .zip 中提取 IEDriverServer.exe 文件。
  4. 在 SOAtest 安装目录中,运行 update.bat 脚本,其中带 –patch 参数以及到所下载的 IEDriverServer.exe 文件的路径(比如, update.bat –patch /path/to/IEDriverServer.exe)。运行此脚本将使用 patch 参数指向的文件代替安装中的版本。通过在文件后附加 .bak 扩展名,也将备份安装中可替换的文件。

SOAtest 将使用回放的 InternetExplorerDriver 新版本。

Anchor
SafariDriver
SafariDriver
升级 Safari 的 WebDriver 支持(SafariDriver)

Selenium 的 SafariDriver 在 Safari 10 和更高版本中已弃用。更新到 Safari 的最新版本,并使用 Apple 的 SafariDriver。如果无法升级 Safari,则可以下载并安装最新的 Safari WebDriver 扩展,如下所示:

  1. 打开 Safari 浏览器,跳转至 Selenium 下载页面(http://www.seleniumhq.org/download/) 
  2. 在 SafariDriver 部分下,下载最新版本的 SafariDriver.safariextz



  3. 单击下载的文件以安装 Safari WebDriver 扩展。

更新 Microsoft Edge(EdgeDriver)的 WebDriver 支持

  1. 如果您还没有这样做,请按照 Upgrading Selenium Client Libraries (Includes Updating WebDriver Support for Firefox)所描述那样升级 Selenium 客户端库。
  2. 跳转至 Microsoft WebDriver 下载页面(https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/),下载用于 Edge 版本的驱动器(查阅 Browser Support 以获得版本支持详细信息)。
  3. 将驱动器保存到以下的路径中:

    <SOATEST_INSTALL>\eclipse\plugins\com.parasoft.xtest.libs.web_<version>\root\browsers\webdriver\edge\x86\

...