我正在使用 Visual Studio 2010,并且TestStack.White
通过了NuGet
(我得到了版本0.10.3.118
)。
问题是,我的测试点击了一个按钮,该按钮触发了超过默认 5 秒超时的操作。所以我的测试总是产生:
[Error] 'White.Core.Interceptors.CoreInterceptor' Error when invoking Click, on Button with parameters:
White.Core.UIItems.UIActionException : Window didn't respond, after waiting for 5000 ms
----> System.Exception : Timeout occured, after waiting for 5000 ms
我阅读了 White 关于等待的文档,但它说要查看配置部分以了解如何设置我自己的超时值。并且该部分不存在。
更新:我尝试创建一个名为的文件TestStack.White.dll.config
并将其放在TestStackWhite.dll
与我的测试 dll 相同的目录中。内容:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<sectionGroup name="White">
<section name="Core" type="System.Configuration.NameValueSectionHandler"/>
</sectionGroup>
</configSections>
<White>
<Core>
<add key="WorkSessionLocation" value="." />
<add key="PopupTimeout" value="5000" />
<add key="SuggestionListTimeout" value="10000" />
<add key="BusyTimeout" value="10000" />
<add key="WaitBasedOnHourGlass" value="true" />
<add key="UIAutomationZeroWindowBugTimeout" value="10000" />
<add key="TooltipWaitTime" value="10000" />
<add key="DragStepCount" value="4" />
</Core>
</White>
</configuration>
尽管如此,无论我是从 NUnit 还是 VS + Resharper 内部运行测试,我仍然会得到 5 秒的超时......