被禁用按鈕我有一個按鈕水豚 - 尋找位於錶行
<button type="button" id="saveListing" class="button small save-button" data-bind="enable: saveEnabled, click: save"><i class="fa fa-save"></i> Save</button>
位於表的TR。
我寫了一個函數用於測試按鈕狀態,只需使用:
And(/^...the button "(.*?)" on "(.*?)" page is disabled$/) do |button_name, page|
button_id = ConfigHelper.get_button_info(button_name, page)['id']
button_class = ConfigHelper.get_button_info(button_name, page)['class']
if !button_id.nil?
find_button(button_id)[:disabled].should eq 'true'
elsif !button_class.nil?
find(button_class)[:disabled].should eq 'true'
else
button_text = ConfigHelper.get_button_info(button_name, page)['text']
find('button', text: button_text)[:disabled].should eq "true"
end
end
然而,此塊不適合在錶行按鈕工作。我也嘗試通過按鈕ID添加檢查,並且它也沒有工作。我怎樣才能實現它,而無需將表ID作爲參數? (因爲我不想寫功能表裏面的id)
當使用ID,錯誤的是:
Capybara::ElementNotFound: Unable to find css ".saveListing"
或使用文本:
Ambiguous match, found 4 elements matching css "button" (Capybara::Ambiguous)
感謝。
不以什麼方式工作?它說元素沒有找到? – ndn
不,它不。我剛剛添加了錯誤消息。 – skynyrd
在此代碼評估的上下文內。它是整個「頁面」嗎?你也可以嘗試在find中找到find('...',disabled:true)或者css find('...:disabled')'嗎? – ndn