端到端测试框架建议
Posted
技术标签:
【中文标题】端到端测试框架建议【英文标题】:End to end testing framework recommendations 【发布时间】:2011-05-11 22:54:32 【问题描述】:我在一个新项目中,希望包含端到端测试框架。 我们想要一些灵活的东西,我以前用过 Fitnesse,我认为我们需要类似的东西。
我们也在使用 Hudson CI,并且正在寻找可以轻松集成的东西。
有明确的赢家吗?
更新:系统有很多组件,其中一些是运行在 tomcat 上的 Web 服务,还有几个 NoSQL 数据库,但暂时不需要 UI 测试。
如果需要进一步说明项目细节,请添加评论。
【问题讨论】:
总结一下您的系统:您现在将 Web 服务作为与外界的唯一接口。这是正确的吗? 是的,还有一个旧版 Web 界面,但我们打算替换它,不打算用这个框架对其进行测试 有什么理由不适合 FitNesse?你说你以前用过它,你想要类似的东西。 我的团队负责人似乎不太相信使用它,而且距离我上次使用它已经有一段时间了,所以我想了解其他人一直在使用什么。如果是我打来的电话,那应该是 FitNesse 和 Robot 之间的电话。 【参考方案1】:机器人框架是一个很好的关键字驱动测试框架,我们用于端到端集成测试。 http://code.google.com/p/robotframework/
有一个plugin for jenkins(hudson 的一个分支)非常有用。它reportedly 也适用于哈德森。
【讨论】:
终于用这个了。会看看情况如何,但到目前为止看起来还不错。【参考方案2】:很高兴您决定开始使用 Robot Framework。它的 Hudson 插件最近已经变得更好了(趋势图,可直接从 Hudson 获得,...)并移至新位置: http://wiki.hudson-ci.org/display/HUDSON/Robot+Framework+Plugin
【讨论】:
这是个好消息。我们仍在开始创建我们的基本集成功能并编写我们的第一个测试用例,但我肯定会在某个时候将它与我们的 Hudson 构建集成。我正在保存链接。【参考方案3】:您能否更具体一点,当您说您想要一个端到端的测试框架时?您正在开发什么样的应用程序(独立的、基于 Web 的、Web 服务……)?你用什么语言编程?
我还会在您的团队或您的团队(例如其他团队)中寻找以前的知识。使用 TestNG 或 JUnit 可能就足够了(我看过一篇关于使用 JUnit 进行 UI 测试的旧论文)。几乎所有的测试框架都应该适合 Hudson,只要它们可以在无头/脚本模式下启动,并且如果它们以 Hudson 理解的格式提供结果(在最坏的情况下 html 就足够了,尽管 Hudson 只能显示页面)。因此,如果您有可用的 IBM Monitoring 工具,您可能希望查看 Rational Functional Tester 或 Rational Performance Tester。
FitNesse 是一个很好的功能测试工具。业务联系人可以自己创建测试用例(开发人员必须提供一些连接器代码),这将创建更多的可见性并免除测试工程师的一些工作。缺点是,你不能真正进行 UI 测试。如果您需要 UI 的开源平台,请查看 seam。尽管我喜欢 OSS 的理念,但您可能需要更长的启动时间(更高的成本),并且可能需要更多的 OSS 维护时间(并非所有 OSS 都如此)。无论如何,请检查获得对您的框架的支持是多么容易。您甚至可以考虑为您的框架提供付费支持(无论是开源还是闭源)。另外不要忘记,即使您可以自己修复 OSS 源代码,您也可能没有专业知识或时间来修复错误或添加功能。
所以给我们更多的信息,我们可以给你更好的建议。
【讨论】:
【参考方案4】:我对@987654321@ 的体验非常好。推荐。
它基于 BDD - Behavior Driven Development。
【讨论】:
以上是关于端到端测试框架建议的主要内容,如果未能解决你的问题,请参考以下文章