以单元测试的形式进行秒表测试的方法

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 秒,测试将失败。