【问题标题】:Exception in WinAppDriver calculator exampleWinAppDriver 计算器示例中的异常
【发布时间】:2019-10-15 15:58:44
【问题描述】:

我在启用开发者模式的情况下运行 Win10,并启动了 WinAppDriver。在 VS 2019 中,我运行了计算器示例,但每次测试都失败并出现异常。然后我尝试设置一堆断点,但是当我运行测试时,它永远不会在我的断点处中断。

这是异常的堆栈跟踪:

Test Name:  Addition
Test FullName:  Test Detail Summary
Test Source:    C:\Code\WinAppDriver-1.1.1\Samples\C#\CalculatorTest\ScenarioStandard.cs : line 31
Test Outcome:   Failed
Test Duration:  0:00:00

Test Name:  Addition
Test Outcome:   Failed
Result StackTrace:  
at OpenQA.Selenium.Remote.RemoteWebDriver.UnpackAndThrowOnError(Response errorResponse)
   at OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecute, Dictionary`2 parameters)
   at OpenQA.Selenium.Appium.AppiumDriver`1.Execute(String driverCommandToExecute, Dictionary`2 parameters)
   at OpenQA.Selenium.Remote.RemoteWebElement.Click()
   at CalculatorTest.ScenarioStandard.Clear() in C:\Code\WinAppDriver-1.1.1\Samples\C#\CalculatorTest\ScenarioStandard.cs:line 131
Result Message: Initialization method CalculatorTest.ScenarioStandard.Clear threw exception. System.InvalidOperationException: An unknown error occurred in the remote end while processing the command..

任何想法为什么测试不起作用,为什么它没有在我的断点处中断?

【问题讨论】:

  • 您的问题与this有关吗?
  • 关于断点,我遇到了某种错误,我总是必须清理和重建我的解决方案,然后测试脚本才会接收到任何代码更改。就像 VS 在编译旧代码一样。如果该代码上有任何断点,则不会触发它。
  • 调试问题是我的错误。我是测试资源管理器的新手,我认为当您选择运行测试时断点会命中,但我现在看到您必须右键单击并选择调试测试。

标签: c# winappdriver


【解决方案1】:

第 31 行包含“加法”测试方法。

驱动程序无法找到它想要单击的元素,我想当这种情况发生时,有问题的元素没有显示在屏幕上。

session.FindElementByName("One").Click();

尝试在 click 方法调用之前添加睡眠调用。

System.Threading.Thread.Sleep(5000); 

【讨论】:

  • 请考虑一种更动态的等待元素的方式。看我的回答here
  • 感谢大家的帮助。我看到主要问题是等待问题。现在我已经通过增加分配给 session.Manage().Timeouts().ImplicitWait 的值来解决它,但我以后可能会考虑更复杂的解决方案。
  • @PixelPlex:你正在用猎枪杀死一只苍蝇。尝试将 WebDriverWait 类与 Until 方法一起使用。
  • @NaeemA.Malik,我明白你的意思。我同意你关于需要快速交付的小项目的论点。在较大的项目中,实施更强大的方法来解决这个问题是有意义的。顺便说一句,如果您从我的链接答案中查看第二个代码 sn-p,您会看到我确实使用了 'Until' ;-)。
  • 是的,我同意。我想我一目了然地错过了“直到”电话。
猜你喜欢
  • 2019-06-04
  • 1970-01-01
  • 2021-03-29
  • 1970-01-01
  • 2012-10-03
  • 1970-01-01
  • 1970-01-01
  • 2014-04-20
  • 2014-10-03
相关资源
最近更新 更多