Main Contents

Selenium & TestNG

Mai 4, 2010

Hier eine Liste mit Problemen die ich beim ersten Einsatz vom Selenium & TestNG hatte und keine direkte Problemlösung im Netz gefunden habe.

Problem 1:
Man kann seine TestSuiten in mehrere SubSuiten unterteilen und über mehrere XML-Konfigurationen definieren.
Bsp:

  1. <?xml version=“1.0″ encoding=“UTF-8″?>
  2. <suite name=“suiten” verbose=“10″>
  3.         <suite-files>
  4.                 <suite-file path=“suiten/myTest1.xml”/>
  5.         </suite-files>
  6.         <suite-files>
  7.                 <suite-file path=“suiten/myTest2.xml”/>
  8.         </suite-files>
  9. </suite>

Leider kommt es bei diesem Setup zu einer NullPointerException

  1. [TestNG] Reporter org.testng.reporters.XMLReporter@be0e27 failed
  2.         at java.util.Calendar.setTime(Unknown Source)
  3.         at java.text.SimpleDateFormat.format(Unknown Source)
  4.         at java.text.SimpleDateFormat.format(Unknown Source)
  5.         at java.text.DateFormat.format(Unknown Source)
  6.         at org.testng.reporters.XMLReporter.addDurationAttributes(XMLReporter.java:144)

Scheinbar verlangt TestNG das in jedem Suite-File mind. ein konkreter Test enthalten ist.
Mit diesem Setup hats dann funktioniert:

  1. <?xml version=“1.0″ encoding=“UTF-8″?>
  2. <suite name=“suiten” verbose=“10″>
  3.         <suite-files>
  4.                 <suite-file path=“suiten/myTest1.xml”/>
  5.         </suite-files>
  6.         <suite-files>
  7.                 <suite-file path=“suiten/myTest2.xml”/>
  8.         </suite-files>
  9.         <test name=“StartStop”>
  10.                 <classes>
  11.                         <class name=“de.test.java.FakeTest”/>
  12.                 </classes>
  13.         </test>
  14. </suite>

Problem 2:
Um den kompletten Inhalt eines HTML-Elementes auszulesen gibt es folgende Möglichkeit:

  1. String tableContent = session().getAttribute(“//form[@id='test']/div/table”);

Dabei konnte allerdings der XPath durch die SingleQuotes nicht korrekt aufgelöst werden.

  1. ERROR: Invalid xpath: XPath parse error

Mit getText hats dann geklappt:

  1. String tableContent = session().getText(“//form[@id='test']/div/table”);

Im String tableContent sind dann alle sichtbaren Inhalte der Tabelle, durch Whitespaces getrennt, enthalten.

Filed under: Coding, Java | Comments (2)

2 Kommentare

  1. Gerhard Mai 23, 2010 @ 10:38

    Hello, for your TestNG problem, which I also encountered, I’ve just created:
    http://jira.opensymphony.com/browse/TESTNG-386

  2. admin Mai 23, 2010 @ 11:44

    thanx for the ticket!
    it would be better if you use this link: http://blog.davidgraesser.de/?p=134 in jira.

Hinterlasse einen Kommentar

This is a captcha-picture. It is used to prevent mass-access by robots. (see: www.captcha.net)

Du mußt die 5 Zeichen im Bild, (Zahlen von 0 - 9 und Buchstaben von A - F),
in das Feld eintragen und das Formular abschicken um den Download zu starten.

  

Ohje, das kann ich nicht lesen. Bitte, generiere mir eine