例如,RCF库支持一种编程风格,其中测试与源代码一起写入,并在评价测试形式时(例如如果文件被重新加载)始终运行,以提供快速的反馈和更好的测试和示例的局部性 - 简小的示例测试与代码并排,并且与注释
块不同,风险较低的与代码库不同步。
这种方式,封装在with-tests
、deftest
和set-test
中的形式将在它们的测试执行时运行测试。
这不适合长时间运行或重量级测试,因此具有可为每个命名空间设置的动态变量似乎是个不错的解决方案。
RCF通过在测试形式末尾始终添加对test-var的调用来实现这一点
例如:
(when *run-tests* `(test-var (var ~name)))
然后与代码一起编写的测试将在代码加载时自动运行,并立即提供反馈
另一种选择:使用tools.namespace
你的想法呢?