Steps to run JUnit test using Ant

JUnit & Ant

JUnit & Ant

Przegląd: In this document we will discuss about the build tool ant and unit testing framework JUnit. Both of these have become an integral part of java development. Both ant and JUnit are widely used in the java world. Większość klientów chciałbym zobaczyć dziennik testów jednostkowych przed wystawieniem kod do testowania systemu i testów funkcjonalnych.








Wprowadzenie

Apache Ant jest ogólnym narzędziem budowania. Stoiska Nazwa ANT skrócone do 'Kolejną przyjemną Tool'. To narzędzie jest podobna do 'make' narzędzia w systemie UNIX, ale jest realizowany przy użyciu języka Java. Stosowany jest przede wszystkim do budowania pakietów binarnych kod źródłowy Java i wdrażania na podstawie wygenerowanego pliku na serwerze aplikacji, który jest predefiniowany. It can also be used to generate java docs for a code base and to execute the unit test suite for the whole code base. Ant in collaboration with JUnit helps developer to follow the test driven development approach.

Ant wymaga kompilatora Java do zainstalowania że zmienna środowiskowa JAVA_HOME zestaw z jej odpowiednią wartość. Ant używa pliku XML do określenia procedury gromadzenia. Domyślna nazwa tego pliku jest build.xml. Niektórzy deweloperzy również użyć pliku właściwości mianowicie build.properties zdefiniować pewne właściwości np. numer wersji build i inne parametry środowiskowe, które są wymagane, aby zmienić od czasu do czasu w oparciu o potrzeby.

Instalacja

Fedora - Na RHEL, ANT można zainstalować za pomocą polecenia - yum install ant lub może być zainstalowany przy użyciu rpm - Rozkazuję. W tym przypadku należy najpierw pobrać pakiet ant.

DEBIAN - Na Ubuntu, ANT można zainstalować za pomocą polecenia - apt-get install mrówkę.

Okna – Środowisku Windows musimy pobrać ant_<VERSION_NO>.plik zip. Ten pakiet zip należy pobrać w folderze. Folder ten powinien być zdefiniowany jako zmiennej środowiskowej ANT_HOME.

Przykładowy plik build.xml jest pokazane jak w:

WYMIENIANIE KOLEJNO 1 – Sample build.xml file –

[Code]

<?xml version =”1.0″?>

<nazwa projektu =”Ant-Test” default =”główny” basedir =”.”>

<!– Ustawia zmienne, które mogą być później wykorzystane. –>

<!– Wartość nieruchomości jest dostępna za pośrednictwem ${} –>

<Nazwa obiektu =”src.dir” location =”src” />

<Nazwa obiektu =”build.dir” location =”bin” />

<Nazwa obiektu =”dist.dir” location =”dist” />

<Nazwa obiektu =”docs.dir” location =”docs” />

<!– Usuwa istniejący build, dokumentów i katalogu dist–>

<Nazwa target =”czysty”>

<usuwać dir =”${build.dir}” />

<usuwać dir =”${docs.dir}” />

<usuwać dir =”${dist.dir}” />

</cel>

<!– Tworzy kompilacji, dokumentów i katalogu dist–>

<Nazwa target =”MakeDir”>

<mkdir dir =”${build.dir}” />

<mkdir dir =”${docs.dir}” />

<mkdir dir =”${dist.dir}” />

</cel>

<!– Kompiluje kod java (w tym korzystanie z biblioteki dla JUnit –>

<Nazwa target =”compile” zależy =”czysty, MakeDir”>

<javac SRCDIR =”${src.dir}” konfiskata =”${build.dir}”>

</javac>

</cel>

<!– tworzy Javadoc –>

<Nazwa target =”docs” zależy =”compile”>

<Javadoc packagenames =”src” SourcePath =”${src.dir}” konfiskata =”${docs.dir}”>

<!– Określić, które pliki / Katalog powinien dostać włączone, zaliczamy wszystkie –>

<fileset dir =”${src.dir}”>

<obejmują name =”**” />

</fileset>

</javadoc>

</cel>

<!–Tworzy wdrożyć plik jar –>

<Nazwa target =”jar” zależy =”compile”>

<jar DestFile =”${dist.dir}\in.kolkalta.build.test.ant.jar” basedir =”${build.dir}”>

<oczywisty>

<nazwę atrybutu =”Main-Class” value =”test.Main” />

</oczywisty>

</jar>

</cel>

<Nazwa target =”główny” zależy =”compile, jar, docs”>

<opis>Główny cel</opis>

</cel>

</projekt>

[/Code]









ANT with JUnit

Ant stanowi doskonałą pomoc dla programistów Java, którzy korzystają z podejścia do rozwoju Test Driven. Jak wiemy w teście metodologię rozwoju JUnit jest przymus, to zawsze dodatkowy atut, jeśli mamy zautomatyzowany skrypt, który uruchamia wszystkie testów JUnit za jednym zamachem. Not only that this script can also be used if we have a continuous integration tool e.g Hudson. Nasz Następujący przykładowy kod ilustruje sposób wykorzystania Ant z JUnit.

WYMIENIANIE KOLEJNO 2 – A Sample java file –

[Code]

package com.home.junit;

publiczny klasa SampleAdd {

publiczny int dodać(int x, int i) {

powrót x + i;

}

}

[/Code]

WYMIENIANIE KOLEJNO 3 – The corresponding JUNIT file –

[Code]

pakiet com.home.junit;

import org.junit.After;

import org.junit.Assert;

import org.junit.Before;

import org.junit.Test;

public class SampleAddTest {

prywatne SampleAdd sampleClass;

@Przed

public void UstaWienia() {

sampleClass = new SampleAdd();

}

@Test

public void testAdd() {

Assert.assertEquals(5, sampleClass.add(3, 2));

}

@Po

public void settleDown() {

sampleClass = null;

}

}

[/Code]

WYMIENIANIE KOLEJNO 4 – The ANT script to compile and run the JUNIT test –

[Code]

<?xml version =”1.0″?>

<nazwa projektu =”JUNIT” default =”główny” basedir =”..”>

<!– Ustawia zmienne, które mogą być później wykorzystane. –>

<!– Wartość nieruchomości jest dostępna za pośrednictwem ${} –>

<Nazwa obiektu =”src.dir” location =”src” />

<Nazwa obiektu =”test.dir” location =”testy” />

<Nazwa obiektu =”build.dir” location =”bin” />

<Nazwa obiektu =”build.test.dir” location =”bin / testy” />

<!– Zmienne wykorzystywane do JUnit sprawd –>

<Nazwa obiektu =”test.report.dir” location =”Dostosowywanie portu” />

<!– Określ ścieżkę klasy, który obejmuje junit.jar i zajęcia po kompilacji–>

<id path =”junit.class.path”>

<pathelement location =”lib / JUnit-4.11.jar” />

<pathelement location =”lib / hamcrest-core-1.3.jar” />

<pathelement location =”${build.dir}” />

</ścieżka>

<!– Usuwa istniejący build, dokumentów i katalogu dist–>

<Nazwa target =”czysty”>

<usuwać dir =”${build.dir}” />

<usuwać dir =”${test.report.dir}” />

</cel> <!– Tworzy kompilacji, dokumentów i katalogu dist–>

<Nazwa target =”MakeDir”>

<mkdir dir =”${build.dir}” />

<mkdir dir =”${build.test.dir}” />

<mkdir dir =”${test.report.dir}” />

</cel>

<!– Kompiluje kod java (w tym korzystanie z biblioteki dla JUnit –>

<Nazwa target =”compile” zależy =”czysty, MakeDir”>

<javac SRCDIR =”${src.dir}” konfiskata =”${build.dir}”>

<classpath refid =”junit.class.path” />

</javac>

<javac SRCDIR =”${test.dir}” konfiskata =”${build.test.dir}”>

<classpath refid =”junit.class.path” />

</javac>

</cel>

<!– Przeprowadź testy JUnit –>

<!– Wyjście jest XML, może być również zwykły–>

<Nazwa target =”JUnit” zależy =”compile”>

<JUnit printsummary =”on” widelec =”prawdziwy” haltonfailure =”tak”>

<classpath refid =”junit.class.path” />

<classpath>

<pathelement location =”${build.test.dir}”/>

</classpath>

<Typ formater =”xml” />

<batchtest todir =”${test.report.dir}”>

<fileset dir =”${test.dir}”>

<obejmują name =”**/*Test * .java” />

</fileset>

</batchtest>

</JUnit>

</cel>

<Nazwa target =”główny” zależy =”compile, JUnit”>

<opis>Główny cel</opis>

</cel>

</projekt>

[/Code]

Kiedy uruchomić ten skrypt, it first compile the codebase and then runs the junit tests on the compiled code and finally generates a test report. Sprawozdanie z badań mogą być generowane w dowolnym formacie. Dla wygody ten generowane w formacie XML.

WYMIENIANIE KOLEJNO 5 – The Generated test report in XML format –

[Code]

<?xml version =”1.0″ encoding =”UTF-8″?>

-<Zestaw testowy timestamp =”2013-10-26T18:52:45″ czas =”0.077″ testy =”1″ name =”com.home.junit.SampleAddTest” hostname =”INDTAPPL132-001″ awarie =”0″ błędy =”0″>-<properties><Nazwa obiektu =”java.vendor” value =”Oracle Corporation”/><Nazwa obiektu =”sun.java.launcher” value =”SUN_STANDARD”/><Nazwa obiektu =”eclipse.pdebuild.templates” value =”/F:/Utpal/Softs/Softs/eclipse-java-indigo-win32/eclipse/plugins/org.eclipse.pde.build_3.7.0.v20110512-1320/templates/”/><Nazwa obiektu =”sun.management.compiler” value =”HotSpot Klient Compiler”/><Nazwa obiektu =”os.name” value =”System Windows 7″/><Nazwa obiektu =”sun.boot.class.path” value =”C:\Program Files Java jre7 lib resources.jar;C:\Program Files Java jre7 lib rt.jar;C:\Program Files Java jre7 lib sunrsasign.jar;C:\Program Files Java jre7 lib jsse.jar;C:\Program Files Java jre7 stać jce.jar;C:\Program Files Java jre7 lib charsets.jar;C:\Program Files Java jre7 lib jfr.jar;C:\Program Files Java Classes jre7”/><Nazwa obiektu =”sun.desktop” value =”okna”/><Nazwa obiektu =”java.vm.specification.vendor” value =”Oracle Corporation”/><Nazwa obiektu =”ant.home” value =”F:\Utpal Softs Softs eclipse-java-indygo-win32 eclipse plugins org.apache.ant_1.8.2.v20110505-1300″/><Nazwa obiektu =”java.runtime.version” value =”1.7.0_45-B18″/><Nazwa obiektu =”user.name” value =”utpalb”/><Nazwa obiektu =”build.dir” value =”F:\Work RnDSpace Junit bin”/><Nazwa obiektu =”user.language” value =”w”/><Nazwa obiektu =”test.report.dir” value =”F:\Work RnDSpace Junit testreport”/><Nazwa obiektu =”sun.boot.library.path” value =”C:\Program Files Java jre7 bin”/><Nazwa obiektu =”ant.project.default-target” value =”główny”/><Nazwa obiektu =”ant.project.name” value =”JUNIT”/><Nazwa obiektu =”java.version” value =”1.7.0_45″/><Nazwa obiektu =”user.timezone” value =””/><Nazwa obiektu =”sun.arch.data.model” value =”32″/><Nazwa obiektu =”java.endorsed.dirs” value =”C:\Program Files Java jre7 lib zatwierdzony”/><Nazwa obiektu =”sun.cpu.isalist” value =”pentium_pro MMX pentium_pro Pentium MMX Pentium i486 i386 I86″/><Nazwa obiektu =”sun.jnu.encoding” value =”CP1252″/><Nazwa obiektu =”file.encoding.pkg” value =”sun.io”/><Nazwa obiektu =”file.separator” value =”\”/><Nazwa obiektu =”java.specification.name” value =”Platforma Java API Specyfikacja”/><Nazwa obiektu =”java.class.version” value =”51.0″/><Nazwa obiektu =”user.country” value =”NAS”/><Nazwa obiektu =”java.home” value =”C:\Program Files Java jre7″/><Nazwa obiektu =”java.vm.info” value =”tryb mieszany, dzielenie się”/><Nazwa obiektu =”ant.file” value =”F:\Work RnDSpace Junit budować build.xml”/><Nazwa obiektu =”os.version” value =”6.1″/><Nazwa obiektu =”path.separator” value =”;”/><Nazwa obiektu =”java.vm.version” value =”24.45-B08″/><Nazwa obiektu =”user.variant” value =””/><Nazwa obiektu =”ant.library.dir” value =”F:\Utpal Softs Softs eclipse-java-indygo-win32 eclipse plugins org.apache.ant_1.8.2.v20110505-1300 lib”/><Nazwa obiektu =”java.awt.printerjob” value =”sun.awt.windows.WPrinterJob”/><Nazwa obiektu =”sun.io.unicode.encoding” value =”UnicodeLittle”/><Nazwa obiektu =”ant.file.type.JUNIT” value =”plik”/><Nazwa obiektu =”awt.toolkit” value =”sun.awt.windows.WToolkit”/><Nazwa obiektu =”user.script” value =””/><Nazwa obiektu =”ant.file.JUNIT” value =”F:\Work RnDSpace Junit budować build.xml”/><Nazwa obiektu =”eclipse.pdebuild.scripts” value =”/F:/Utpal/Softs/Softs/eclipse-java-indigo-win32/eclipse/plugins/org.eclipse.pde.build_3.7.0.v20110512-1320/scripts/”/><Nazwa obiektu =”user.home” value =”C:\Users utpalb”/><Nazwa obiektu =”java.specification.vendor” value =”Oracle Corporation”/><Nazwa obiektu =”test.dir” value =”F:\Work RnDSpace testy JUnit”/><Nazwa obiektu =”java.library.path” value =”C:\Program Files Java jre7 bin;C:\Windows Sun Java bin;C:\Windows system32;C:\Okna;C:/Program Files / Java / jre7 / bin / klient;C:/Program Files / Java / jre7 / bin;C:/Program Files / Java / jre7 / lib / i386;C:\Windows system32;C:\Okna;C:\Windows System32 Wbem;C:\Windows System32 WindowsPowerShell v1.0 ;C:\Program Files Java jdk1.6.0_10 bin;To:\apache-ant-1.8.2-bin apache-ant-1.8.2 bin;C:\Program Files płynne Technologies Ciecz XML Studio 2011 XmlDataBinder9 Redist9 CPP win32 bin;C:\Program Files TortoiseSVN bin;To:\android-sdk platform-tools Program Files Android ;To:\android-sdk tools Program Files Android ;C:\Program Files QuickTime QTSystem ;D:\Sun AppServer bin;9;F:\Utpal Softs Softs eclipse-java-indygo-win32 eclipse;;.”/><Nazwa obiektu =”java.vendor.url” value =”http://java.oracle.com/”/><Nazwa obiektu =”java.vm.vendor” value =”Oracle Corporation”/><Nazwa obiektu =”java.runtime.name” value =”Jawa(TM) SE Runtime Environment”/><Nazwa obiektu =”sun.java.command” value =”org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner com.home.junit.SampleAddTest filtertrace = true haltOnError = false haltOnFailure = true formater = org.apache.tools.ant.taskdefs.optional.junit.SummaryJUnitResultFormatter showoutput = fałszywe outputtoformatters = true logfailedtests = true logtestlistenerevents = false formater = org.apache.tools.ant.taskdefs.optional.junit.XMLJUnitResultFormatter,F:\Work RnDSpace Junit testreport TEST-com.home.junit.SampleAddTest.xml crashfile = F:\Work RnDSpace Junit junitvmwatcher6288340937110531134.properties propsfile = F:\Work RnDSpace Junit junit7583515827572177542.properties”/><Nazwa obiektu =”java.class.path” value =”F:\Work RnDSpace Junit lib JUnit-4.11.jar;F:\Work RnDSpace Junit lib hamcrest-core-1.3.jar;F:\Work RnDSpace Junit bin;F:\ Work RnDSpace Junit bin testy;F:\Work RnDSpace JUnit;C:\Program Files Java jdk1.6.0_10 jre lib rt.jar;F:\UtpalSoftsSoftseclipse-java-indigo-win32eclipsepluginsorg.apache.ant_1.8.2.v20110505-1300libant-launcher.jar;F:\UtpalSoftsSoftseclipse-java-indigo-win32eclipsepluginsorg.apache.ant_1.8.2.v20110505-1300libant.jar;F:\UtpalSoftsSoftseclipse-java-indigo-win32eclipsepluginsorg.apache.ant_1.8.2.v20110505-1300libant-junit.jar;F:\UtpalSoftsSoftseclipse-java-indigo-win32eclipsepluginsorg.apache.ant_1.8.2.v20110505-1300libant-junit4.jar”/><Nazwa obiektu =”ant.version” value =”Apache Ant(TM) version 1.8.2 skompilowany grudnia 20 2010″/><Nazwa obiektu =”java.vm.specification.name” value =”Specyfikacja maszyny wirtualnej Java”/><Nazwa obiektu =”java.vm.specification.version” value =”1.7″/><Nazwa obiektu =”sun.cpu.endian” value =”mało”/><Nazwa obiektu =”sun.os.patch.level” value =”Service Pack 1″/><Nazwa obiektu =”eclipse.pdebuild.home” value =”/F:/Utpal/Softs/Softs/eclipse-java-indigo-win32/eclipse/plugins/org.eclipse.pde.build_3.7.0.v20110512-1320/./”/><Nazwa obiektu =”java.io.tmpdir” value =”C:\Users utpalb AppData Local Temp ”/><Nazwa obiektu =”java.vendor.url.bug” value =”http://bugreport.sun.com/bugreport/”/><Nazwa obiektu =”os.arch” value =”x86″/><Nazwa obiektu =”java.awt.graphicsenv” value =”sun.awt.Win32GraphicsEnvironment”/><Nazwa obiektu =”java.ext.dirs” value =”C:\Program Files Java jre7 lib ext;C:\Windows Sun Java lib ext”/><Nazwa obiektu =”user.dir” value =”F:\Work RnDSpace Junit build”/><Nazwa obiektu =”build.test.dir” value =”F:\ Work RnDSpace Junit bin testy”/><Nazwa obiektu =”line.separator” value =” “/><Nazwa obiektu =”java.vm.name” value =”Java HotSpot(TM) klient VM”/><Nazwa obiektu =”basedir” value =”F:\Work RnDSpace JUnit”/><Nazwa obiektu =”ant.java.version” value =”1.7″/><Nazwa obiektu =”ant.core.lib” value =”F:\UtpalSoftsSoftseclipse-java-indigo-win32eclipsepluginsorg.apache.ant_1.8.2.v20110505-1300libant.jar”/><Nazwa obiektu =”file.encoding” value =”CP1252″/><Nazwa obiektu =”java.specification.version” value =”1.7″/><Nazwa obiektu =”src.dir” value =”F:\Work RnDSpace Junit src”/><Nazwa obiektu =”ant.project.invoked-cele” value =”główny”/></properties><Test czasu case =”0.003″ name =”testAdd” classname =”com.home.junit.SampleAddTest”/>-<System-out>

<![CDATA[]]>

</System-out>-<System-err>

<![CDATA[]]>

</System-err></Test Suite>

[/Code]







Wniosek

  • APACHE ANT narzędzie java oparte wykorzystywane przez programistów Java dla następujących celów :
    • Aby wygenerować pliki binarne z kodu źródłowego
    • Aby wygenerować Javadocs dla kodu źródłowego
    • Aby uruchomić testów JUnit na podstawie kodu
  • ANT we współpracy z JUnit, pomaga programistom Java, aby postępować zgodnie z metodologią opracowywania badań Driven

 

Tagged on: ,
============================================= ============================================== Buy best TechAlpine Books on Amazon
============================================== ---------------------------------------------------------------- electrician ct chestnutelectric
error

Enjoy this blog? Please spread the word :)

Follow by Email
LinkedIn
LinkedIn
Share