2014-07-07 26 views
-1

我正在爲我的代碼編寫黃瓜場景,而且我想知道它是否真的測試了我編寫的場景,然後轉換爲英文+ RegeX格式。如何將Cucumber功能與代碼本身相關聯?

我應該把需要在SPET定義文件的頂部? 如果我將測試留空或填寫任何有效的ruby代碼,它將通過。黃瓜是否按照正確的方式工作?

我正在使用Ruby。

+0

當你執行黃瓜情況下,它會搜索在sceanrio給出的單詞,它會在執行步驟定義[.RB文件]中給出的代碼。如果你沒有任何代碼,在SD黃瓜內通過這一步。這是黃瓜的行爲 – NMKP

回答

0

它正在工作,因爲它應該。

如果您有說

Given I go to the google website 
When I search for flowers 
Then I found websites about flowers 

一個場景,你運行它,它就會停止,並告訴你,一步DEF沒有定義,並給你如何寫他們的例子。然後您可以複製並粘貼或自己寫。

如果再次運行它,它會失敗,要麼說這些步驟掛起(如果你在步驟已經掛起的高清導致它不是寫的還)或將只報錯了一個空的考驗。

然後你可以把你在步驟確定指標想要的任何代碼....

所以,如果我給出的步驟。「鑑於我去谷歌網站」 ......

有看跌期權「 Hello World」的

當你運行測試,它會做的代碼,並把世界您好,然後失敗或與其他兩個步驟掛起停止。

它無法讀取你的步驟def說什麼,並做到這一點,你必須編寫代碼,使其轉到谷歌網站。

這有道理嗎?

+0

好的,所以你讓我看看我是否得到了這個,它並沒有真正在步驟和代碼本身之間建立關係,對吧? –

+0

不,不是直接。它只會匹配功能文件中的內容與步驟定義中的內容。這一步實際上是發生了什麼,完全取決於您編寫的代碼。 – Mayshar

0

您可以要求其他庫,如webdriver的柴幫你寫的步驟定義文件中的某些命令。

我用黃瓜JavaScript和控制檯會糾正你的步驟定義,如果它不直接與特徵文件的步驟相匹配。我不確定紅寶石是否屬於這種情況。

希望這有助於!

相關問題