2

rspecとpageオブジェクトに問題があります。私は持っています

 cell(:balance_type_tab_element, :id => 'a')

その後、私は

def check_all
  check_navigation_to_and_from_balance_page
  check_printer_friendly_link
end

そして私も持っています

def check_allocation_by_balance_type
  balance_type_tab?
  puts "found tab"
  puts balance_type_tab_element.visible?
  balance_type_tab_element.visible?.should be_true
end

def check_navigation_to_and_from_balance_page
  //some other checks
  check_allocation_by_balance_type
end

次に、ステップファイルで

on_page(ParticipantBalanceDetailsPage).check_all

しかし、私はエラーNameErrorを受け取り続けます:未定義のローカル変数またはメソッド `be_true '

グーグルを試しましたが、今のところ運が悪いので、誰か助けてくれませんか?

4

1 に答える 1

6

さまざまなマッチャー メソッドがすべてのコンテキストで自動的に使用できるわけではありません。を呼び出すときは、メッセージを にbe_true送信していることを考慮してください。すべてのマッチャーをすべてのコンテキストで利用できるようにするには、RSpec はすべてのマッチャー オブジェクトをシステム内のすべてのオブジェクトに追加する必要がありますが、これはひどい考えです。be_trueself

このコンテキストでマッチャーを使用できるようにするにはRSpec::Matchers、クラスにミックスインする必要があります。

class MyPageObject
  include RSpec::Matchers

  def check_allocation_by_balance_type
    balance_type_tab?
    puts "found tab"
    puts balance_type_tab_element.visible?
    balance_type_tab_element.visible?.should be_true
  end
end
于 2013-01-02T15:41:46.660 に答える