2011-01-12 10 views
-2

Ich habe ein Testskript geschrieben. Ich benutze Java, JUnit und Selenium RC. Ich möchte dieses Skript mit einem ant-Befehl ausführen.Ant Aufgabe für Selen Skript

Wie schreibe ich eine ant-Aufgabe und richte meine build.xml-Datei ein, um diese neue Aufgabe auszuführen?

Antwort

1

Ein Selen-Testfall ist nur eine Erweiterung eines JUnit-Testfalls. Alles, was Sie tun müssen, ist nur einen Junit-Testfall in Ameisen laufen zu lassen. Das Ameisenhandbuch zeigt, wie man das sehr deutlich macht.

-1

Zuerst müssen Sie ANT von Apache ANT herunterladen. Dann extrahieren Sie diese Zip-Datei und legen sie auf Ihr Laufwerk. Sie müssen den Klassenpfad festlegen und den ANT-Pfad für Klassenpfad angeben. Danach öffnen Sie eine build.xml unter dem aktuellen Projekt, schreiben Sie die jar Datei Speicherort in 76 Zeile und schreiben Suite Name. Gehen Sie zur Eingabeaufforderung und geben Sie ant compile und ant run ein.

-1

Ich benutze den OnDemand Service von http://saucelabs.com der absolut rockt. Unten ist mein Ant-Skript zum Ausführen meines JUnit-Tests gegen Sauce Selabs-Server.

Sie können die Attribute sysproperty in der Junit-Task überspringen, wenn Sie keine Parameter an Ihren Test übergeben möchten. Rufen Sie die Parameter in Ihren Java-Testmethoden mit System.getProperty("...") ab. Ich finde es praktisch, Plattform, Browser und Version aus dem Ant-Skript heraus zu spezifizieren und nicht in den Testfällen fest zu codieren.

<?xml version="1.0" encoding="UTF-8" standalone="no"?> 
<project name="TestingStudieplads" basedir="." default="main"> 

    <property name="src.dir" value="src"/> 
    <property name="build.dir" value="build"/> 
    <property name="classes.dir" value="${build.dir}/classes"/> 
    <property name="main-class" value="TestingStudieplads"/> 
    <property name="lib.dir" value="selenium-2.24.1"/> 
    <property name="test.name" value="TestingStudieplads"/> 

    <path id="classpath"> 
     <fileset dir="${lib.dir}" includes="**/*.jar"/> 
     <pathelement location="${classes.dir}" /> 
    </path> 

    <target name="clean"> 
     <delete dir="${build.dir}"/> 
    </target> 

    <target name="compile"> 
     <mkdir dir="${classes.dir}"/> 
     <javac srcdir="${src.dir}" destdir="${classes.dir}" includeantruntime="false" classpathref="classpath"/> 
    </target> 

    <target name="main" depends="clean,run"/> 

    <target name="run" depends="compile"> 

     <junit fork="yes" haltonfailure="yes"> 

      <test name="${test.name}"/> 

      <sysproperty key="browser.name" value="Chrome"/> 
      <sysproperty key="browser.platform" value="Linux"/> 
      <sysproperty key="browser.version" value=""/> 

      <formatter type="plain" usefile="false"/> 
      <classpath refid="classpath"/> 
     </junit> 

    </target> 

</project> 

Meine Auswahl Layout ist

Test 
|- build.xml 
|- src 
| | TestingStudieplads.java 
|- selenium-2.24.1 
    | CHANGELOG 
    | selenium-java-2.24.1.jar 
    | libs 
     | dep1.jar 
     | dep2.jar 
     | dep3.jar 
     | ... 
Verwandte Themen