Какво е Apache Ant?
Докато създавате пълен софтуерен продукт, трябва да се погрижите за различни API на трети страни, техния път на класа, почистване на предишни изпълними двоични файлове, компилиране на нашия изходен код, изпълнение на изходен код, създаване на отчети и база за разполагане на кода и др. Ако тези задачи са изпълнени един по един ръчно, ще отнеме огромно време и процесът ще бъде склонен към грешки.
Тук идва значението на инструмент за изграждане като Ant. Той съхранява, изпълнява и автоматизира целия процес в последователен ред, споменат в конфигурационния файл на Ant (обикновено build.xml).
Полза от изграждането на Ant
- Ant създава жизнения цикъл на приложението, т.е. почиства, компилира, задава зависимост, изпълнява, докладва и т.н.
- Зависимостта на API на трета страна може да бъде зададена от Ant, т.е. пътят на класа на други Jar файлове е зададен от Ant build file.
- Създава се пълно приложение за доставка и внедряване от край до край.
- Това е прост инструмент за изграждане, при който всички конфигурации могат да бъдат направени с помощта на XML файл и които могат да бъдат изпълнени от командния ред.
- Това прави вашия код чист, тъй като конфигурацията е отделна от действителната логика на приложението.
Как да инсталирам Ant
Стъпките за инсталиране на Ant в Windows са както следва
Стъпка 1) Отидете на http://ant.apache.org/bindownload.cgi Изтеглете .zip файл от apache-ant-1.9.4-bin.zip
Стъпка 2) Разархивирайте папката и отидете на и копирайте пътя в корена на разархивираната папка
Стъпка 3) Отидете на Старт -> Компютър -> щракнете с десния бутон тук и изберете „Свойства“, след което щракнете върху Разширени системни настройки
Стъпка 4) Отваря се нов прозорец. Кликнете върху „Променлива на околната среда
... 'бутон.Стъпка 5) Щракнете върху „Ново“
... 'и задайте името на променливата като' ANT_HOME 'и стойността на променливата като основния път към разархивираната папка и щракнете върху OK.Стъпка 6) сега изберете променлива "Path" от списъка и щракнете върху "Редактиране" и добавете; % ANT_HOME% \ bin.
Рестартирайте системата веднъж и сте готови да използвате инструмента за изграждане на Ant сега.
Стъпка 7) За да проверите версията на вашия Ant с помощта на командния ред:
Мравка -версия
Разбиране на Build.xml
Build.xml е най-важният компонент на инструмента за изграждане на Ant. За проект на Java всички задачи, свързани с почистване, настройка, компилация и внедряване, са споменати в този файл във формат XML. Когато изпълним този XML файл с помощта на команден ред или която и да е IDE приставка, всички инструкции, записани в този файл, ще бъдат изпълнени последователно.
Нека разберем кода в примерен build.XML
- Етикетът на проекта се използва за споменаване на име на проект и атрибут basedir. Базисът е основната директория на приложение
<име на проекта = "YTMonetize" basedir = ".">
- Маркерите на свойствата се използват като променливи във файла build.XML, който ще се използва в следващите стъпки
<свойство = "build.dir" стойност = "$ {basedir} / build" /><име на свойство = "external.jars" value = ". \ resources" /><свойство = "ytoperation.dir" стойност = "$ {external.jars} / YTOperation" /><свойство = "src.dir" стойност = "$ {basedir} / src" />
- Целеви маркери, използвани като стъпки, които ще се изпълняват в последователен ред. Името атрибут е името на целта. Можете да имате множество цели в един build.xml
- маркерът path се използва за групиране на всички файлове, които се намират в общото местоположение
<път>
- етикетът pathelement ще зададе пътя до корена на общото местоположение, където се съхраняват всички файлове
- маркер pathconvert, използван за конвертиране на пътеки на всички често срещани файлове в маркера на пътя в формат на classpath на системата
- маркер за набор от файлове, използван за задаване на път на класа за различен буркан на трети страни в нашия проект
- Ехо маркерът се използва за отпечатване на текст на конзолата
- Изтриване на таг ще изчисти данните от дадена папка
<изтриване на dir = "$ {build.dir}" />
- Маркерът mkdir ще създаде нова директория
- javac таг, използван за компилиране на изходния код на java и преместване на .class файлове в нова папка
- тагът jar ще създаде jar файл от .class файлове
- маркерът на манифеста ще зададе основния ви клас за изпълнение
<манифест>
- атрибут 'зависимост', използван за направата на една цел да зависи от друга цел
<целево име = "изпълнение" зависи = "компилиране">
- java тагът ще изпълнява основната функция от буркана, създаден в целевата секция за компилиране
Стартирайте Ant с помощта на приставката Eclipse
За да стартирате Ant от eclipse, отидете на файла build.xml -> щракнете с десния бутон върху файла -> Run as
... -> щракнете върху Изграждане на файлПример:
Ще вземем малка примерна програма, която ще обясни много ясно функционалността на Ant. Структурата на нашия проект ще изглежда така -
Тук в този пример имаме 4 цели
- Задайте път на класа за външни буркани,
- Почистете предварително спазения код
- Компилирайте съществуващ java код
- Изпълнете кода
Guru99AntClass.class
пакет testAnt;импортиране на java.util.Date;публична класа Guru99AntClass {публична статична празнота main (String ... s) {System.out.println ("ПРОГРАМА ЗА ЗДРАВЕ GURU99 АНТ");System.out.println ("ДНЕШНАТА ДАТА Е ->" + currentDate ());}публичен статичен низ currentDate () {връщане на нова дата (). toString ();}}Build.xml
xml version = "1.0" encoding = "UTF-8" standalone = "no"?><име на проекта = "YTMonetize" basedir = "."><свойство = "build.dir" стойност = "$ {basedir} / build" /><име на свойство = "external.jars" value = ". \ resources" /><свойство = "ytoperation.dir" стойност = "$ {external.jars} / YTOperation" /><свойство = "src.dir" стойност = "$ {basedir} / src" /> атрибут 'зависи', използван, за да направи една цел да зависи от друга цел -><път> <изтриване на dir = "$ {build.dir}" /> <целево име = "изпълнение" зависи = "компилиране"> <манифест>
Как да изпълнявам TestNG код, използвайки Ant
Тук ще създадем клас с методи Testng и ще зададем пътя на класа за Тестване в build.xml.
Сега, за да изпълним метода testng, ще създадем друг файл testng.xml и ще извикаме този файл от файла build.xml.
Стъпка 1) Създаваме " Guru99AntClass.class" в пакет testAnt
Guru99AntClass.class
пакет testAnt;импортиране на java.util.Date;внос org.testng.annotations.Test;публична класа Guru99AntClass {@Тестpublic void Guru99AntTestNGMethod () {System.out.println ("ПРОГРАМА ЗА ЗДРАВЕ GURU99 АНТ");System.out.println ("ДНЕШНАТА ДАТА Е ->" + currentDate ());}публичен статичен низ currentDate () {връщане на нова дата (). toString ();}}
Стъпка 2) Създайте цел за зареждане на този клас в Build.xml
<целево име = "loadTestNG" зависи = "setClassPath">
Стъпка 3) Създайте testng.xml
testng.xml
xml version = "1.0" encoding = "UTF-8"?><класове>
Стъпка 4) Създайте Target в Build.xml, за да стартирате този TestNG код
Стъпка 5) Пълният Build.xml
xml version = "1.0" encoding = "UTF-8" standalone = "no"?><име на проекта = "YTMonetize" basedir = "."><свойство = "build.dir" стойност = "$ {basedir} / build" /><име на собственост = "external.jars" value = ". \ resource" /><свойство = "src.dir" стойност = "$ {basedir} / src" /><целево име = "loadTestNG" зависи = "setClassPath"><път> <изтриване на dir = "$ {build.dir}" />
Стъпка 6) Изход
Изтеглете горния файл
Мравка със селен Webdriver:
Досега научихме, че използвайки ANT, можем да поставим всички буркани на трети страни на определено място в системата и да зададем пътя им за нашия проект. Използвайки този метод, ние задаваме всички зависимости на нашия проект на едно място и го правим по-надежден за компилация, изпълнение и внедряване.
По същия начин, за нашите тестови проекти, използващи селен, можем лесно да споменем зависимостта от селен в build.xml и не е необходимо да добавяме път на клас от него ръчно в нашето приложение.
Така че сега можете да игнорирате споменатия по-долу традиционен начин за задаване на пътеки за клас за проект.
Пример:
Ще модифицираме предишния пример
Стъпка 1) Задайте свойството selenium.jars на селен, свързан с буркан в папката с ресурси
<свойство = "selenium.jars" стойност = ". \ selenium" />
Стъпка 2) В целевия setClassPath добавете селеновите файлове
<път>
Стъпка 3) Попълнете Build.xml:
xml version = "1.0" encoding = "UTF-8" standalone = "no"?><име на проекта = "YTMonetize" basedir = "."><свойство = "build.dir" стойност = "$ {basedir} / build" /><име на собственост = "external.jars" value = ". \ resource" /><свойство = "selenium.jars" стойност = ". \ selenium" /><свойство = "src.dir" стойност = "$ {basedir} / src" /><целево име = "loadTestNG" зависи = "setClassPath"><път> <изтриване на dir = "$ {build.dir}" />
Стъпка 4) Сега променете създадения по-рано клас Guru99AntClass.java с нов код.
Тук в този пример нашите стъпки, използващи селен, са:
- Отидете на http://demo.guru99.com/test/guru99home/
- Прочетете всички връзки към курсовете един по един
- Отпечатайте всички курсове хипервръзка на конзолата.
Guru99AntClass.java:
пакет testAnt;импортиране на java.util.List;внос org.openqa.selenium.By;импортиране на org.openqa.selenium.WebDriver;внос org.openqa.selenium.WebElement;импортиране на org.openqa.selenium.firefox.FirefoxDriver;внос org.testng.annotations.Test;публична класа Guru99AntClass {@Тестpublic void Guru99AntTestNGMethod () {Драйвер за WebDriver = нов FirefoxDriver ();driver.get ("http://demo.guru99.com/test/guru99home/");СписъкlistAllCourseLinks = driver.findElements (By.xpath ("// div [@ class = 'canvas-middle'] // a"));за (WebElement webElement: listAllCourseLinks) {System.out.println (webElement.getAttribute ("href"));}}}
Стъпка 5) След успешно изпълнение изходът ще изглежда така:
Изтеглете горния примерен файл
Резюме:
Ant е инструмент за изграждане на Java.
Ant използва за компилиране на код, внедряване, процес на изпълнение.
Ant може да бъде изтеглен от уебсайта на Apache.
Файл Build.xml, използван за конфигуриране на цели за изпълнение с помощта на Ant.
Ant може да се стартира от командния ред или подходящ IDE плъгин като eclipse.