我正在寻找可用于自定义集合的测试。理想情况下,这些是行为测试。
例如,实现一个新的Map
我想测试它是否遵循所有必需的Map
- 规则和
map
,filter
,view
等方法
Scala用什么来测试自己的集合?
答案 0 :(得分:2)
这是一个很好的问题,之前曾在SO上提出过。
在test/files/scalacheck
下有一些集合测试,在源代码库中有test/files/run/*coll*
下的其他集合测试。
自定义集合没有一致性测试或TCK本身。与集合集成通常涉及特定的实现要求。
例如,immutable.MapLike
的ScalaDoc会告诉您实施get
,iterator
和+
以及-
。理论上,如果您测试模板方法,您可以依赖从库中免费获得的所有内容。
但是文档补充道:
覆盖foreach和size的方法也是个好主意 效率
因此,如果您关心这一点,您也将添加性能测试。标准库不包括自动性能测试。