使用NUnit的Given-When-Then示例

7
有人能指引我一些使用NUnit进行Give-When-Then测试风格的资源吗?
4个回答

8
The Given When Then风格与单元测试中的安排执行断言(Arrange Act Assert)风格密切相关。
以下是一个例子:
[Test]
public void RotateAngle_Given27Degress_Returns64Degrees()
{
   //Arrange or Given
   var someAngleClass = new Angle();

   //Act or When
   var result = someAngleClass.Rotate(27);

   //Assert or Then
   Assert.That(result, Is.EqualTo(64));
}

这种测试方式的好处是您不需要查看底层代码就能理解行为的意图。
以下是一些相关网站的更多信息:

http://www.arrangeactassert.com/

Roy Osherove的博客

http://www.artofunittesting.com/


6

我知道这是一个老问题,但如果你还没有看过的话,你应该去看看SpecFlow。它允许你在一个功能文件中用清晰的文本编写规范。该工具将根据功能文件自动生成NUnit测试。


5
如果您下载并添加了对StoryQ的引用,您就可以使用漂亮的BDD风格(点击链接查看示例),同时像往常一样使用NUnit(以及TestDriven.Net、R#'s runner或其他)。

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接