首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >自动化集成测试:使用xUnit?

自动化集成测试:使用xUnit?
EN

Stack Overflow用户
提问于 2009-11-04 19:56:19
回答 3查看 4.8K关注 0票数 3

我正在研究如何最好地自动化集成测试(我指的是完全在我们的应用程序中的完整用例)

问题

很好地涵盖了“为什么”和“什么”方面。

C++应用程序与数据库的自动集成测试的问题意味着xUnit框架是创建和执行集成测试的好方法。xUnit真的很适合这个任务吗?有常见的问题需要注意吗?一个好的方法可以遵循吗?

有没有更好的方法(除了可能购买惠普/前水星工具套件)?

这个项目的具体环境是Java / SpringSource / Hibernate,但我也对.Net平台的建议感兴趣。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-11-04 20:48:41

C++应用程序与数据库的自动集成测试的问题意味着xUnit框架是创建和执行集成测试的好方法。xUnit真的很适合这个任务吗?有常见的问题需要注意吗?一个好的方法可以遵循吗?

JUnit和TestNG最初是单元测试框架,但也可以用于集成测试。因此,对我来说,答案是肯定的,它们非常适合集成测试,例如测试服务-->域>持久性-->数据库层(我稍后会讨论集成测试)。在进行涉及数据库的集成测试时,最棘手的事情之一是数据。像DbUnit这样的工具可以帮助并且通常用于在运行每个测试之前将数据库置于一个已知的状态(并对数据库内容执行断言)。另一种方法是在事务中运行测试,并在测试结束时回滚事务。Spring允许非常容易地做到这一点,单式库也是如此。无论如何,最佳实践是尽可能避免相互依赖的测试(正如您提供的链接中提到的),它们只是一场噩梦。

有没有更好的方法(除了可能购买惠普/前水星工具套件)?

据我所知,这些工具更多的是端到端的测试工具,即功能测试工具。因此,如果说集成测试(对我来说,这意味着一起测试几个组件),那么您实际上是指功能测试(这是我对完整用例的理解),那么我建议查看如下内容:

  • 用于Swing应用程序的方丈马拉松弗兰肯斯坦
  • 用于网络应用程序的iMacros黄瓜
  • Web的SoapUI

要特别注意用粗体表示的工具(所有这些实际上都是很好的工具,但我确信,用粗体表示的工具提供了良好的自动化能力)。而且,由于HTTP和SOAP是标准(当然,这不适用于Swing UI测试工具),所以这些工具实际上并不是特定于Java的(即使测试本身是用Java/Groovy为SoapUI编写的)。和BTW,硒支持许多编程语言)。

票数 3
EN

Stack Overflow用户

发布于 2009-11-04 20:07:48

多线程可能是一个问题,因为JUnit不会在其他线程中提取异常。关于这一点,有一些Java混淆器。您还需要发明自己的统计测试方法,断言方法可能有点粗糙。我还认为JUnit的语义有点不清楚(例如,JUnit每个测试方法使用一个单独的实例)。出于这些原因,我转而使用TestNG,在我看来,它是一个设计得更好的框架。JUnit是使用极端编程设计的,这一事实有时会显示出来。

票数 1
EN

Stack Overflow用户

发布于 2009-11-07 15:04:37

正如前面提到的,您可以使用xUnit框架来完成这一任务,但是如果您想要将Java和.Net、web应用程序和桌面应用程序混合起来,或者在总体图中添加一些更复杂的内容,那么您就不能只使用一个单元测试框架就可以做到这一点。因此,您需要有许多测试工具、许多测试环境、许多测试脚本开发人员(例如,一个用于Java单元测试,一个用于.Net测试).这会增加复杂性,麻烦,成本.

至于HP,您提到它应该涵盖大部分的需求。我的意思是大多数,因为可能有些地方不合适(无法通过Citrix虚拟化在应用程序上运行脚本),但在大多数情况下,它将完成这项工作。它适用于java/.net/web和其他东西(有专门用途的插件)。QTP通常对GUI对象进行操作,这样您就可以为用户用例准备测试用例,并且测试的执行方式可以是普通用户执行操作的方式(如果需要的话,您必须更快地将测试速度降低到用户的速度)。

您可能需要一个工具,一个测试环境,一个测试脚本开发人员(VB)。这是昂贵的,但如果是为了公司,这应该是更好的选择,从长远来看。

如果您从公司的角度来问,如果您决定将其用于整个测试部门/团队,它将与HP质量中心合作得很好。除非您使用IBM解决方案,否则他们有自己的工具套件作为软件交付平台(包括理性机器人 )的一部分。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1676201

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档