Unit testing 跨多个Broswer进行硒测试的自动化测试套件包结构建议

Unit testing 跨多个Broswer进行硒测试的自动化测试套件包结构建议,unit-testing,selenium,testing,automated-tests,package-structuring,Unit Testing,Selenium,Testing,Automated Tests,Package Structuring,因此,对于如何构造我的自动化测试包(它是基于java的,使用Selenium 2.4.5),我可以使用一两条建议来说明什么是最有意义的 我想到了两个主要的选择: java中的根测试目录->浏览器目录->测试目录->测试类 或 java中的根测试目录->测试目录->浏览器目录->测试类 我只是还没有做过足够的实验来知道,能够运行基于浏览器的测试或者类似的测试是否更有用。例如,我可以看到运行所有IE测试来验证某些东西的好处,但我也可以看到运行所有基于“登录”或“注册”的测试的有效性,所以我希望实际实

因此,对于如何构造我的自动化测试包(它是基于java的,使用Selenium 2.4.5),我可以使用一两条建议来说明什么是最有意义的

我想到了两个主要的选择:

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

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

我只是还没有做过足够的实验来知道,能够运行基于浏览器的测试或者类似的测试是否更有用。例如,我可以看到运行所有IE测试来验证某些东西的好处,但我也可以看到运行所有基于“登录”或“注册”的测试的有效性,所以我希望实际实现并使用更多这些测试的人能够告诉我什么对他们有效

最终目标:具有构建变体设置,可在多种不同环境(开发、集成、登台和生产)下运行,并具有多种不同的浏览器选项(chrome、firefox、ie、opera、safari或全部)当提交被推送到Jenkins作业完成部署时。

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


此外,多浏览器功能可以通过TestNG等测试框架轻松控制。我有一个公共的Github repo,测试应该是普遍开发的,这样当为一个浏览器编写时,它将适用于所有浏览器和所有环境。这样,您只需要在resources/CLI中处理不同浏览器/环境的属性/数据,包表示的问题就会自行解决

您还将在套件中组织测试,在这里您可以为您需要的每个设置创建大量测试


因此,包结构与多浏览器测试没有什么关系,它只是为了您的方便。

注释的使用非常好。谢谢。很多人使用相同的模式