将需求与功能测试联系起来

时间:2012-08-29 19:22:02

标签: testing agile functional-testing requirements

我正在构建一个命令行工具,我可以在输入上执行这样的命令:

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

其中userName是字符串类型,zodiacSign是枚举器类型。

我也有自动完成功能,这样我就可以点击Tab键并获得线索,比如

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

问题在于我得到越来越多的微妙要求,我发现越来越难以记录到用户故事中。例如,我刚刚收到了要求,如果我点击了回车符合以下内容:

PROMPT>zodiacSign=Can<CARRIAGE-RETURN>

然后,软件应自动完成命令 zodiacSign = Cancer 并执行它,因为它是唯一的选项。

我将进行功能测试以测试每个细微差别。通过这样做,我可以通过我的功能测试演示用户故事。

但是你会推荐哪些方便的工具来存储需求/用户故事,甚至可以将它们链接到功能测试?也许这个工具包括覆盖图。

4 个答案:

答案 0 :(得分:3)

谁是要求的受众?如果是开发人员,我会说版本控制系统是存储它们的好地方。 : - )

我建议使用Cucumber或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"

这是一个完全可执行的测试,可以很好地描述所需的功能。

希望有所帮助!

布兰登

答案 1 :(得分:2)

看看FitNesse。它是需求Wiki和功能测试执行框架的组合。

编写需求时,将它们放在一个表中,其中包含样本数据和预期结果。点击“test”,FitNesse解析表,然后拨打电话。很酷。

答案 2 :(得分:2)

FitNesse确实是一种流行的工具,但有些人会认为FitNesse is evil(它可能很容易被滥用,并且会受到numerous issues的影响)。一个好的开源跨平台替代方案是soapUI

soapUI 可以管理functional testing以及keep track of your system's requirements用例和用户素材,并将其与测试相关联。

它有一个很好的GUI,有什么不是(包括coverage graphs,就像你想要的那样!)。大多数功能都包含在免费版本中。

答案 3 :(得分:2)

根据您的需要,请查看QMetry 它是一个非常完整的工具,允许您定义需求,测试用例,测试场景以及测试场景的启动。 报告也很好,HMI非常用户友好。

希望这个帮助