2013-06-25 10 views
5

Ich benutze Visual Studio 2010 und ich habe TestStack.White über NuGet (ich habe Version 0.10.3.118).Wie kann ich TestStack.White Timeouts konfigurieren?

Problem ist, mein Test klickt auf eine Schaltfläche, die eine Aktion auslöst, die das standardmäßige Timeout von 5 Sekunden überschreitet. Also mein Test liefert immer:

[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 

Ich las White's doc about waiting, aber es sagt, im Abschnitt Konfiguration, um zu sehen, wie meine eigenen Timeout-Werte zu setzen. Und dieser Abschnitt existiert nicht.

aktualisieren: Ich habe versucht, eine Datei TestStack.White.dll.config und legte sie in dem gleichen Verzeichnis wie TestStackWhite.dll und mein Test dll genannt zu schaffen. Der Inhalt:

<?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> 

Aber ich bin immer noch die 5 Sekunden Timeout, ob ich meinen Test von innen NUnit oder VS + ReSharper laufen ...

+1

Es ist März 2017 und ich fand diesen Abschnitt über Teststack.White und "Warten": http://teststackwhite.readthedocs.io/en/latest/AdvancedTopics/Waiting/ – AudioDroid

Antwort

11

Diese Timeouts programmatisch konfiguriert werden können, in Ihrem Test Code. Zum Beispiel:

CoreAppXmlConfiguration.Instance.BusyTimeout = 20000; 

Um es zu tun ein App.Config, solche Datei muss auf die Testanordnung in Verbindung gebracht werden. Also fügt ein App.Config zu meinem Testprojekt hinzu und fügt den Inhalt der Frage ein.

Verwandte Themen