【问题标题】:Adding rspec to command line Ruby program将 rspec 添加到命令行 Ruby 程序
【发布时间】:2015-07-14 17:06:39
【问题描述】:

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

$ ruby​​ 处理器.rb

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

非常感谢任何帮助。从表面上看,这可能与this question 相似,但这些答案都不是我想要的。

【问题讨论】:

  • 按照惯例,您将创建一个目录spec,并在其中创建processor_spec.rb;但这不是法律。
  • 您可以使用aruba-rspec 桥接 RSpec 和 Aruba/ArubaDoubles 来测试命令行工具

标签: ruby command-line rspec stdout


【解决方案1】:

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

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-10-27
    • 1970-01-01
    • 1970-01-01
    • 2015-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多