Ich muss einfach Autotest mit ChromeDriver mit Maven erstellen.Wie können Selenium WebDriver-Testfälle in Chrome mit Maven ausgeführt werden?
Auszug aus pom.xml:
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>2.53.1</version>
</dependency>
Testfall:
@BeforeTest
public void StartBrowser_NavURL() {
driver = new ChromeDriver();
driver.manage().window().maximize();
}
@AfterTest
public void CloseBrowser() {
driver.quit();
}
@Test
public void testToCompareDoubles() {
driver.get("http://www.google.com");
}
Und nach dem Test läuft Ausführung Befehl
mvn -test
ich die folgende Ausnahme:
ja va.lang.IllegalStateException: Der Pfad zur ausführbaren Treiberdatei muss durch die Systemeigenschaft webdriver.chrome.driver festgelegt werden. Weitere Informationen finden Sie unter https://github.com/SeleniumHQ/selenium/wiki/ChromeDriver. Die neueste Version kann von http://chromedriver.storage.googleapis.com/index.html unter com.google.common.base.Preconditions.checkState (Preconditions.java:199) bei org.openqa.selenium.remote.service.DriverService.findExecutable (DriverService.java:109) heruntergeladen werden bei org.openqa.selenium.chrome.ChromeDriverService.access $ 000 (ChromeDriverService.java:32) bei org.openqa.selenium.chrome.ChromeDriverService $ Builder.findDefaultExecutable (ChromeDriverService.java:137) bei org.openqa.selenium .remote.service.DriverService $ Builder.build (DriverService.java:296) bei org.openqa.selenium.chrome.ChromeDriverService.createDefaultService (ChromeDriverService.java:88) bei org.openqa.selenium.chrome.ChromeDriver. (ChromeDriver.java:116) bei com.testTask.GoogleTest.StartBrowser_NavURL (GoogleTest.java:26) bei org.apache.maven.surefire.testng.TestNGExecutor.run (TestNGExecutor.java:77) bei org.apache.maven.surefire.testng.TestNGDirectoryTestSuite.execute (TestNGDirectoryTestSuite.java:110) bei org.apache.maven.surefire.testng.TestNGProvider.invoke (TestNGProvider.java:106) bei org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray (ReflectionUtils.java:189) bei org.apache .maven.surefire.booter.ProviderFactory $ ProviderProxy.invoke (ProviderFactory.java:165) bei org.apache.maven.surefire.booter.ProviderFactory.invokeProvider (ProviderFactory.java:85) bei org.apache.maven.surefire .booter.ForkedBooter.runSuitesInProcess (ForkedBooter.java:115) bei org.apache.maven.surefire.booter.ForkedBooter.main (ForkedBooter.ja va: 75) ... Entfernt 23 Stapelrahmen
Ich habe gelesen Diskussion accesible unten über den Link: How to run Selenium WebDriver test cases in Chrome?
Aber ich kann nicht ausführbare Dateien auf meinem Server herunterladen. Also, es ist keine Option für mich. Aber Maven lädt "selen-chrome-driver-2.53.1.jar" auf den Server (was für mich in Ordnung ist).
Gibt es eine Möglichkeit, eine heruntergeladene .jar-Datei anstelle einer ausführbaren Datei zu verwenden?
P.S. Für dieses Projekt verwende ich IntelliJ Idea Community Edition und ich bin kein Experte damit
Noch einmal: Ich habe keine Berechtigung, um ausführbare Dateien zum Download bereit. – Eugene
Was bedeutet das? Sie benötigen einen ausführbaren Chrome-Treiber, um Tests auf Chrome auszuführen. –
Ihr Tipp funktioniert: Meine Tests werden nach dem Download von "chromedriver.exe" ausgeführt. Aber all diese Dinge sollen mit einem einzigen Maven-Befehl ausgeführt werden (z.B.: mvn-test). Und ich weiß nicht, ob Maven Dateien aus dem Internet herunterladen könnte oder nicht. Also, ich suche nach einer Lösung, die die Menge der heruntergeladenen externen Dateien minimiert. Ansonsten sollte ich zu den Interessengruppen gehen, um neu zu verhandeln. – Eugene