TestNG - Conecte com ANT
Neste capítulo, demonstraremos como executar o TestNG usando ANT. Vamos seguir as etapas abaixo -
Etapa 1: Baixe o Apache Ant
Baixe a última versão do Apache Ant
SO | Nome do Arquivo |
---|---|
janelas | 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 |
Etapa 2: definir o ambiente do Ant
Colocou o ANT_HOMEvariável de ambiente para apontar para o local do diretório base, onde as bibliotecas ANT são armazenadas em sua máquina. Vamos supor que armazenamos as bibliotecas Ant na pasta apache-ant-1.8.4.
SO | Resultado |
---|---|
janelas | Defina a variável de ambiente ANT_HOME para C: \ Arquivos de programas \ Apache Software Foundation \ apache-ant-1.8.4 |
Linux | Exportar ANT_HOME = / usr / local / apache-ant-1.8.4 |
Mac | Exportar ANT_HOME = / Library / apache-ant-1.8.4 |
Anexe a localização do compilador Ant ao caminho do sistema da seguinte maneira -
SO | Descrição |
---|---|
janelas | Anexe a string% ANT_HOME \ bin no final da variável do sistema, Path. |
Linux | Exportar PATH = $ PATH: $ ANT_HOME / bin / |
Mac | Não requerido. |
Etapa 3: Baixe o arquivo TestNG
Baixe os arquivos jar necessários http://www.testng.org.
SO | Nome do arquivo |
---|---|
janelas | testng-6.8.jar |
Linux | testng-6.8.jar |
Mac | testng-6.8.jar |
Etapa 4: Criar Estrutura do Projeto
Crie uma pasta TestNGWithAnt dentro C:\>TestNG_WORKSPACE.
Crie uma pasta src dentro C:\>TestNG_WORKSPACE>TestNGWithAnt.
Crie uma pasta test dentro C:\>TestNG_WORKSPACE>TestNGWithAnt.
Crie uma pasta lib dentro C:\>TestNG_WORKSPACE>TestNGWithAnt.
Crio MessageUtil classe em C:\>TestNG_WORKSPACE>TestNGWithAnt>src pasta.
/*
* 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;
}
}
Crie a classe TestMessageUtil em C:\>TestNG_WORKSPACE>TestNGWithAnt>src pasta.
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());
}
}
Copiar testng-6.8.jar em C:\>TestNG_WORKSPACE>TestNGWithAnt>lib pasta.
Crie ANT build.xml
Primeiro, precisamos definir a tarefa TestNG Ant da seguinte forma -
<taskdef name = "testng" classname = "org.testng.TestNGAntTask">
<classpath>
<pathelement location = "lib/testng-6.8.jar"/>
</classpath>
</taskdef>
Então, estaremos usando <testng> tarefa no Ant para executar nossos casos de teste TestNG.
o build.xml arquivo é o seguinte -
<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>
Execute o seguinte comando Ant.
C:\TestNG_WORKSPACE\TestNGWithAnt>ant
Verifique a saída.
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