如何配置TestStack.White超时?

dar*_*mos 5 configuration timeout white-framework

我使用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
Run Code Online (Sandbox Code Playgroud)

我阅读了White关于等待的文档,但是它会查看Configuration部分以了解如何设置我自己的超时值.那部分不存在.

更新:我尝试创建一个名为的文件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>
Run Code Online (Sandbox Code Playgroud)

不过,无论我是从NUnit还是VS + Resharper中运行我的测试,我仍然会得到5秒超时...

dar*_*mos 11

可以在测试代码中以编程方式配置这些超时.例如:

CoreAppXmlConfiguration.Instance.BusyTimeout = 20000;
Run Code Online (Sandbox Code Playgroud)

要使用a来执行此操作App.Config,必须将此类文件与测试程序集关联.因此,App.Config在我的测试项目中添加一个并粘贴问题中的内容也可以.