快速业务通道

诊断Java代码: 进行记录器测试以正确调用方法 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-19
g = new Greeter(r);    Sender s = new Sender(r);    Coordinator c = new Coordinator(s, g);    c.start();    c.join();    assertEquals("sayHello();sendFirstMessage();sendSecondMessage();           sayGoodbye();",r.playBack()); }

由于我们已经将消息保存为简单的 String 型变量 s,检查 playBack 的内容的测试就很简单:只要写出正确的 String ,然后与之对照检查就可以了。

另一方面,如果我们已经使用了一个较复杂类型的对象,我们不得不为这些对象中的每一个都构造一个同样的实例,并重述所有记录过的实例,检查它们之中每一个的等同性。另外,这还需要我们为记录过的对象的每个类写一个 equals 方法。

像这样的话,一次测试要做很多工作。我不知道您怎么样,但是我宁愿把时间花在写更多较简单的测试上(设计代码使得它们更容易),而不愿为我的测试写基础结构的代码。

这两种方法间的一个折衷是制作另一个 Recorder ,它可以存储非常复杂的数据,但有一个简单的 toString 方法可用来测试,就如上面提到的那个。于是,较复杂的数据可用于其他的测试,检查调用序列的详细属性。

准备好测试

用 Recorder 进行测试的思想可应用到许多类型的测试中:

除检查调用的简单顺序之外,记录器可在分布环境中使用,确保通信中不同的不变量在相互通信过程中保持不变。

记录器也可用来和 GUI 一起确保响应各种预期的用户操作。

简而言之,记录器提供了一种测试组件集合体的方法,它比大多数单元测试覆盖的范围大,但还是比整个系统小。我希望您能和我一样,觉得它有用。

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号