2012-08-29 124 views
4

我建立一個命令行工具在哪裏可以在輸入這樣的執行命令:與功能鏈接要求測試

PROMPT>userName=Seán<CR> 
PROMPT>zodiacSign=Virgo<CR> 

其中用戶名是字符串類型和zodiacSign是類型枚舉的。

我也有自動完成,這樣我可以打tab鍵和獲得線索,這樣

PROMPT>zodiacSign=C<TAB> 
     Cancer 
     Capricorn 
PROMPT>zodiacSign=Ca 

的事情是,我越來越微妙的要求,這我發現更多並且更難記錄到用戶故事中。比如,我剛剛收到哪裏,如果我打回車以下要求:

PROMPT>zodiacSign=Can<CARRIAGE-RETURN> 

軟件應該然後自動完成命令zodiacSign =癌症並執行它,因爲它是唯一的選擇。

我將安排功能測試來測試每個細微差別。通過這樣做,我可以通過我的功能測試演示用戶故事。

但是,您會推薦什麼方便的工具來存儲需求/用戶故事,甚至可以將它們鏈接到功能測試?也許這個工具包括覆蓋圖。

回答

2

看看FitNesse。它是需求Wiki和功能測試執行框架的組合。

當你編寫需求時,你把它們放在一個你有樣本數據和預期結果的表格中。點擊「測試」,FitNesse解析表格並進行調用。很酷。

2

FitNesse確實是一種流行的工具,但有人會認爲FitNesse is evil(它可能容易被誤用,並且患有numerous issues)。一個很好的開源跨平臺替代方案是soapUI

的soapUI可以管理functional testing,以及keep track of your system's requirements,使用情況和用戶的故事,並將其鏈接到測試。

它有一個很好的圖形用戶界面(包括coverage graphs,就像你想要的!)。大部分功能都包含在免費版本中。

3

誰是觀衆的要求?如果它是一個開發人員,我會說版本控制系統是存儲它們的好地方。 :-)

我會推薦使用黃瓜或FitNesse。使用測試作爲要求是要走的路。

黃瓜例如:

Scenario: 
    If a single match is available and the carriage return is pressed 
    auto-complete should accept the match 

Given valid Zodiac Signs are "Cancer,Capricorn" 
When the user enters "zodiacSign=Can<CARRIAGE-RETURN>" at the prompt 
Then the shell should auto-complete to "zodiacSign=Cancer" 

這是一個完全可執行的測試和沒有很好地描述所需要的功能。

希望有幫助!

布蘭登

2

您的需求,看看QMetry
這是一個非常完整的工具,允許您定義需求,測試用例,測試場景以及測試場景的啓動。 報告也很好,人機界面非常友好。

希望得到這個幫助