我目前正在嘗試將黃瓜和水豚一起用於Web應用的一些集成測試。黃瓜動態加載數據表
有一個測試,我只想點擊網頁應用程序的所有(或大部分)頁面,查看是否沒有錯誤返回。我希望能夠看到哪些頁面無法正常工作。
我認爲,方案輪廓將是最好的辦法,所以我以這種方式開始:
Scenario Outline: Checking all pages pages
When I go on the page <page>
Then the page has no HTTP error response
Examples:
| page |
| "/resource1" |
| "/resource2" |
...
我現在有82頁,並且工作正常。
但是,我發現這種方法不可維護,因爲可能會刪除新的資源和資源。
更好的方法是從某處加載表中的數據(解析索引頁的HTML,數據庫等)。
但我沒有弄清楚如何做到這一點。
我碰到一個article about table transformation但我無法弄清楚如何在場景大綱中使用這種轉換。
有什麼建議嗎?
好,因爲存在一些混淆。如果你看看上面的例子。所有我想要做的是改變它,這樣的表幾乎是空的:
Scenario Outline: Checking all pages pages
When I go on the page <page>
Then the page has no HTTP error response
Examples:
| page |
| "will be generated" |
然後我想補充一個轉型看起來是這樣的:
Transform /^table:page$/ do
all_my_pages.each do |page|
table.hashes << {:page => page}
end
table.hashes
end
我指定的轉換在同文件,但它沒有被執行,所以我假設轉換不適用於Scenario輪廓。
是的,Transform只能在不包含大綱表的步驟參數表上運行。 – mschneider 2012-01-25 13:54:53