Chciałbym móc używać Selenium 2 z Jenkinsem.Jak wykonać testy Selenium 2 w Jenkinsach
Jestem nowy dla obu, więc proszę wybaczyć każdą z mojej ignorancji.
Zauważyłem następujące wtyczki dla jenkins HERE, i zainstalowałem go.
mam podstawową klasę następująco:
public class BaseTestClass { protected Properties myprops; protected String baseurl; protected WebDriver driver; protected boolean acceptNextAlert = true; protected StringBuffer verificationErrors = new StringBuffer(); public BaseTestClass() { try { myprops = TestUtil.readProps("src/MyProps.properties"); baseurl = myprops.getProperty("baseurl"); driver = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"), DesiredCapabilities.fireFox()); } catch(Exception e) { e.printStackTrace(); } } @Before public void setUp() throws Exception { driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS); } @After public void tearDown() throws Exception { driver.quit(); String verificationErrorString = verificationErrors.toString(); if (!"".equals(verificationErrorString)) { fail(verificationErrorString); } } protected boolean isElementPresent(By by) { try { driver.findElement(by); return true; } catch (NoSuchElementException e) { return false; } } protected String closeAlertAndGetItsText() { try { Alert alert = driver.switchTo().alert(); if (acceptNextAlert) { alert.accept(); } else { alert.dismiss(); } return alert.getText(); } finally { acceptNextAlert = true; } }
I ma następującą konfigurację na selen dodatku do Jenkins:
..
Kiedy próbuję zbudować projekt i uruchomić test selenu Junit w Jenkins, to on pomyślnie się buduje, ale sam test się nie powiedzie. (Działa poprawnie, gdy uruchomiony z ant z linii poleceń - i zmieniając WebDriver
do: driver = new FirefoxDriver();
) - Korzystanie selenu RC
To wyjście konsola w Jenkins:
EDIT: Właśnie zauważyłem możesz archiwizować plik wyjściowy Junit .xml po kompilacji w Jenkins. Otrzymuję wyjątek klasy nie znaleziono? Jest to dziwne, ponieważ jak powiedziałem, kompiluje się dobrze, gdy używa się ant
z wiersza poleceń.
Błąd jest następujący:
<error message="com.loggedin.CCBreadCrumb" type="java.lang.ClassNotFoundException">
java.lang.ClassNotFoundException: com.loggedin.CCBreadCrumb at
java.net.URLClassLoader$1.run(URLClassLoader.java:366) at
java.net.URLClassLoader$1.run(URLClassLoader.java:355) at
java.security.AccessController.doPrivileged(Native Method) at
java.net.URLClassLoader.findClass(URLClassLoader.java:354) at
java.lang.ClassLoader.loadClass(ClassLoader.java:423) at
sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) at
java.lang.ClassLoader.loadClass(ClassLoader.java:356) at java.lang.Class.forName0(Native
Method) at java.lang.Class.forName(Class.java:186)
</error>
Dzięki z góry za pomoc dowolnym kierunku lub może masz!
Ja też miałem problem podczas integracji Selenium 2 + Jenkins. Jestem w stanie przeprowadzić test selenu w jenkins. Ale nie jestem w stanie uruchomić przeglądarki przez Jnkins. Działa jak bezgłowy przeglądarka. Czy mogę wiedzieć, że pogoda jest możliwa? Jeśli tak, podziel się tym, jak to zrobić. Podziel się, jeśli masz ładne samouczki. – Manigandan
Tak, udało mi się to zrobić za pomocą firefoxa zarówno na MAC OSX 10.8.3 i Windows 7. Musisz użyć niestandardowej konfiguracji węzła sterownika sieci, jak wskazałem powyżej i powinien uruchomić broswer, jeśli ustawiłeś siatkę selenu z skonfigurowany firefox. Nie mogłem znaleźć żadnych dobrych tutoriali na ten temat. Powodzenia! – Curt