2011-01-02 16 views
0

Sobald wir Wattingtestprozedur gestartet haben und IE öffnet und Automatisierung auf dem Weg ist, gibt es irgendeine Weise, diesen Prozess zu unterbrechen?Stop Wattin Testverfahren

Oder Wie wir in Thread-Environment implementieren, gibt es also eine Möglichkeit, Informationen über den Thread laufen zu lassen und wir können diesen Thread beenden?

Lass uns sagen, wir haben einen Thread für das Testen von website1, website2 und website3 gestartet. Wenn wir automatisiertes Testen für website1 stoppen wollen, sollte ich es unterbrechen und es stoppen, wo immer es war.

Antwort

2

können Sie Browser.Close verwenden und dann cacth Ausnahme System.Runtime.InteropServices.COMException

Ich meine, Sie

tun konnte
public class Test 
{ 
    public void Main() 
    { 

     // Create the three browser. 
     Browser browser1 = new Browser(); 
     Browser browser2 = new Browser(); 
     Browser browser3 = new Browser(); 

     // Start the test. 
     new Thread(() => doTest(test1, browser1)).Start(); 
     new Thread(() => doTest(test2, browser2)).Start(); 
     new Thread(() => doTest(test3, browser3)).Start(); 

     // interrupt test 1 
     browser1.Close(); 
    } 

    private doTest(Action<Browser> test, Browser browser) 
    { 
     try 
     { 
      // do the test 
      test(browser); 
     } 
     catch (System.Runtime.InteropServices.COMException) 
     { 
      // test was interrupted 
     } 
    } 

    private void test1(Browser browser) 
    { 
    } 

    private void test2(Browser browser) 
    { 
    } 

    private void test3(Browser browser) 
    { 
    } 
} 
+0

aber ich weiß nicht, wie viele Browser ich –

+0

im defination von Thread erstellen Browser erstellt werden Was meinen Sie ? Meinst du, dass du außerhalb der Threads keinen Zugriff auf den Browser hast? Es sollte kein Problem sein, sie zugänglich zu machen. Könnten Sie Ihre erste Frage bearbeiten und Code anzeigen? –