capybaraで取得した要素の中身を確認する

テストが通らない原因を探るため、binding.pryを仕込んでデバッグをしておりました。

 

止まってくれたところで、

find(‘#client_check_by_id’)

とすれば、その要素を取得は出来るものの、その中身を見たい!と思い、そのやり方を調べてみました。

[1] pry(#<RSpec::ExampleGroups::Nested::Nested_2>)> find('#client_check_by_id')
=> #<Capybara::Node::Element tag="select" path="/html/body/main/form/div[1]/div[10]/select">

 

以下のように、

find(‘#client_check_by_id’).native.to_s

としてあげると、中身の要素を見ることが出来ました!!

[2] pry(#<RSpec::ExampleGroups::Nested::Nested_2>)> find('#client_check_by_id').native.to_s
=> "<select class="select required" name="client[check_by_id]" id="client_check_by_id"><option value=""></option> <option value="1">user 1</option> <option value="3">user 3</option> <option value="5">user 5</option> <option value="7">user 7</option></select>"