2

Can someone explain me how it works, starting from when you select to run a test

4

4 回答 4

5

当您选择运行测试时,

  • 它将创建该测试方法的父类的实例。
  • 然后它继续运行标有 TestFixtureSetup 属性的方法(如果存在)(一次用于测试类)。
  • 接下来是标有 Setup 属性的方法,如果存在则调用(在该类中的每个测试之前调用一次)
  • 接下来执行您选择的方法(带有 Test 属性)。检查所有断言。如果所有断言都有效,则测试标记为通过(GUI 中为绿色),否则为失败(红色)。如果弹出任何未使用 ExpectedException 属性指定的异常,则测试失败。
  • 如果存在,则调用标有 Teardown 属性的方法。(清理代码..在类中的每个测试后调用一次)
  • 最后执行标记有 TestFixtureTeardown 属性的方法。(在测试类中的所有测试之后)

简而言之就是这样。xUnit 的强大之处在于它的简单性。那是你要找的吗?

于 2008-09-21T15:50:08.313 回答
1

我在工作中使用它,但我不是专家。这是 NUnit 文档的链接:http ://www.nunit.org/index.php?p=getStarted&r=2.4.8

于 2008-09-21T15:14:17.637 回答
1

1)有一个你想在.NET项目中测试的类(例如MyClass是类名,MyProject是项目名)

2) 将另一个名为 MyProject.Tests 的项目添加到您的解决方案中

3)添加从 MyProject 到 MyProject.Tests 的引用,以便您可以从测试代码中访问要测试的类

3)在这个新项目中添加一个名为MyClass的新类文件(与MyProject中的类相同)

4)在该类中,添加您的测试代码,如本页所述 - http://www.nunit.org/index.php?p=quickStart&r=2.4.8

5) 编写测试后,构建解决方案。在 MyProject.Tests 项目文件夹中将出现一个新文件夹——“MyProject.Tests\bin\Debug”。这是假设您在调试模式下构建的。如果您在发布模式下构建,它将是 MyProject.Test\bin\Release。要么会工作。在此文件夹中,您会找到一个名为 MyProject.Tests.dll 的 dll 文件

6) 打开 nUnit 测试实用程序,文件 > 打开,然后导航到 #5 中的文件夹以找到 MyProject.Tests.dll。打开它。

7) 来自 dll 的测试应该列在 nUnit 实用程序窗口中,您现在可以选择要运行的测试并运行它们。

注意:命名约定不是必需的,我就是这样做的。如果您有一个名为“MyProject”的项目,并且您希望将您的测试项目称为“ArbitraryName”而不是“MyProject.Test”,那么它仍然可以工作......命名约定只是有助于跟踪到底是什么测试。

于 2008-09-21T15:38:52.333 回答
0

What do you mean how does it work?

You define your test classes with [TestFixture] and your tests with [Test]

It's nothing more than a testing framework, you still have to write the tests and all of that jazz :)

于 2008-09-21T14:40:38.217 回答