selenium - 使用 QAF 时如何在 TestNG XML 文件中配置一项测试以启动两个驱动程序,例如 Chrome 驱动程序和 Android 驱动程序
问题描述
案例步骤:
- 打开网络浏览器执行一些步骤
- 使用 Appium 打开 Android 设备以执行一些步骤。
注意:这两个步骤应该在一个 TestNG XML 测试中运行。
解决方案
如果您不希望两个驱动程序会话都处于活动状态,但想通过终止当前驱动程序会话来切换到另一个驱动程序,您可以在代码中设置driver.name
属性,它会满足需要。更改代码中的以下任何属性都会拆除现有驱动程序并创建新的驱动程序实例:
driver.name
driver.additional.capabilities
remote.server
remote.port
例如:
getBundle().setProperty("driver.name","chromeDriver");
//do the needful
getBundle().setProperty("driver.name","anotherDriver");
//it will teardown chromedriver and create anotherDriver session in next driver call.
//do the needful
如果您想让两个驱动程序会话都处于活动状态,则自 2.1.11 以来已添加对同一线程/测试用例中的多个驱动程序的支持。要在测试用例中更改驱动程序,您可以使用setDriver(String driverName)
QAFTestBase 的方法。例如:
TestBaseProvider.instance().get().setDriver("chromeDriver");`
请参阅提交说明中的详细信息。
推荐阅读
- google-chrome-extension - 如何让我的 chrome 扩展程序启动并运行?
- php - AWS 使用 PHP 开发工具包删除文件夹中包含的所有内容
- powerbi - 使用 Power Query 或 Power BI 转换表中的 100 多个范围
- ios - 构建 Flutter iOS 应用程序时如何解决“格式错误的项目”构建错误
- python - 多变量赋值:order_item, created =
- c - IO Completion Ports 本地文件操作
- android - Expo - 某些 Android 设备上奇怪的垂直 FlatList 行为
- spring-kafka - kafka 批处理消费者如何处理长时间运行/处理记录?
- oracle - Oracle PL/SQL 更新语句永远循环 - 504 网关超时
- r - 单击 DT:: 数据表行使其他行淡出一点