我的应用程序有一个自定义服务器组件。如何重新使用集成测试的单元测试
我们有一些JUnit测试用例,用于模拟数据库层的JMockit。
对于集成测试,我们最终有很多类似的条件来检查。唯一的区别是,我需要序列化的东西,并发送到套接字,而不是只是打电话。
是否有任何(简单)的方式来概括测试,以便我可以为这两个测试指定一次这些条件?
我的应用程序有一个自定义服务器组件。如何重新使用集成测试的单元测试
我们有一些JUnit测试用例,用于模拟数据库层的JMockit。
对于集成测试,我们最终有很多类似的条件来检查。唯一的区别是,我需要序列化的东西,并发送到套接字,而不是只是打电话。
是否有任何(简单)的方式来概括测试,以便我可以为这两个测试指定一次这些条件?
您可以将规则添加到您可以从集成测试和单元测试引用的文件中。
你应该把它写在某种特定领域的语言,可以通过非技术性风险承担者阅读,但也可以解析,如:
discount: 10% for: orders over $10
discount: 20% for: orders over $40
discount: 30% for: orders over $100
> Is there any (simple) way to generalize the tests so that I can
> specify those conditions once for both tests?
你可以把测试分为一个基类使用构建辅助对象的虚拟FactoryMethod。
你的unittest和integrationtest继承自那个类。 FactoryMethod的实现可以创建一些模拟对象或一些真实对象。
你的单元和集成测试只是需要应用stattdard概念的主码流的另一块代码。因此,像编写可重用代码,使用设计模式,编码到接口以及最终持续重构等事情对于测试也同样适用。
继SO线程有更多的建议:
希望有所帮助。
+1好问题 – Nilesh 2011-05-25 14:48:10