我正在开发gem,并且在lib / spec目录中有单元测试。目前,我使用rspec lib/spec
手动运行单元测试。然后,我使用gem build mygem.gemspec
(可生成 .gem 文件)来构建gem。
如何与gem build命令一起运行单元测试? (就像我们如何使用npm进行生产构建一样)
答案 0 :(得分:3)
如果您的构建过程包含多个任务(例如,测试,创建gem,发布gem),并且在这些任务之间具有依赖关系(例如,仅在测试成功的情况下才应创建gem,以便发布gem,首先需要创建它),您可以使用构建工具来自动执行。
实际上,构建工具的用途不仅仅在于构建,这就是为什么有些人更喜欢术语“面向任务的编程”或“我个人的喜好”面向依赖的编程的原因。 / em>。
此类面向依赖的编程工具中最著名的可能是make
。如果您熟悉Java生态系统,您可能知道Apache Ant和Gradle。在Microsoft世界中,有Microsoft Build Engine (MSBuild)。从ECMAScript生态系统中,您可能知道Grunt或Gulp。热门的新手是Google的Bazel。
Ruby也有自己的这种工具,其中使用最广泛的是Rake。
许多Ruby库和工具都带有它们自己的现成的Rake任务,因此您不必自己编写它们。例如,对于您的特定用例,有一些现成的任务可用于构建gem和运行RSpec测试。