的任务.等错误
本文关键字:错误 任务 | 更新日期: 2023-09-27 18:15:39
我正在运行一个硒测试。所有的测试都运行良好,但当我试图发送完成邮件它给出错误。当我在本地运行VS2015时,代码运行良好,但当我从TeamCity运行时返回错误。
我使用c#和Chromedriver作为技术堆栈。
代码在error下面返回。
Diplomat.Enav.Web.Selenium.Tests.dll: Diplomat.Enav.Web.Selenium.Tests.GlobalFixtureTearDown方法失败。发生了一个或多个错误。在System.Threading.Tasks.Task。ThrowIfExceptional(布尔includeTaskCanceledExceptions)在System.Threading.Tasks.Task。等待(Int32毫秒超时,CancellationToken CancellationToken)在System.Threading.Tasks.Task。等待(Int32 millisecondsTimeout)在Diplomat.Enav.Web.Selenium.Tests.Common.Mailer。SendResults(List ' 1 states, Boolean waitForCompletion) in d:'TeamCity'buildAgent'work'a367a3eda4cbbd88'Diplomat.Enav.Web'Diplomat.Enav.Web. selenium . tests 'Common' mail .cs:第59行在d:'TeamCity'buildAgent'work'a367a3eda4cbbd88'Diplomat.Enav.Web'Diplomat.Enav.Web. selenium . tests 'Common'SeleniumStatus.cs:line 182在d:'TeamCity'buildAgent'work'a367a3eda4cbbd88'Diplomat.Enav.Web'Diplomat.Enav.Web. selenium . tests 'Common'GlobalFixture.cs:line 39
给出这个错误的代码是
Task sendMailTask = smtp.SendMailAsync(message);
if (waitForCompletion)
sendMailTask.Wait(5000);
执行sendMailTask.Wait(5000)
时返回错误
try you use
Thread.Sleep(5000);
但这是一种不好的方式。最好等待一些消息将显示在页面上。