0
我是新來的黃瓜/水豚,我想知道我如何導入使用黃瓜/水豚如何使用Cucumber/Capybara從txt/xls文件導入數據?
比如我需要使用下一個場景來上傳多個文件相繼從TXT/XLS文件中的數據:
功能
Scenario: Upload
When I Choose A name "name"
When I Choose "/home/path"
Then I Click Upload
step_definitions
When(/^I Choose A name "([^"]*)"$/) do |title|
fill_in('video_title', :with => title)
fill_in('video_description', :with => title)
end
When(/^I Choose "([^"]*)"$/) do |file|
find(:xpath, '//*[@id="file"]', :visible => false).set(file)
end
Then(/^I Click Upload$/) do
click_button('Upload')
end
所以,如果我可以添加步驟定義從導入TXT或xls這將是更容易,然後重複每個文件場景
你很近,但我想從外部文件導入數據? ,你剛做的手術名稱是什麼? –
我會先回答你的第二個問題,因爲它是最簡單的。首先,我使用了場景大綱而不是常規場景。這可以讓您包含任意數量的不同數據點。接下來,我使用'step'關鍵字來調用第四個關鍵字的三個步驟定義。這兩種方法都是減少重複的好方法。 –
至於你的第一個問題,你爲什麼需要測試許多不同的數據點?在大多數情況下,這並不是必須的,所以我通常建議將更少的例子放入場景提綱中(如我所說,這個提綱仍然可以是任意長的)。如果有某些原因絕對不是可接受的選項,那麼我會創建一個輔助模塊(將其保存在您的'features/support'目錄中),以便從文件中提取數據並使用常規Ruby對其進行處理。然後,您可以從您的步驟中調用該幫助程序代碼。 –