TestNG - Collegare con ANT
In questo capitolo, dimostreremo come eseguire TestNG utilizzando ANT. Seguiamo i passaggi indicati di seguito:
Passaggio 1: scarica Apache Ant
Scarica l'ultima versione di Apache Ant
OS | Nome archivio |
---|---|
finestre | apache-ant-1.8.4-bin.zip |
Linux | apache-ant-1.8.4-bin.tar.gz |
Mac | apache-ant-1.8.4-bin.tar.gz |
Passaggio 2: impostare l'ambiente Ant
Impostare il ANT_HOMEvariabile di ambiente in modo che punti alla posizione della directory di base, in cui le librerie ANT sono archiviate sulla macchina. Supponiamo di aver memorizzato le librerie Ant nella cartella apache-ant-1.8.4.
OS | Produzione |
---|---|
finestre | Impostare la variabile d'ambiente ANT_HOME su C: \ Program Files \ Apache Software Foundation \ apache-ant-1.8.4 |
Linux | Esporta ANT_HOME = / usr / local / apache-ant-1.8.4 |
Mac | Esporta ANT_HOME = / Library / apache-ant-1.8.4 |
Aggiungi la posizione del compilatore Ant a System Path come segue:
OS | Descrizione |
---|---|
finestre | Aggiungi la stringa% ANT_HOME \ bin alla fine della variabile di sistema, Path. |
Linux | Esporta PATH = $ PATH: $ ANT_HOME / bin / |
Mac | Non richiesto. |
Passaggio 3: scarica l'archivio TestNG
Scarica i file jar richiesti http://www.testng.org.
OS | Nome dell'archivio |
---|---|
finestre | testng-6.8.jar |
Linux | testng-6.8.jar |
Mac | testng-6.8.jar |
Passaggio 4: creazione della struttura del progetto
Crea una cartella TestNGWithAnt in C:\>TestNG_WORKSPACE.
Crea una cartella src in C:\>TestNG_WORKSPACE>TestNGWithAnt.
Crea una cartella test in C:\>TestNG_WORKSPACE>TestNGWithAnt.
Crea una cartella lib in C:\>TestNG_WORKSPACE>TestNGWithAnt.
Creare MessageUtil classe in C:\>TestNG_WORKSPACE>TestNGWithAnt>src cartella.
/*
* This class prints the given message on console.
*/
public class MessageUtil {
private String message;
//Constructor
//@param message to be printed
public MessageUtil(String message) {
this.message = message;
}
// prints the message
public void printMessage() {
System.out.println(message);
return message;
}
// add "Hi!" to the message
public String salutationMessage() {
message = "Hi!" + message;
System.out.println(message);
return message;
}
}
Crea la classe TestMessageUtil in C:\>TestNG_WORKSPACE>TestNGWithAnt>src cartella.
import org.testng.Assert;
import org.testng.annotations.Test;
public class TestMessageUtil {
String message = "Manisha";
MessageUtil messageUtil = new MessageUtil(message);
@Test
public void testPrintMessage() {
System.out.println("Inside testPrintMessage()");
Assert.assertEquals(message,messageUtil.printMessage());
}
@Test
public void testSalutationMessage() {
System.out.println("Inside testSalutationMessage()");
message = "Hi!" + "Manisha";
Assert.assertEquals(message,messageUtil.salutationMessage());
}
}
Copia testng-6.8.jar in C:\>TestNG_WORKSPACE>TestNGWithAnt>lib cartella.
Crea ANT build.xml
Innanzitutto, dobbiamo definire l'attività TestNG Ant come segue:
<taskdef name = "testng" classname = "org.testng.TestNGAntTask">
<classpath>
<pathelement location = "lib/testng-6.8.jar"/>
</classpath>
</taskdef>
Quindi, useremo <testng> task in Ant per eseguire i nostri casi di test TestNG.
Il build.xml il file è il seguente -
<project name = "TestNGTest" default = "test" basedir = ".">
<!-- Define <testng> task -->
<taskdef name = "testng" classname = "org.testng.TestNGAntTask">
<classpath>
<pathelement location = "lib/testng-6.8.jar"/>
</classpath>
</taskdef>
<property name = "testdir" location = "test" />
<property name = "srcdir" location = "src" />
<property name = "libdir" location = "lib" />
<property name = "full-compile" value="true" />
<path id = "classpath.base"/>
<path id = "classpath.test">
<fileset dir = "${libdir}">
<include name = "**/*.jar" />
</fileset>
<pathelement location = "${testdir}" />
<pathelement location = "${srcdir}" />
<path refid = "classpath.base" />
</path>
<target name = "clean" >
<delete verbose="${full-compile}">
<fileset dir = "${testdir}" includes="**/*.class" />
</delete>
</target>
<target name = "compile" depends="clean">
<javac srcdir = "${srcdir}" destdir = "${testdir}" verbose="${full-compile}">
<classpath refid = "classpath.test"/>
</javac>
</target>
<target name = "test" depends="compile">
<testng outputdir = "${testdir}" classpathref="classpath.test">
<xmlfileset dir = "${srcdir}" includes="testng.xml"/>
</testng>
</target>
</project>
Esegui il seguente comando Ant.
C:\TestNG_WORKSPACE\TestNGWithAnt>ant
Verifica l'output.
test:
[testng] [TestNG] Running:
[testng] C:\TestNG_WORKSPACE\TestNGWithAnt\src\testng.xml
[testng]
[testng] Inside testPrintMessage()
[testng] Manisha
[testng] Inside testSalutationMessage()
[testng] Hi!Manisha
[testng]
[testng] ===============================================
[testng] Plug ANT test Suite
[testng] Total tests run: 2, Failures: 0, Skips: 0
[testng] ===============================================
[testng]
BUILD SUCCESSFUL
Total time: 1 second