[英]Task.Wait error
我正在运行 Selenium 测试。所有测试都运行良好,但是当我尝试发送完成邮件时出现错误。当我通过 VS2015 在本地运行时代码运行良好,但当我从 TeamCity 运行时返回错误。
我使用 C# 和 Chromedriver 作为技术堆栈。
代码返回以下错误。
Diplomat.Enav.Web.Selenium.Tests.dll: Diplomat.Enav.Web.Selenium.Tests.GlobalFixture TearDown 方法失败。 发生了一个或多个错误。 在 System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions) 在 System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancelationToken) 在 System.Threading.Tasks.Task.Wait(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\\ Mailer.cs:line 59 at Diplomat.Enav.Web.Selenium.Tests.Common.SeleniumStatus.SendCompletionEmail() in d:\\TeamCity\\buildAgent\\work\\a367a3eda4cbbd88\\Diplomat.Enav.Web\\Diplomat.Enav.Web.Selenium Tests\\Common\\SeleniumStatus.cs:line 182 at Diplomat.Enav.Web.Selenium.Tests.GlobalFixture.RunAfterAnyTests() in d:\\TeamCity\\buildAgent\\work\\a367a3eda4cbbd88\\Diplomat.Enav.Web\\Diplomat.Web.Enav Selenium.Tests\\Common\\GlobalFixture.cs:line 39
给出此错误的代码是
Task sendMailTask = smtp.SendMailAsync(message);
if (waitForCompletion)
sendMailTask.Wait(5000);
当它执行sendMailTask.Wait(5000)
它返回错误。
试试你用
Thread.Sleep(5000);
但这是一个糟糕的方式。 最好等待一些消息将显示在页面上。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.