4

レコードを削除するテストを作成していますが、削除した後にレコードが存在しないことを確認する必要があります。「browser.text.include?」を使用してレコードテキストがページに存在することを確認する方法を知っていますが、代わりにテキストが存在しないことを確認する方法はありますか?削除されたと思われるテキストがまだ存在する場合は、テストを失敗させる必要があります。検索しましたが、検索でヒットしたのは、テキストが存在することを確認する方法を教えてくれます。これは、必要なものとは逆です。

どうもありがとうございます。

4

4 に答える 4

4

browser.text.include?ブール値(実際にはtruetypeまたはfalsetypeですが、これはその議論の時間ではありません)を返すため、それを否定すると検索が逆になります。

do_a_faily_thing if not browser.text.include? "badgers are eating my face"

自分のニーズに合わせて自由にカスタマイズしてください。PS。これは基本的にryの答えですが、顔を食べるアナグマだけがいます。

チャックの提案から、歴史的な興味のために追加されました:

do_a_faily_thing unless browser.text.include? "face-eating-badger-eating-badgers are eating my face-eating badgers"

「else」の例を示すために追加されました。

if browser.text.include? "badgers are eating my face"
   do_a_thing
else
   phew_no_badgers
end
于 2011-04-14T13:28:00.853 に答える
2

どうですか:

   !browser.text.include?("my string")
于 2011-04-13T16:39:05.337 に答える
2

または、使用しているテストフレームワークによって異なります

# RSpec and/or Cucumber
browser.text.include?("my string").should != true

# TestUnit
assert(browser.text.include?("my string") != true)
于 2011-04-13T17:06:44.820 に答える
0

レコードがラップされたHTML要素の場合、exist?メソッドは、存在を確認するもう1つの方法です。

削除されたレコード(サンプル)

<p class='foo'>bar</p>

スクリプトを確認してください

p(:class,'foo').exist?
于 2011-04-14T03:39:47.607 に答える