【发布时间】:2015-04-13 19:39:10
【问题描述】:
我正在尝试开始在项目中编写单元测试。我先写了createTest并试了一下。这个测试通过了,我开始编写我的其他测试。
现在我所有的测试都只是说“测试未运行”。当我尝试一次运行所有测试和运行单个测试时都会发生这种情况。
https://github.com/Requinard/OperationOctopus/tree/UnitTest
到目前为止,我发现的只是使用 NUnit 的人。我们使用默认的 microsoft 测试框架,并使用 resharper 运行测试。
[TestMethod]
public void CreateTest()
{
Init.Initialize();
// set up
UserModel user = new UserModel();
user.Address = "Testing Street 1";
user.Email = "Testing@test.com";
user.Level = 2;
user.Password = "test";
user.RfiDnumber = "00d0wad0aw";
user.Telephonenumber = "0638212327";
user.Username = "testcaseuser";
Assert.IsTrue(user.Create(), "Cannot write user to database");
test_user = user;
}
[TestMethod]
public void ReadTest()
{
Init.Initialize();
// set up
UserModel user = getTestUser();
Assert.AreEqual(user.Email, test_user.Email, "Reading returned an unexpected result");
}
[TestMethod]
public void AlterTest()
{
Init.Initialize();
UserModel user = getTestUser();
user.Email = "test@testing.com";
Assert.IsTrue(user.Update(), "Failure during updating");
user.Read();
Assert.AreNotEqual(user.Email, test_user.Email);
}
[TestMethod]
public void DestroyTest()
{
Init.Initialize();
UserModel user = getTestUser();
Assert.IsTrue(user.Destroy(), "Could not destroy user");
}
上面的测试会让resharper说“测试没有运行”
我刚刚尝试在我的笔记本电脑上运行测试。他们在没有对代码进行任何更改的情况下工作,并且测试立即完成。这让我认为我正在处理某个错误的配置。
【问题讨论】:
-
请在问题本身中包含相关代码。
-
尝试在调试中运行并逐步查看发生了什么。
-
我在 CreateTest() 的第一条语句处设置了一个断点并运行调试。 Visual Studio 开始加载大量符号,然后立即停止了我的调试会话。
-
似乎测试在我的笔记本电脑上运行良好,只是在我的台式机上不行
-
确保在 ReSharper 选项 -> 单元测试中将桌面上的 ReSharper 副本设置为启用 MSTest 提供程序。默认情况下它是启用的,但如果你将 ReSharper 文件签入到 Git,假设你使用的是 NUnit,其他开发人员可能会为了小的性能提升而禁用它。
标签: c# unit-testing visual-studio-2013 resharper