设置多个浏览器测试
设置多个浏览器测试
设置多个浏览器测试
此任务描述可用于为应用程序或网页进行有效的跨浏览器测试的一些技术方法。
提示:有关与该任务相关的用例场景,请参见多浏览器测试中的描述性编程 - 用例场景。
本主题包括:
先决条件: 关闭浏览器的自动更新
为确保您正在所需的特定浏览器版本上进行测试,请关闭浏览器的自动更新功能。
返回页首
配置录制和运行设置以启动浏览器
使用“录制和运行设置”,可以更改在其上为每个测试运行而运行测试的浏览器。
- 选择“录制”>“录制和运行设置”。
- 在“录制和运行设置”对话框中,选择“Web”选项卡。
- 在“Web”选项卡中,选择“录制或测试运行开始时打开以下地址:”选项。
- 在 Web 地址下拉列表中,输入一个要打开的 Web 地址或从下拉列表中选择一个 Web 地址。
- 在“录制或测试运行开始时打开以下浏览器:”下拉列表中,选择要运行测试的浏览器。
备注:如果选择 Apple Safari,则必须提供其他连接信息。有关详细信息,请参阅连接到远程 Mac 计算机
启动测试运行时,指定浏览器将打开输入的 Web 地址。
返回页首
使用 BROWSER_ENV 环境变量启动浏览器
使用BROWSER_ENV环境值,可以更改用于启动每个测试运行的浏览器,并且在某些情况下,可以指定特定的浏览器版本 (如果已安装)。
- 选择“文件”>“设置”。
- 在“设置”对话框中,选择“环境”节点。
- 从“环境”节点的“变量类型”下拉列表中,选择“用户定义”。
- 在用户定义的变量列表中,单击“添加”按钮
。 - 在“添加新环境参数”对话框的“名称”字段中,输入BROWSER_ENV(区分大小写)。
- 在“值”字段中,为要启动的浏览器输入值 (区分大小写)。
BROWSER_ENV 值 要启动的浏览器
IE 已安装的 Internet Explorer 版本。
IE64 已安装的 Internet Explorer 64 位版本。
CHROME 已安装的 Google Chrome 版本。
CHROMIUMEDGE 已安装的 Microsoft Edge 版本。此值仅支持向后兼容。请改用EDGE。
CHROME_HEADLESS Headless Chrome 的本地安装版本。支持 Chrome 版本 60 及更高版本。
FIREFOX 已安装的 Firefox 版本。
FIREFOX64 安装在计算机上且由OpenText Functional Testing支持的最新版本的 64 位 Mozilla Firefox。
SAFARI 连接到OpenText Functional Testing的远程 Mac 计算机 (在“录制和运行设置”对话框的“Web”选项卡中定义或在REMOTE_HOST环境变量中定义) 上的 Safari。
EDGE 已安装的 Microsoft Edge 版本。
CHROME_EMULATOR Chrome。已使用指定设备在仿真模式下打开。
- 单击“确定”保存变量的“名称”和“值”。
- 在“测试设置”对话框中,单击“应用”和“确定”以保存变量并关闭对话框。
返回页首
使用测试参数打开浏览器
可以使用“录制和运行设置”指示OpenText Functional Testing自动启动用于测试运行的特定浏览器:
- 选择“录制”>“录制和运行设置”。
- 在“录制和运行设置”对话框中,选择“Web”选项卡。
- 在“Web”选项卡中,选择“录制或测试运行开始时打开以下:”选项。
- (可选) 在“地址”字段中,输入要将浏览器打开至的地址。
可以将“浏览器”下拉列表保留为默认值。 - 在“参数类型”下拉列表中,选择参数类型: “全局数据表”或“测试参数”
- 在“参数名”字段中,输入参数名。(默认参数名为Browser。)
- 单击“应用”保存更改,然后单击“确定”关闭对话框。
自动将列添加到“数据”窗格的“全局”选项卡中或添加测试参数。 - 运行测试之前,执行以下操作之一,具体取决于选定的参数类型:
对于全局数据表参数 在“数据”窗格的“全局”选项卡中,设置参数的值。 使用使用 BROWSER_ENV 环境变量启动浏览器中描述的 BROWSER_ENV 值。有关添加移动相关参数的详细信息,请参阅定义移动录制和运行设置。
对于测试参数 在工具栏中,单击“运行”按钮。在“运行”对话框中,展开“选项”部分,然后选择“输入参数”选项卡。在参数的“值”列中,输入参数的值
返回页首
使用数据表参数启动浏览器
- (可选) 创建可用于所有测试的可重用操作,以便启动浏览器。
- 在“数据”窗格中,打开“全局”选项卡。
- 在“全局”选项卡中,单击要在其中存储参数的列的第一行。
- 输入该参数的名称,并单击“确定”。
例如,可以将此参数命名为BrowserName(以将其标识为要打开的浏览器的名称)。 - 在数据表中,输入要打开的浏览器的 .exe 名称。
例如,如果需要在 Internet Explorer、Firefox 和 Chrome 上运行测试,您将分别在列的前三行中输入iexplore.exe、firefox.exe和chrome.exe。 - 添加以下格式的测试步骤:
SystemUtil.Run DataTable("<参数名称>", dtGlobalSheet), "<要将浏览器打开至的地址>"
例如,如果要打开至 AdvantageDEMO 站点,可以输入以下内容:
SystemUtil.Run DataTable("BrowserName", dtGlobalSheet), "https://www.advantageonlineshopping.com/#/"
备注:如果将此步骤添加到稍后由其他测试调用的可重用操作,则必须在调用该操作的所有测试的“全局”选项卡中添加相关行。
返回页首
使用 WebUtil.LaunchBrowser 步骤启动浏览器
如果您正在使用Business Process Testing测试 Web 应用程序,请使用WebUtil.LaunchBrowser步骤在每个组件中根据需要启动相应的浏览器。
为浏览器参数提供一个参数。使用使用 BROWSER_ENV 环境变量启动浏览器中描述的 BROWSER_ENV 值。
备注:如果您使用的业务流程测试是通过OpenText Functional Testing版本 12.53 及更低版本创建的,Web.txt函数库 (可在测试的应用程序区域中找到) 将不包含 LaunchBrowser 函数。因此,您将无法在关键字GUI组件中使用 LaunchBrowser 方法。
要使用此函数,请将以下代码复制到 Web.txt 函数库中:
Public Function LaunchBrowser(Browser, device_model, device_manufacturer, device_ostype, device_osversion)
WebUtil.LaunchBrowser Browser, device_model, device_manufacturer, device_ostype, device_osversion
End Function
您为WebUtil.LaunchBrowser步骤中的device_model参数提供的值必须是Digital Lab向导的“设备”部分中显示的“设备名称”之一。
使用CHROME_EMULATOR浏览器时,可以在EmulatedDevices.xml文件中修改这些值。有关详细信息,请参阅配置模拟设备。
以下示例是在 iPhone X 中启动 Chrome 仿真器浏览器:
Copy code
WebUtil.LaunchBrowser "CHROME_EMULATOR", "iPhone X"
返回页首
在测试运行期间动态加载对象存储库
如果测试要求每个浏览器类型具有不同的对象存储库,请在测试运行过程中加载相关对象存储库,而无需在测试运行前手动配置任何内容:
- 在“数据”窗格中,打开“全局”选项卡。
- 在“全局”选项卡中,单击要在其中存储参数的列的第一行。
- 输入该参数的名称,并单击“确定”。
例如,可以将此参数命名为Browser(以将其标识为要运行测试的浏览器的名称)。 - 在数据表中,输入要运行测试的浏览器的名称。
- 添加以下格式的测试步骤:
If DataTable("<数据表参数>") = <浏览器 1> Then
RepositoriesCollection.Add "<对象存储库的位置>"
ElseIf DataTable("<数据表参数>") = <浏览器 2> Then
RepositoriesCollection.Add "<location to object repository>"
End If
- 为应用程序/网页添加其他步骤。
测试运行时,将加载相应的对象存储库,并且测试步骤会使用加载的对象存储库中的对象。
返回页首
为特定于浏览器的行为添加步骤
如果需要在测试过程中添加步骤以执行特定于浏览器的行为,请使用测试参数为此行为创建步骤。
- 在画布中选择操作。
- 在“属性”窗格中,选择“参数”选项卡。
- 在“参数”选项卡中,单击“添加”按钮。
- 在参数网格中,提供参数的名称。例如,您可以将参数命名为 ActiveBrowser,以表明参数的值代表当前正在使用的浏览器。
- 将步骤添加到测试。可以通过使用 Parameter 对象来使用参数的值:
Select Case Parameter("<参数名>")
Case "<浏览器 1>"
'Do something specific for browser 1
Case "<浏览器 2>"
'Do something specific for browser 2
End Select
备注:根据需要为每个浏览器类型添加其他 Case 陈述句
测试运行时,测试步骤将按照所需Case语句中指定的操作运行。
返回页首