|
|
1
5
你可以记住( http://en.wikipedia.org/wiki/Memoization )外部过程。用Ruby编写一个包装器,计算输入文件的md5和,并将其与已知校验和的数据库进行核对。如果它与一个匹配,请复制到正确的输出;否则,正常调用该工具。 |
|
|
2
3
测试到你的极限。在您的情况下,边界是您构造的调用外部程序的命令行(您可以通过monkey补丁捕获)。如果你把自己粘到该程序的stdout(或通过读取文件来处理其结果),那就是另一个边界。测试是你的程序是否可以处理这个“输入”。 |
|
|
3
3
|
|
|
4
2
|
|
|
5
1
然后是第二级测试,它可能是自动化的,也可能不是自动化的(最好是自动化,但这取决于它是否实用),它是在功能级别调用真正的实用程序,这样你就可以看到你打算通过的测试和你预期得到的测试与实际发生的情况相匹配。
|