2017-02-21 8 views
8

laufen scheinen ich mit einem meiner Sätze von Tests nur ein Problem zu haben, wenn remote ausgeführt wird und nur bei dem Versuch, mit einem bestimmten Element zu interagieren. Ich baue und führe das durch VSTS.WebDriverException teilweise durch Selen Test nur ausgelöst, wenn der Ferne

Der Fehler:

OpenQA.Selenium.WebDriverException: A exception with a null response was thrown sending an HTTP request to the remote WebDriver server for URL (URL redacted, is a localhost URL). The status of the exception was ReceiveFailure, and the message was: The underlying connection was closed: An unexpected error occurred on a receive. ---> System.Net.WebException: The underlying connection was closed: An unexpected error occurred on a receive. ---> System.IO.IOException: Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host. ---> System.Net.Sockets.SocketException: An existing connection was forcibly closed by the remote host

Der HTML-Code für das Element, das ich eine Zahl in eingeben bin versucht (wir verwenden Knockout):

<input type="number" min="0" max="999" data-bind="value: redacted).extend({ min: 0, required: { message: 'redacted' } }), disable: redacted" name="redacted" id="redacted" title="redacted" required="required" class=""> 

Sie die redacted nichts dagegen. Ich wollte alle Eigenschaften dort lassen, um zu zeigen, welche Eigenschaften für das Element eingestellt werden, aber die tatsächlichen Werte werden redigiert.

Dies ist der Code, den ich einen Wert in das Element eingeben mit:

IWebElement element = driver.FindElement(By.Id(elementID)); 
element.Clear(); 
element.SendKeys(value); 

Das mit ChromeDriver läuft. Es gibt mehrere andere Zahlenfelder, in die ich erfolgreich Daten ohne Probleme eingeben kann.

Irgendwelche Ideen, was könnte hier schief gehen und wie es zu beheben?

+0

Was meinst du mit Remote-Betrieb? Call/run Test in einer Maschine, aber der Test auf dem entfernten Rechner oder der Aufruf/Lauf und Test auf dem gleichen Remote-Rechner ausführen? Was ist das Ergebnis, wenn Sie den Test auf dem lokalen Computer ausführen? Was ist das Detail eines bestimmten Elements? –

+0

@ starain-MSFT Es wird in VSTS aufgerufen und wird auf einem Remote-Build-Server ausgeführt. Dieses Problem tritt bei lokaler Ausführung nie auf. Ich bin mir nicht sicher, was Sie mit "Was ist das Detail eines bestimmten Elements?" Gemeint habe. Ich habe hier den HTML-Code des fraglichen Elements gezeigt. – tnw

+0

In Bezug auf bestimmte Elemente, meinst du, es funktioniert gut mit anderen Elementen? Wird der Build-Agent als interaktiver Modus ausgeführt? Auf der anderen Seite funktioniert es gut, wenn es lokal ausgeführt wird, was ist das Ergebnis, wenn Sie es manuell auf diesem Build-Server ausführen? –

Antwort

1

, dass irgendeine Art von SSL oder internem Netzwerkproblem sieht auf VSTS-Build-Server, die wahrscheinlich heikel ist mehr Informationen zu bekommen, weil Sie nicht vollen Zugang zu dieser Maschine haben sollten.

Wir auch Selenium-Tests auf unserer Continuous Integration, aber wir verwenden, um einen lokalen Build-Server zu VSTS gebunden, viel mehr Kontrolle über baut und Prozesse.

+0

Ich habe vollen Zugriff auf die Maschine. Was würdest du empfehlen, um mehr Informationen zu erhalten? – tnw

+0

Versuchen Sie, einen Proxy dazwischen hinzuzufügen. Ich würde Fiddler verwenden, um zu sehen, wie die Anfragen an Ihren entfernten Selenium WebDriver gesendet werden und welche Probleme damit verbunden sind –

Verwandte Themen