Ich möchte einen Selenium-Webdriver-Test erstellen und damit dies funktioniert, möchte ich die bestehende OWin-Anwendung mit OWin SelfHost starten.Selenium und OWin Selfhost - wie debuggen?
Aus irgendeinem Grund reagiert der OWin-Server nicht, sobald ein Haltepunkt es ist ... Kann mir jemand sagen, was ich falsch mache?
Unten ist der Code mit ein paar mehr Infos ...
[OneTimeSetUp]
public void InitDriverAndBackend()
{
string baseAddress = "http://127.0.0.1:9001/";
httpServer = WebApp.Start<Startup>(url: baseAddress);
Thread.Sleep(30000);
//I have a breakpoint on the line below. Before the breakpoint is hit,
//I receive a response when going one of my webapi's on port 9001
//However, once the breakpoint is hit, the server does not response at all and the request stays pending
Driver = new ChromeDriver();
}
So erwarte ich eine Antwort zu erhalten, aber sobald ein Haltepunkt erreicht wird, bleiben die Anfragen nur noch aus.
Hallo Mike, in meiner Continuous Deployment-Pipeline würde ich gerne meine Webdriver/Selenium-Tests ausführen, bevor ich sie tatsächlich einsetze. Ich folge nicht, warum nach dem 'neuen ChromeDriver();' mein OWin-Prozess Müll sammeln würde. Ich behalte einen Verweis auf den HttpServer, der eine IDisposable ist, die ich am Ende aller Tests in einer '[OneTimeTearDown]' Methode entsorge. Ich werde versuchen, es in einem anderen Thread (oder Topshelf?) Zu starten - ich bin neugierig! Vielen Dank für die Hilfe – rdehuyss
OK, wenn Ihr Server nur in TearDown entsorgt wird, wird kein Müll gesammelt. Dann ist es der zweite, kursiv geschriebene Teil der Antwort: Sobald die Anwendung den Haltepunkt erreicht, ist sie vollständig eingefroren, so dass die Owin-App einfach nicht antwortet. –