我需要测试一下朴素字符串搜索算法。http://en.wikipedia.org/wiki/String_searching_algorithm
有人能解释一下我该如何处理这个问题吗?
我的测试应该只测试外部行为吗?(即,模式发生索引与所使用的算法无关?)
或者我应该是算法特定的和测试驱动算法特定的实现?
发布于 2012-07-11 01:33:59
或者我应该是算法特定的和测试驱动算法特定的实现吗?
这在很大程度上取决于如何使用您的类。测试公共契约通常是可行的(为此编写像样的测试是相当容易的),所以除非您的客户能够以某种方式使用实现细节知识,否则我将坚持这一点。
请注意,在纸上有特定的算法可以帮助确定一些基本的测试,而不需要编写严格的实现相关测试,例如:
这将为您提供更多特定于实现的测试的基本入口点。请记住,利用data driven testing可以帮助您完全避免拥有实现级知识的需要,并且具有足够大的数据集可能也足以验证算法的正确性。
https://stackoverflow.com/questions/11418003
复制相似问题