假設我的應用程序中有一個「登錄」按鈕,可以由管理員啓用/禁用該按鈕。當登錄功能被禁用時,測試此按鈕的最佳方式是而不是? (該頁面應呈現罰款,但該按鈕不應該在那裏。)期待水豚找不到東西?
我似乎無法找到一種方式expect
find
失敗。我接近這個錯誤嗎?
假設我的應用程序中有一個「登錄」按鈕,可以由管理員啓用/禁用該按鈕。當登錄功能被禁用時,測試此按鈕的最佳方式是而不是? (該頁面應呈現罰款,但該按鈕不應該在那裏。)期待水豚找不到東西?
我似乎無法找到一種方式expect
find
失敗。我接近這個錯誤嗎?
好吧,如果你的按鈕有一個class
或id
,那麼你可以檢查,如果頁面不包括class
或id
:
expect(page).not_to have_selector "#botton_id" or ".button_class"
,或者如果你的按鈕的名稱是唯一的,你可以檢查不顯示在頁面上:
expect(page).not_to have_content('Button Name')
如果你想通過做
已檢查了按鈕的存在expect(page).to have_button('log in')
那麼你可以做任何的
expect(page).not_to have_button('log in')
expect(page).to have_no_button('log in')
,以確保「登錄」按鈕不存在 - 類似可以have_link,have_field,have_selector等來實現。如果你不使用RSpec的,然後再沿着
page.assert_no_selector(:button, 'log in')
或
assert page.has_no_button?('log in')
線的東西會做你想要什麼
期望'not_to'而不是'to'? –