3

我们在 Java 中为 Selenium 创建了一些测试框架,并为我们的测试考虑测试数据管理。

我们已经实现了 Page Objects 类,Tasks 类在更高级别的方法中对 Page Object 动作进行分组,Tests 类(jUnit)扩展了一些 BaseTest 类。

目前,我们没有将测试数据存储在一些单独的属性文件中。如果我们可以/应该将测试数据放在页面对象中但找不到答案,我试图找到任何建议。目前,我们在测试中将测试数据存储在变量中。我们使用变量,例如

private final static String SOME_DATA ="value";

我们可以在给定 TestClass 的测试中重用它,但是如果我们在另一个测试类中需要它,我们必须在那里重复它。

我们不想将测试数据放在 BaseTest 类中,因为它会随着时间显着增长。

4

2 回答 2

2

对于分布在所有测试用例中并且在运行时不会更改的数据,我会推荐一个常量类。我使用一个常量类来存储测试帐户的所有 URL、用户名和密码,以及各种其他全局数据。

但是,如果常量在运行时发生变化,或者仅适用于一小部分测试/类,则常量不是常量。

于 2013-10-29T13:47:28.860 回答
1

测试数据可以在页面对象中使用,但可能不是一个好的编码习惯,就像 MrTi 所说的最好的方法应该是使用常量。我使用页面对象模式已经有一段时间了,我有一个名为 Constants 的完整包,其中有 ConstantsUrl 、 ConstantsConfig 、 ConstantsCredentials .. 但是,如果有需要更改的数据,我通常使用输入文件(.txt、.csv) . 希望这可以帮助!

于 2013-12-04T17:15:20.213 回答