在 C# 中操作(减去或增加秒数)Stopwatch.Elapsed

Manipulating (subtract or add seconds) Stopwatch.Elapsed in C#

我需要能够从我的计时器中减去几秒钟,以便在 Visual Studio 中进行我的 Selenium 性能测试。以下是我的代码示例:

        var sw = Stopwatch.StartNew();            
        UploadFiles();
        sw.Stop();

        //Logging of performance results
        Console.WriteLine("The time for ALEX to upload a large data set is {0}", sw.Elapsed);

上传文件();方法包括 3 秒的 Sleep,它需要用于其他测试。因此,消除睡眠是不可能的。我需要一种方法来从 sw.Elapsed.

中减去 3 秒

您可以像这样减去 TimeSpan

var result = sw.Elapsed - TimeSpan.FromSeconds(3);

另一种方法是使用 DateTime:

var start = DateTime.Now;
UploadFiles();
var end = DateTime.Now;

var elapsed = (end - start - TimeSpan.FromSeconds(3)).TotalSeconds;
Console.WriteLine("Elapsed time: {0} seconds" + elapsed);