我们有一个案例,我们正在测试摇摆应用程序。我们有一个QA人员,他到目前为止正在对应用程序进行手动测试。现在我们已经意识到手动测试需要花费很长时间才能重复,因此需要花时间使用Fest对我们的UI进行自动测试。
硬币的另一面是测试数据库数据。在GUI中执行一些步骤后,我们需要检查数据库中是否存在我们期望的数据。
由于这是一个为我们编写这些单元测试的QA人员,我们希望通过提供某种框架来尽可能简化它。
是否有某种框架可以针对我们拥有的数据测试数据库?与JUnit的断言一样,与预期和实际相似。
基本上我们正在寻找具有以下功能的框架:
答案 0 :(得分:3)
Dbunit看起来像是一个解决方案。
DbUnit还可以帮助您验证数据库数据是否与预期的值集匹配。
答案 1 :(得分:2)
这似乎是DBUnit
的用例答案 2 :(得分:1)
您可能还想将FitNesse视为一种易于使用的工具。虽然您可能需要在幕后投入更多时间来创建测试夹具,但它将是一个易于使用的测试工具。见http://fitnesse.org/
答案 3 :(得分:0)
我们最近遇到了类似的情况,并最终选择了我们自己的框架。我们基于优秀的scala specs library(它也适用于JUnit的跑步者)。您的案例的主要区别可能是,我们的QA人员有一点编程背景,我们在同一框架内编写了更多涉及的测试案例。
但是,为了涵盖您的主要功能,中心思想是定义用于测试数据的特定于域的语言。这使得它很容易用于QA(在学习如何使用该语言的初始开销之后,可用的语言等)。
更具体地回答您的要点:
Scala在XML方面表现非常出色。无需解析器代码,样板代码减少到最少。自己编写XML-Database-Comparator并通过DSL提供对它的访问,然后QA可以简单地编写XML片段以在数据库中进行检查。
与上述相同。您自己提供比较器,因此可以直接确保比较。
Scala适用于Java,因为它编译为Java字节码。您可以重用所有现有的Java代码来创建DSL,甚至让测试代码访问它。
我们的主要优点是我们可以重用Hibernate数据模型来对数据模型执行更多涉及的测试,我们仍然可以像往常一样访问所有Java代码,即使对于非程序员来说,DSL也很容易阅读。 (后者派上用场,当你试图解释一些经理类型的东西实际上在做什么。)