【发布时间】:2020-11-06 16:35:21
【问题描述】:
我正在构建一个应该支持在 Android、iOS 和 Web 上执行测试的测试框架。由于应用程序很复杂,有许多测试用例(1000+),其中一个要求是能够并行执行(这里应该包括只需要单个设备的测试),还具有父子行为的测试(聊天应用程序 - SMS 从设备“A”发送到设备“B”)。我打算将 POM 与 PageFactory 一起使用。
所以这里是我对如何做到这一点的初步想法:
- 在套件中使用 CLI 在 android/ios 上安装应用程序
- 在testng.xml中提供设备相关参数如udid、platform、os等...
- 在扩展所有测试的 BaseTest 中的 beforeMethod 中 - 初始化驱动程序(android、ios 或 web (chrome、ff...))
- AfterMethod 退出驱动程序(我也可以在测试级别使用 before/after 方法)
优点: 在每次测试之前易于管理驱动程序实例的创建, 可管理的顺序(父子)测试执行(在 testng.xml 我可以指定父子方法) 易于管理的并行执行。
缺点: 在每个测试方法之前创建一个驱动程序的实例会很耗时, 如果一个测试执行登录,而下一个测试需要发送短信,由于 beforeMethod 中的驱动程序初始化,我需要再次执行登录(代码重复)。
您能否建议或指出一个可以支持所有提到的要求的框架。 我应该使用硒网格吗?
非常感谢任何帮助:)
【问题讨论】:
标签: java selenium-webdriver parallel-processing testng appium