假设我的应用程序中有一个“登录”按钮,可以由管理员启用/禁用该按钮。当登录功能被禁用时,测试此按钮的最佳方式是而不是? (该页面应呈现罚款,但该按钮不应该在那里。)期待水豚找不到东西?
我似乎无法找到一种方式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'? –