如何将Capybara功能测试标记为待处理?

typ*_*ror 10 ruby ruby-on-rails capybara

我希望这些测试不会"失败",但会被标记为待定.也许我没有专门为Capybara使用待定或正确的指令?

feature 'Tenant Scoping ' do

  scenario "displays only Tenant A's things" do
    pending
  end

  scenario "displays only Tenant B's things" do
    pending
  end

end
Run Code Online (Sandbox Code Playgroud)

这是运行时的输出:

Tenant Scoping
  displays only Tenant A's things (FAILED - 1)
  displays only Tenant B's things (FAILED - 2)

Failures:

  1) Tenant Scoping  displays only Tenant A's things FIXED
     Expected pending 'No reason given' to fail. No Error was raised.
     # ./spec/features/tenants/scopingtest_spec.rb:3

  2) Tenant Scoping  displays only Tenant B's things FIXED
     Expected pending 'No reason given' to fail. No Error was raised.
     # ./spec/features/tenants/scopingtest_spec.rb:7

Finished in 0.04047 seconds (files took 1.62 seconds to load)
2 examples, 2 failures
Run Code Online (Sandbox Code Playgroud)

Phi*_*hil 14

只需将'scenario'替换为'xscenario'即可.

唯一的缺点是它会将整个功能标记为待处理,而不是每个单独的规范.我还没有找到办法解决这个问题.


Dyl*_*kow 10

从RSpec 3开始,未决示例如果通过则被视为失败.尝试使用skip而不是pending完全跳过这些规范.

有关详细信息,请参阅RSpec 3中的显着更改.

  • 可能是我遗漏了一些东西,但这对我不起作用.这些不是规格,它们是功能.如果用"skip"替换OP代码中的"pending",它将不会跳过该场景.@typeoneerror,你有没有按照你想要的方式工作? (3认同)