How to run JUNIT testing framework using build tool ANT?

Tinjauan:

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. Kebanyakan pelanggan mahu melihat log ujian unit sebelum mendedahkan kod untuk ujian sistem dan ujian fungsi.

Pengenalan:

Apache semut adalah alat bina generik. Nama ANT berdiri singkatan untuk 'Another Nmakan Tberkesan '. Alat ini adalah serupa dengan 'yangmembuat ' utiliti di UNIX tetapi dilaksanakan menggunakan Java. Ia terutamanya digunakan untuk membina binari daripada kod sumber java berasaskan dan menggunakan binari yang dihasilkan untuk pelayan aplikasi yang telah ditetapkan. Ia juga boleh digunakan untuk menjana javadocs untuk pangkalan kod dan untuk melaksanakan suite ujian unit untuk seluruh pangkalan kod. Ant dengan kerjasama Junit membantu pemaju untuk mengikuti pendekatan pembangunan yang didorong oleh ujian.

Ant memerlukan Java pengkompil untuk dipasang mempunyai variabel persekitaran JAVA_HOME ditetapkan dengan nilai yang mencukupi. Ant menggunakan XML memfailkan untuk menentukan prosedur membina. Nama lalai fail ini build.xml. Sesetengah pemaju juga menggunakan memfailkan sifat iaitu build.properties untuk menentukan beberapa ciri-ciri e.g. yang nombor binaan versi dan parameter alam sekitar yang lain yang diperlukan kepada perubahan dari semasa ke semasa mengikut keperluan.

pemasangan: Dalam seksyen ini kita akan membincangkan tentang pemasangan ANT pada sistem operasi yang berbeza.

Fedora - pada RHEL, ANT boleh dipasang menggunakan arahan - yum memasang semut atau ia boleh dipasang menggunakan rpm - i perintah. Dalam kes ini, anda perlu memuat turun pakej semut pertama.

Debian - pada Ubuntu, ANT boleh dipasang menggunakan arahan - apt-get install semut.

Windows – Mengenai alam sekitar tingkap kita perlu memuat turun ant_ yang<VERSION_NO>.fail zip. Ini bundle zip perlu diekstrak dalam folder. Folder ini perlu ditakrifkan sebagai pembolehubah persekitaran ANT_HOME.

Fail sampel build.xml ditunjukkan sebagai di bawah:

PENYENARAIAN 1: fail build.xml sampel

<?short xml =”1.0″?>

<nama projek =”Ant-Test” lalai =”utama” basedir =”.”>

<!– Set pembolehubah yang kemudiannya boleh digunakan. –>

<!– Nilai harta yang diakses melalui ${} –>

<nama harta =”src.dir” lokasi =”src” />

<nama harta =”build.dir” lokasi =”bin” />

<nama harta =”dist.dir” lokasi =”dist” />

<nama harta =”docs.dir” lokasi =”docs” />

<!– Memadam dokumen yang sedia ada, membina dan direktori dist–>

<nama target =”bersih”>

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

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

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

</sasaran>

<!– Mencipta dokumen, membina dan direktori dist–>

<nama target =”MakeDir”>

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

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

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

</sasaran>

<!– Menyusun kod java (termasuk penggunaan perpustakaan untuk JUnit –>

<nama target =”compile” bergantung =”bersih, MakeDir”>

<javac srcdir =”${src.dir}” rampasan =”${build.dir}”>

</javac>

</sasaran>

<!– mencipta Javadoc –>

<nama target =”docs” bergantung =”compile”>

<Javadoc packagenames =”src” sourcepath =”${src.dir}” rampasan =”${docs.dir}”>

<!– Tentukan yang fail / direktori seharusnya dimasukkan, kami menggunakan semua –>

<set fail yang dir =”${src.dir}”>

<termasuk name =”**” />

</set fail>

</Javadoc>

</sasaran>

<!–Mencipta fail balang deployable –>

<nama target =”jar” bergantung =”compile”>

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

<nyata>

<sifat name =”Main-Kelas” value =”test.Main” />

</nyata>

</jar>

</sasaran>

<nama target =”utama” bergantung =”compile, jar, docs”>

<penerangan>sasaran utama</penerangan>

</sasaran>

</projek>

ANT dengan Junit:

Ant memberikan bantuan yang besar kepada pemaju java yang menggunakan pendekatan pembangunan yang didorong oleh ujian. Seperti yang kita tahu dalam ujian didorong metodologi pembangunan Junit adalah paksaan, ia sentiasa satu kelebihan jika kita mempunyai skrip automatik yang dijalankan semua kes-kes ujian Junit dalam satu pergi. Bukan itu sahaja skrip ini juga boleh digunakan jika kita mempunyai alat penyepaduan berterusan seperti Hudson. contoh kod berikut kami menunjukkan cara menggunakan ANT dengan Junit.

PENYENARAIAN 2: Fail Contoh java

package com.home.junit;

awam kelas SampleAdd {

awam int menambah(int x, int dan) {

pulangan x + dan;

}

}

PENYENARAIAN 3: fail Junit yang sepadan

pakej com.home.junit;

import org.junit.After;

import org.junit.Assert;

import org.junit.Before;

import org.junit.Test;

SampleAddTest kelas awam {

swasta SampleAdd sampleClass;

@Before

Persediaan tidak sah awam() {

sampleClass = SampleAdd baru();

}

@Test

awam tidak sah testAdd() {

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

}

@After

settleDown terbatal awam() {

sampleClass = null;

}

}

PENYENARAIAN 4: Skrip ANT untuk menyusun dan menjalankan ujian Junit yang

<?short xml =”1.0″?>

<nama projek =”JUNIT” lalai =”utama” basedir =”..”>

<!– Set pembolehubah yang kemudiannya boleh digunakan. –>

<!– Nilai harta yang diakses melalui ${} –>

<nama harta =”src.dir” lokasi =”src” />

<nama harta =”test.dir” lokasi =”ujian” />

<nama harta =”build.dir” lokasi =”bin” />

<nama harta =”build.test.dir” lokasi =”bin / ujian” />

<!– Pemboleh ubah yang digunakan untuk JUnit testin –>

<nama harta =”test.report.dir” lokasi =”port menyesuaikan” />

<!– Tentukan classpath yang meliputi junit.jar dan kelas selepas menyusun–>

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

<lokasi pathelement =”lib / junit-4.11.jar” />

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

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

</jalan>

<!– Memadam bina sedia ada, docs dan direktori dist–>

<nama target =”bersih”>

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

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

</sasaran>

<!– Mencipta bina, docs dan direktori dist–>

<nama target =”MakeDir”>

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

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

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

</sasaran>

<!– Menyusun kod java (termasuk penggunaan perpustakaan untuk JUnit –>

<nama target =”compile” bergantung =”bersih, MakeDir”>

<javac srcdir =”${src.dir}” rampasan =”${build.dir}”>

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

</javac>

<javac srcdir =”${test.dir}” rampasan =”${build.test.dir}”>

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

</javac>

</sasaran>

<!– Jalankan Ujian JUnit –>

<!– Output adalah XML, juga boleh menjadi nyata–>

<nama target =”junit” bergantung =”compile”>

<junit printsummary =”on” garpu =”benar” haltonfailure =”ya”>

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

<classpath>

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

</classpath>

<jenis Pemformat =”xml” />

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

<set fail yang dir =”${test.dir}”>

<termasuk name =”**/*Ujian * .java” />

</set fail>

</batchtest>

</junit>

</sasaran>

<nama target =”utama” bergantung =”compile, junit”>

<penerangan>sasaran utama</penerangan>

</sasaran>

</projek>

Apabila kita menjalankan skrip ini, ia mula-mula menyusun asas kod dan kemudian menjalankan ujian Junit pada kod yang disusun dan akhirnya menjana laporan ujian. Laporan ujian boleh dijana dalam mana-mana format. Untuk kemudahan kita telah menjana ini dalam format XML.

PENYENARAIAN 5: Laporan ujian Generated in format XML

<?short xml =”1.0″ pengekodan =”UTF-8″?>

-<Test suite timestamp =”2013-10-26T18:52:45″ masa =”0.077″ ujian =”1″ name =”com.home.junit.SampleAddTest” nama hos =”INDTAPPL132-001″ kegagalan =”0″ kesilapan =”0″>-<properties><nama harta =”java.vendor” value =”Oracle Corporation”/><nama harta =”sun.java.launcher” value =”SUN_STANDARD”/><nama harta =”eclipse.pdebuild.templates” value =”/F:/Utpal/Softs/Softs/eclipse-java-indigo-win32/eclipse/plugins/org.eclipse.pde.build_3.7.0.v20110512-1320/templates/”/><nama harta =”sun.management.compiler” value =”HotSpot Pelanggan Compiler”/><nama harta =”os.name” value =”Windows 7″/><nama harta =”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 menjadi jce.jar;C:\Program Files Java jre7 lib charsets.jar;C:\Program Files Java jre7 lib jfr.jar;C:\Program Files Java jre7 kelas”/><nama harta =”sun.desktop” value =”windows”/><nama harta =”java.vm.specification.vendor” value =”Oracle Corporation”/><nama harta =”ant.home” value =”F:\Utpal Softs Softs gerhana-java-indigo-win32 gerhana plugin org.apache.ant_1.8.2.v20110505-1300″/><nama harta =”java.runtime.version” value =”1.7.0_45-B18″/><nama harta =”user.name” value =”utpalb”/><nama harta =”build.dir” value =”F:\Kerja RnDSpace Junit bin”/><nama harta =”user.language” value =”dalam”/><nama harta =”test.report.dir” value =”F:\Kerja RnDSpace Junit testreport”/><nama harta =”sun.boot.library.path” value =”C:\Program Files Java jre7 bin”/><nama harta =”ant.project.default sasaran” value =”utama”/><nama harta =”ant.project.name” value =”JUNIT”/><nama harta =”java.version” value =”1.7.0_45″/><nama harta =”user.timezone” value =””/><nama harta =”sun.arch.data.model” value =”32″/><nama harta =”java.endorsed.dirs” value =”C:\Program Files Java jre7 lib disahkan”/><nama harta =”sun.cpu.isalist” value =”pentium_pro MMX pentium_pro Pentium MMX Pentium i486 i386 i86″/><nama harta =”sun.jnu.encoding” value =”Cp1252″/><nama harta =”file.encoding.pkg” value =”sun.io”/><nama harta =”file.separator” value =”\”/><nama harta =”java.specification.name” value =”API Java Platform Spesifikasi”/><nama harta =”java.class.version” value =”51.0″/><nama harta =”user.country” value =”US”/><nama harta =”java.home” value =”C:\Program Files Java jre7″/><nama harta =”java.vm.info” value =”mod campuran, berkongsi”/><nama harta =”ant.file” value =”F:\Kerja RnDSpace Junit membina build.xml”/><nama harta =”os.version” value =”6.1″/><nama harta =”path.separator” value =”;”/><nama harta =”java.vm.version” value =”24.45-B08″/><nama harta =”user.variant” value =””/><nama harta =”ant.library.dir” value =”F:\Utpal Softs Softs gerhana-java-indigo-win32 gerhana plugin org.apache.ant_1.8.2.v20110505-1300 lib”/><nama harta =”java.awt.printerjob” value =”sun.awt.windows.WPrinterJob”/><nama harta =”sun.io.unicode.encoding” value =”UnicodeLittle”/><nama harta =”ant.file.type.JUNIT” value =”file”/><nama harta =”awt.toolkit” value =”sun.awt.windows.WToolkit”/><nama harta =”user.script” value =””/><nama harta =”ant.file.JUNIT” value =”F:\Kerja RnDSpace Junit membina build.xml”/><nama harta =”eclipse.pdebuild.scripts” value =”/F:/Utpal/Softs/Softs/eclipse-java-indigo-win32/eclipse/plugins/org.eclipse.pde.build_3.7.0.v20110512-1320/scripts/”/><nama harta =”user.home” value =”C:\Users utpalb”/><nama harta =”java.specification.vendor” value =”Oracle Corporation”/><nama harta =”test.dir” value =”F:\Bekerja RnDSpace Junit ujian”/><nama harta =”java.library.path” value =”C:\Program Files Java jre7 bin;C:\Windows Sun Java bin;C:\Windows system32;C:\Windows;C:/Program Files / Java / jre7 / bin / pelanggan;C:/Program Files / Java / jre7 / bin;C:/Program Files / Java / jre7 / lib / i386;C:\Windows system32;C:\Windows;C:\Windows System32 WBEM;C:\Windows System32 WindowsPowerShell v1.0 ;C:\Program Files Java jdk1.6.0_10 bin;Ia:\apache-semut-1.8.2-bin apache-semut-1.8.2 bin;C:\Program Files Liquid Technologies Liquid XML Studio 2011 XmlDataBinder9 Redist9 cpp win32 bin;C:\Program Files TortoiseSVN bin;Ia:\Program Files Android android-sdk platform-tools;Ia:\Program Files Android android-sdk alat ;C:\Program Files QuickTime QTSystem ;D:\Sun AppServer bin;9;F:\Utpal Softs Softs gerhana-java-indigo-win32 gerhana;;.”/><nama harta =”java.vendor.url” value =”http://java.oracle.com/”/><nama harta =”java.vm.vendor” value =”Oracle Corporation”/><nama harta =”java.runtime.name” value =”Java(TM) SE Runtime Environment”/><nama harta =”sun.java.command” value =”org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner com.home.junit.SampleAddTest filtertrace = true haltOnError = haltOnFailure palsu = Pemformat benar = org.apache.tools.ant.taskdefs.optional.junit.SummaryJUnitResultFormatter showoutput = outputtoformatters palsu = logfailedtests benar = logtestlistenerevents benar = pemformat palsu = org.apache.tools.ant.taskdefs.optional.junit.XMLJUnitResultFormatter,F:\Kerja RnDSpace Junit testreport UJIAN-com.home.junit.SampleAddTest.xml crashfile = F:\Kerja RnDSpace Junit junitvmwatcher6288340937110531134.properties propsfile = F:\Kerja RnDSpace Junit junit7583515827572177542.properties”/><nama harta =”java.class.path” value =”F:\Kerja RnDSpace Junit lib junit-4.11.jar;F:\Kerja RnDSpace Junit lib hamcrest-core-1.3.jar;F:\Kerja RnDSpace Junit bin;F:\Bekerja RnDSpace Junit ujian bin ;F:\Kerja 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”/><nama harta =”ant.version” value =”Ant(TM) version 1.8.2 yang disusun berdasarkan Disember 20 2010″/><nama harta =”java.vm.specification.name” value =”Java Virtual Machine Spesifikasi”/><nama harta =”java.vm.specification.version” value =”1.7″/><nama harta =”sun.cpu.endian” value =”sedikit”/><nama harta =”sun.os.patch.level” value =”Service Pack 1″/><nama harta =”eclipse.pdebuild.home” value =”/F:/Utpal/Softs/Softs/eclipse-java-indigo-win32/eclipse/plugins/org.eclipse.pde.build_3.7.0.v20110512-1320/./”/><nama harta =”java.io.tmpdir” value =”C:\Users utpalb AppData Local Temp ”/><nama harta =”java.vendor.url.bug” value =”http://bugreport.sun.com/bugreport/”/><nama harta =”os.arch” value =”x86″/><nama harta =”java.awt.graphicsenv” value =”sun.awt.Win32GraphicsEnvironment”/><nama harta =”java.ext.dirs” value =”C:\Program Files Java jre7 lib ext;C:\Windows Sun Java lib ext”/><nama harta =”user.dir” value =”F:\Kerja RnDSpace Junit bina”/><nama harta =”build.test.dir” value =”F:\Bekerja RnDSpace Junit ujian bin ”/><nama harta =”line.separator” value =” “/><nama harta =”java.vm.name” value =”Java HotSpot(TM) Pelanggan VM”/><nama harta =”basedir” value =”F:\Kerja RnDSpace Junit”/><nama harta =”ant.java.version” value =”1.7″/><nama harta =”ant.core.lib” value =”F:\UtpalSoftsSoftseclipse-java-indigo-win32eclipsepluginsorg.apache.ant_1.8.2.v20110505-1300libant.jar”/><nama harta =”file.encoding” value =”Cp1252″/><nama harta =”java.specification.version” value =”1.7″/><nama harta =”src.dir” value =”F:\Kerja RnDSpace Junit src”/><nama harta =”ant.project.invoked-sasaran” value =”utama”/></properties><ujian masa kes =”0.003″ name =”testAdd” classname =”com.home.junit.SampleAddTest”/>-<sistem keluar>

<![CDATA[]]>

</sistem keluar>-<sistem err>

<![CDATA[]]>

</sistem err></ujian Suite>

Kesimpulan: Jadi setelah berbincang semua teori dan pelaksanaan butiran di atas kita boleh membuat kesimpulan dengan acara kemuncak berikut.

  • APACHE ANT adalah utiliti java berasaskan digunakan oleh pemaju Java untuk tujuan berikut
    • Untuk menjana binari dari kod sumber
    • Untuk menjana javadocs untuk kod sumber
    • Untuk menjalankan kes-kes ujian Junit pada asas kod
  • ANT dengan kerjasama Junit, membantu pemaju java untuk mengikuti metodologi Development Test Didorong yang

Harap anda telah menikmati artikel dan mempunyai pemahaman yang jelas tentang alat dan pelaksanaannya. Jika anda mempunyai sebarang pertanyaan, menghantar saya mel dan saya akan senang untuk menjawab pertanyaan anda.

 

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