selenium - 针对跨多个浏览器的 Selenium 测试的自动化测试套件包结构的建议

标签 selenium unit-testing testing automated-tests

因此,我可以使用一两个关于如何构建我的自动化测试包最有意义的建议(它是基于使用 Selenium 2.4.5 的 Java)。

我想到了两个主要选择:

root 测试目录 -> 浏览器目录 -> 测试目录 -> java 中的测试类

root 测试目录 -> 测试目录 -> 浏览器目录 -> java 中的测试类

我只是还没有真正进行足够多的实验,无法知道基于浏览器或测试类型运行测试是否更有用。例如,我可以看到运行所有 IE 测试来验证某些东西的好处,但我也可以看到运行所有基于“登录”或“注册”的测试的有效性,所以我希望有人真正实现并使用了它更多可以让我了解什么对他们有用。

最终目标:设置构建变体以针对多个不同的环境(开发、集成、暂存和生产)和多个不同的浏览器选项(chrome、firefox,即 opera、safari、或全部)当推送提交并且 Jenkins 作业完成部署时。

最佳答案

我们已经实现了 PageObject建模成功。 PageObject 模式可能是最流行的处理责任和关注点分离的方式。简而言之,您为每个页面和测试创建单独的对象,以便明确分离关注点。众所周知,在早期开发中控制 UI 是 UI 测试的挑战,而这种模式提供了一种通过仅修改页面对象而不是更改所有内容来处理整个框架的方法。

此外,可以使用 TestNG 等测试框架轻松控制多浏览器功能。我有一个公共(public) Github 存储库 here

关于selenium - 针对跨多个浏览器的 Selenium 测试的自动化测试套件包结构的建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30956601/

相关文章:

java - @BeforeClass 注释在动态创建的测试套件中不起作用

java - 以恒定单位添加日期之间的差异

java - 无法在 selenium webdriver 中获取 mozilla 中的 URL

Selenium 一次多个选项卡

java - 页面未被驱动

ios - 如何在多个 OCUnit 测试用例之间共享代码?

java - 无法在 Eclipse 中使用 gradle 运行 cucumber 功能文件。我收到 "Error: Could not find or load main class cucumber.api.cli.Main"错误

java - Selenium -org.openqa.selenium.WebDriverException : b is null

unit-testing - sqlite:我可以模拟当前时间“now()”进行测试吗?

java - 在 Spring boot 测试中,如何创建一个 bean 并通过 @Autowired 注入(inject)?