将 rspec 添加到命令行 Ruby 程序

Adding rspec to command line Ruby program

我正在做一个编码挑战,有一个简单的 1 文件 ruby 程序(例如 processor.rb),它通过命令行上传递的文件接受参数,如下所示:

$ ruby processor.rb < inputs.txt

我完全不知道如何实施测试(我习惯于在 Rails 应用程序中准备好一切)。我是否将它们添加到同一文件 (processor.rb)?我是否创建一个单独的测试文件并 运行 使用单独的命令?

非常感谢任何帮助。从表面上看,这似乎与 this question 相似,但其中 none 正是我要寻找的答案。

有几种方法可以做到这一点,但这就是我所做的。 运行 rspec --init 在项目的顶级目录中,这将创建一个包含 spec_helper.rb 文件的 spec 目录。它还会在您的顶级目录中创建一个 .rspec 隐藏文件,当 运行 rspec.

时,它将自动需要您的助手

然后您可以开始在 spec 目录中创建 spec 文件。按照惯例,文件被命名为 <subject>_spec.rb。例如,如果您有一个名为 FileTree 的 class(因此有一个名为 file_tree.rb 的文件),则相应的规范文件将为 file_tree_spec.rb.

您可以在目录中组织规格 - 这没有区别。但是,我倾向于模仿我正在测试的代码的结构。