rspec是否可以打印出对shared_example的调用的文件路径/行号,而不是shared_example的文件/行?

时间:2019-04-12 18:40:03

标签: ruby rspec

我目前正在构建一个Jenkins管道,该管道每晚将运行数千个测试,然后根据套件中每个文件运行所花费的时间,将我们的测试分为N组,每组将以相同的数量运行时间。这样做的目的是优化白天的构建时间,以便同时并行旋转的所有kubernetes容器同时完成。 (本质上是用于Rspec测试的Pod之间的自动测试分配器)

我当前正在使用--format json命令运行rspec并将其写入文件。这会将我需要的所有相关信息写到一个json文件中,然后我将阅读该文件并在下一阶段用于创建测试分发配置文件。此问题的输出的相关部分如下所示:

    {
      "description": "responds with created",
      "full_description": "ProgramController POST 'create' when user is logged in when adding a program responds with created",
      "status": "passed",
      "file_path": "./spec/support/common_api_spec_examples.rb",
      "line_number": 29,
      "run_time": 0.355501,
      "pending_message": null
    },

棘手的事情是,虽然'expect'语句位于./spec/support/common_api_spec_examples.rb中,但实际上并不是测试所在的位置-实际测试位于其他文件中,并通过使用{来调用支持方法rspec的{1}}功能。

如何配置rspec以打印出实际include_examples调用的文件路径/行号,而不是支持规范类的文件路径?那有可能吗?

0 个答案:

没有答案