我们正在使用java开发一个数据量很大的模块化Web应用程序堆栈,但对测试几乎没有专业知识。我们目前所做的是使用JUnit运行单元测试和功能测试的混合。我更详细地描述了这个问题here。
现在我们决定在如何测试我们的模块和应用程序的早期设置标准,因此我们需要阅读一般的测试的原则和最佳实践,特别是在java spring环境中
我想要涵盖的是从单元测试到情景测试的各种测试背后的定义,用例和推理,或谷歌称之为:小型,中型,大型测试。就像我说的,我们正在开发一个数据量很大的Web应用程序。
我希望能够从书中推断我们的应用程序的相应级别(核心,数据库访问,安全模块,实体管理器,以及每个测试阶段有多么必要和有用)网络模型,网络控制器,网络视图)
如果书中的示例直接适用于我们的应用程序堆栈,那将是很好的。我们使用spring,JPA(休眠),JSF,spring security。到目前为止测试我们使用的是基本的Junit和一些powermock。因此,JBOSS,Seam或Java Enterprise书籍并不那么有用。
如果网上有精彩的文章描绘了一幅清晰的图片并且确实提供了帮助,请随意分享这些文章(我可以自己使用google,SO和wiki,所以请只阅读你真正阅读过的文章并且非常认真有用)但是一本书会很好,所以我可以从基础知识中读出来,而不必从各种文章和问题中将它们拼凑起来。
谢谢!
编辑 - 我们订购的图书
刚开始阅读Growing object oriented software guided by tests,我已经非常喜欢了。不是针对初学者,而是展示如何使用敏捷技术开发测试。真正清理旧的软件开发思路。
我们还命令xUnit Test Patterns: Refactoring Test Code了解如何最好地对应用程序堆栈中的不同区域进行单元测试。得到这个推荐两次,所以我希望它会有所帮助。
答案 0 :(得分:5)
查看this answer下的资源。我强烈推荐前三本书,前两本直接解决你的"等级"的问题。第一个更侧重于特定工具,而第二个更具概念性。
答案 1 :(得分:4)
图书推荐:JUnit Recipes - Practical Methods for Programmer Testing
你正在使用Spring,查看弹簧测试,它提供了一些很棒的设施,Spring Testing
答案 2 :(得分:0)
讨厌给你一个答案的片段(因为你说你想要一个可靠的指南),但我无法推荐任何书籍。最佳实践应该涉及TDD。它很有趣,但它可以帮助回归,并在那些特殊的快速需求变化出现时(当你知道你有一个可靠的代码库时)缓解思想。
此外,您可能想知道BDD(Bean Driven Development)是否适合您。我提到这个,因为你可能不会在你的搜索中偶然发现它。优点包括从英语到测试用例的翻译,以根据目标证明测试场景。这使您,您的测试人员甚至您的产品所有者可以轻松地将测试与您的要求相关联: