clojure.spec 打算在多大程度上取代传统的功能自动化测试?
To what extent is clojure.spec intended to replace traditional functional automation testing?
随着有关 Clojure 1.9 中新 clojure.spec 功能的截屏视频和博客开始出现,越来越明显的是 clojure.spec 能够做很多以前由更多人执行的风险缓解工作"traditional" 自动化测试库,例如 clojure.test、midje、speclj 和 test.check。
是否打算在 clojure.spec 中复制 clojure.test 的功能?如果您今天开始在 Clojure 1.9+ 下构建一个 运行 的新应用程序,您是否会搁置我上面列出的测试库,而仅依靠 clojure.spec 来获得类似的信心围绕您应用的行为?
Is the intent that the capabilities of clojure.test will be essentially replicated within clojure.spec?
- 不,clojure.test 的功能不会在 clojure.spec
中复制
- 基于示例的测试和生成测试是针对不同需求的不同工具,尽管存在重叠
If you were starting to build a new app today to run under Clojure 1.9+, would you be setting aside the testing libraries I listed above and instead relying solely on clojure.spec to give you a similar level of confidence around your app's behaviour?
- 我将在大多数项目中同时使用(并建议)基于示例的测试和生成式测试
- 但是,我认为将基于示例的测试套件与 clojure.spec
结合使用时,基于示例的测试会少得多
Why not all clojure.spec? (implied)
- 有些东西很难规范
- 有些东西很难为
编写生成器
- 在文件中包含示例 input/output 对于刚刚阅读代码的人来说很好
- 单元测试在大多数成熟的项目中都非常受欢迎
- 还有更多
稍微偏离主题,但只是友好地提醒一下,clojure.spec 比减少项目中的单元测试用例的数量更有用。
随着有关 Clojure 1.9 中新 clojure.spec 功能的截屏视频和博客开始出现,越来越明显的是 clojure.spec 能够做很多以前由更多人执行的风险缓解工作"traditional" 自动化测试库,例如 clojure.test、midje、speclj 和 test.check。
是否打算在 clojure.spec 中复制 clojure.test 的功能?如果您今天开始在 Clojure 1.9+ 下构建一个 运行 的新应用程序,您是否会搁置我上面列出的测试库,而仅依靠 clojure.spec 来获得类似的信心围绕您应用的行为?
Is the intent that the capabilities of clojure.test will be essentially replicated within clojure.spec?
- 不,clojure.test 的功能不会在 clojure.spec 中复制
- 基于示例的测试和生成测试是针对不同需求的不同工具,尽管存在重叠
If you were starting to build a new app today to run under Clojure 1.9+, would you be setting aside the testing libraries I listed above and instead relying solely on clojure.spec to give you a similar level of confidence around your app's behaviour?
- 我将在大多数项目中同时使用(并建议)基于示例的测试和生成式测试
- 但是,我认为将基于示例的测试套件与 clojure.spec 结合使用时,基于示例的测试会少得多
Why not all clojure.spec? (implied)
- 有些东西很难规范
- 有些东西很难为 编写生成器
- 在文件中包含示例 input/output 对于刚刚阅读代码的人来说很好
- 单元测试在大多数成熟的项目中都非常受欢迎
- 还有更多
稍微偏离主题,但只是友好地提醒一下,clojure.spec 比减少项目中的单元测试用例的数量更有用。