TestNG - ANT ile Fiş

Bu bölümde, TestNG'nin ANT kullanılarak nasıl çalıştırılacağını göstereceğiz. Aşağıda verilen adımları takip edelim -

1. Adım: Apache Ant'ı indirin

Apache Ant'ın en son sürümünü indirin

işletim sistemi Arşiv Adı
pencereler 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

Adım 2: Karınca Ortamını Ayarlayın

Yı kur ANT_HOMEANT kitaplıklarının makinenizde depolandığı temel dizin konumuna işaret etmek için ortam değişkeni. Ant kitaplıklarını apache-ant-1.8.4 klasöründe sakladığımızı varsayalım.

işletim sistemi Çıktı
pencereler ANT_HOME ortam değişkenini C: \ Program Files \ Apache Software Foundation \ apache-ant-1.8.4 olarak ayarlayın.
Linux ANT_HOME = / usr / local / apache-ant-1.8.4'ü dışa aktar
Mac ANT_HOME = / Library / apache-ant-1.8.4'ü dışa aktar

Aşağıdaki gibi Sistem Yoluna Ant derleyici konumunu ekleyin -

işletim sistemi Açıklama
pencereler % ANT_HOME \ bin dizesini sistem değişkeninin, Yol'un sonuna ekleyin.
Linux Export PATH = $ PATH: $ ANT_HOME / bin /
Mac Gerekli değil.

3. Adım: TestNG Arşivini İndirin

Gerekli jar dosyalarını indirin http://www.testng.org.

işletim sistemi Arşiv adı
pencereler testng-6.8.jar
Linux testng-6.8.jar
Mac testng-6.8.jar

Adım 4: Proje Yapısı Oluşturun

  • Bir klasör oluşturun TestNGWithAnt içinde C:\>TestNG_WORKSPACE.

  • Bir klasör oluşturun src içinde C:\>TestNG_WORKSPACE>TestNGWithAnt.

  • Bir klasör oluşturun test içinde C:\>TestNG_WORKSPACE>TestNGWithAnt.

  • Bir klasör oluşturun lib içinde C:\>TestNG_WORKSPACE>TestNGWithAnt.

  • Oluşturmak MessageUtil sınıf C:\>TestNG_WORKSPACE>TestNGWithAnt>src Klasör.

/*
* 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;
   }   
}
  • TestMessageUtil sınıfı oluşturun C:\>TestNG_WORKSPACE>TestNGWithAnt>src Klasör.

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());
   }
}
  • Testng-6.8.jar dosyasını kopyalayın C:\>TestNG_WORKSPACE>TestNGWithAnt>lib Klasör.

ANT build.xml oluştur

Öncelikle TestNG Karınca görevini şu şekilde tanımlamamız gerekiyor -

<taskdef name = "testng" classname = "org.testng.TestNGAntTask">
   <classpath>
      <pathelement location = "lib/testng-6.8.jar"/>
   </classpath>
</taskdef>

O zaman kullanacağız <testng> TestNG test senaryolarımızı yürütmek için Ant'ta görev.

build.xml dosya aşağıdaki gibidir -

<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>

Aşağıdaki Ant komutunu çalıştırın.

C:\TestNG_WORKSPACE\TestNGWithAnt>ant

Çıkışı doğrulayın.

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