最近我们一直在为现有的Java应用程序添加自动化测试.
我们有什么
这些测试中的大部分都是集成测试,可能会覆盖一堆调用,如: -
然后,我们验证servlet是否使用正确的XML进行响应,并且数据库中存在正确的行(我们的开发Oracle实例).然后删除这些行.
我们还有一些较小的单元测试,用于检查单个方法调用.
这些测试都是我们夜间(或adhoc)构建的一部分.
问题
这似乎很好,因为我们正在检查系统的边界:一端是servlet请求/响应,另一端是数据库.如果这些工作正常,那么我们就可以自由地重构或混淆其中的任何东西,并且有信心被测试的servlet继续工作.
我们可能会遇到哪些问题?
我看不出如何在单个类上添加更多单元测试会有所帮助.难道这不会让重构变得更难,因为我们更有可能需要抛弃并重新编写测试吗?