以单元测试的形式进行秒表测试的方法
Ways to approach a Stop watch test in the form of unit test
我是 c# 的新手,我的任务是创建一个测试,告诉我搜索过程需要多长时间。所以我点击了一个搜索按钮。然后我等待结果出现。
我想用我的三 A 以单元测试的形式尝试它。理想情况下,测试完成搜索所需的时间不会超过 3 秒。
解决这个问题的最佳方法是什么?我需要事先进行任何设置吗?
到目前为止我只有通用代码。
[TestMethod]
public void LocationNameSearch()
{
//Arrange
//Act
//Assert
}}
更新:
我正在尝试创建一个基本的秒表,然后我将从开发代码中构建我需要的数据。这个断言哪里出错了?
[TestMethod]
public void LocationNameSearch()
{
// Create new stopwatch.
Stopwatch stopwatch = new Stopwatch();
// Begin timing.
stopwatch.Start();
// Do something.
for (int i = 0; i > 1000; i++)
{
}
// Stop timing.
stopwatch.Stop();
//Assert
Assert.AreEqual(stopwatch.Stop, 1);
}
断言应检查秒表的 Elapsed 属性 并将其与允许进程花费的最长时间进行比较。
这没有使用 Stopwatch
class 但我更喜欢使用 [Timeout]
属性。
用法:
[TestMethod]
[Timeout(3000)]
public void LocationNameSearch() { }
如果测试完成时间超过 3 秒,测试将失败。
我是 c# 的新手,我的任务是创建一个测试,告诉我搜索过程需要多长时间。所以我点击了一个搜索按钮。然后我等待结果出现。
我想用我的三 A 以单元测试的形式尝试它。理想情况下,测试完成搜索所需的时间不会超过 3 秒。
解决这个问题的最佳方法是什么?我需要事先进行任何设置吗?
到目前为止我只有通用代码。
[TestMethod]
public void LocationNameSearch()
{
//Arrange
//Act
//Assert
}}
更新: 我正在尝试创建一个基本的秒表,然后我将从开发代码中构建我需要的数据。这个断言哪里出错了?
[TestMethod]
public void LocationNameSearch()
{
// Create new stopwatch.
Stopwatch stopwatch = new Stopwatch();
// Begin timing.
stopwatch.Start();
// Do something.
for (int i = 0; i > 1000; i++)
{
}
// Stop timing.
stopwatch.Stop();
//Assert
Assert.AreEqual(stopwatch.Stop, 1);
}
断言应检查秒表的 Elapsed 属性 并将其与允许进程花费的最长时间进行比较。
这没有使用 Stopwatch
class 但我更喜欢使用 [Timeout]
属性。
用法:
[TestMethod]
[Timeout(3000)]
public void LocationNameSearch() { }
如果测试完成时间超过 3 秒,测试将失败。