端到端测试框架建议
我正在进行一个新项目,希望包含端到端测试框架。 我们想要一些灵活的东西,我以前使用过 Fitnesse,我认为我们需要类似的东西。
我们也在使用 Hudson CI,并正在寻找可以轻松与其集成的东西。
有明显的赢家吗?
更新:该系统有很多组件,其中一些是在 tomcat 上运行的 Web 服务,还有一些 NoSQL 数据库,但目前不需要 UI 测试。
如果需要进一步澄清项目细节,请添加评论。
I am in a new project that is looking to include an end to end testing framework.
We want something flexible, I've used Fitnesse before and I think we need something similar to it.
We are also using Hudson CI and are looking for something that would integrate easily with it.
Is there a clear winner?
UPDATED: The system has many components, some of them are web services running on tomcat, there are a couple of NoSQL databases too, but no UI testing is required for the moment.
Please add a comment if further clarification on the project details is needed.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
机器人框架是一个很好的关键字驱动测试框架,我们用它来进行端到端集成测试。
http://code.google.com/p/robotframework/
有一个 jenkins 插件(hudson 的一个分支)非常有用。 据说也可以与 Hudson 配合使用。
The robot framework is a good keyword driven testing framework that we use for end to end integration testing.
http://code.google.com/p/robotframework/
There is a plugin for jenkins (a fork of hudson) that is very useful. It reportedly works with hudson as well.
很高兴您决定开始使用 Robot Framework。它的 Hudson 插件最近已经变得更好了(趋势图,可以直接从 Hudson 获得,...)并移动到新的地方:
http://wiki.hudson-ci.org/display/HUDSON/Robot +框架+插件
Great to read you have decided start using Robot Framework. Its Hudson plugin already has recently got much better (trend charts, available from Hudson directly, ...) and moved to new place:
http://wiki.hudson-ci.org/display/HUDSON/Robot+Framework+Plugin
当您说您想要一个端到端的测试框架时,您能更具体一些吗?您正在开发什么类型的应用程序(独立的、基于 Web 的、Web 服务...)?你用什么语言编程?
我还会在您的团队或您的团队周围(例如其他团队)寻找以前的知识。使用 TestNG 或 JUnit 可能就足够了(我看过一篇关于使用 JUnit 进行 UI 测试的旧论文)。几乎所有测试框架都应该适合 Hudson,只要它们可以以无头/脚本模式启动,并且它们以 Hudson 理解的格式提供结果(在最坏的情况下 HTML 就足够了,尽管 Hudson 只能以显示页面)。因此,如果您有可用的 IBM Monitoring 工具,您可能需要查看 Rational Function Tester 或 Rational Performance Tester。
FitNesse 是一个很好的功能测试工具。业务联系人可以自己创建测试用例(开发人员必须提供一些连接器代码),这将提高可见性并减轻测试工程师的一些工作。缺点是你无法真正进行 UI 测试。如果您需要一个开源的 UI 平台,请查看 seam。尽管我喜欢 OSS 哲学,但您可能需要更长的启动时间(更高的成本),并且可能需要更多的 OSS 维护时间(并非所有 OSS 都如此)。无论如何,请检查获得对您的框架的支持是否容易。您甚至可以考虑为您的框架提供付费支持(无论是开源还是闭源)。另外不要忘记,即使您可以自己修复 OSS 源代码,您也可能没有修复错误或添加功能的专业知识或时间。
因此,请向我们提供更多信息,我们可以为您提供更好的建议。
Can you be more specific, when you say, you want to have an end-to-end testing framework? What kind of application are you developing (standalone, web based, web service, ...)? What language do you program in?
I would also look for previous knowledge in your team or around your team (e.g. other teams). It might be sufficient, to use TestNG or JUnit (I have seen an old paper on UI testing using JUnit). Almost all test frameworks should be fine for Hudson, as long as they can be started in a headless/scripted mode and if they provide the results in a format that Hudson understands (in the worst case HTML is sufficent, though Hudson will only be able to display the pages). So if you have IBM Monitoring tools available, you might want to look at Rational Functional Tester or Rational Performance Tester.
FitNesse is a good tool for functional testing. The business contacts can create the test cases by themselfs (developers have to provide some connector code), which will create more visibility and removes some work from the test engineers. Drawback is, that you can't really do UI testing. If you need a open source plattform for UI, have a look at seam. Even though I like the OSS philosophi, you might need longer ramp up time (higher costs) and possibly more maintainace time for OSS (not true for all OSS). In any case, check how easy it is to get support for your framework. You might even consider paid support for your framework (regardless if open or closed source). Also don't forget, even though you can fix OSS source yourself, you might not have the expertise or time for fixing bugs or adding features.
So give us more info and we can give you better advices.
我对 jBehave 的体验非常好。推荐。
它基于 BDD - 行为驱动开发。
My experience with jBehave is very good. Recommend.
It's based on BDD - Behavior Driven Development.