# 10a。 高级 WebDriver – 使用 Apache ANT

> 原文： [https://javabeginnerstutorial.com/selenium/10a-advanced-webdriver-apache-ant/](https://javabeginnerstutorial.com/selenium/10a-advanced-webdriver-apache-ant/)

大家好！ 您的构建中是否有 ANT？ 开玩笑！ 其实我不是。 同意这听起来很怪异，但不要害怕，因为我在这里！ （现在，这就是我所说的，押韵。）

今天，让我们考虑一下这个 Apache ANT 到底是什么，以及为什么它将它作为 WebDriver 框架构建中的重要构建块。 到本文结束时，您一般应该可以处理任何 ANT 项目。

*跳入：*

由 Apache Software Foundation 提供的**和 **N** 的 **T** 工具是用 **Java** 编写的**构建工具**。 它已经很老了（Maven 在这个领域赢得了胜利，Gradle 在相处中），非常受欢迎，并且在大多数项目中仍然可以找到。 Apache ANT 的优点在于，它仅执行被告知要做的事情。 引擎盖下没有太多魔术发生。 *（请注意，有时这可能是一把双刃剑！）***

创建可执行文件意味着

*   在 src 文件夹下编译所需的.java 文件
*   为 JAR 创建清单文件
*   将所有.class 文件和清单文件一起压缩
*   使用 jar 命令创建可执行文件

但是，使用 Apache ANT 可以通过简单的 **Target** 处理所有这些步骤（我们将在一分钟内看到 Target 是什么！）。

要完成的所有工作都以结构化和模块化的方式在 XML 文件中指定，从而很容易识别是否有问题。 这个文件被称为著名的“ **build.xml** ”。

Apache ANT 带有一个名为 build.xml 的默认构建文件。 我们总是可以编辑或创建一个新的 XML 文件来满足我们的需求。 这基本上是**命令行工具**。 因此，使用命令“ ant build_file_name.xml”从命令提示符运行 Apache ANT 非常容易。 最好的部分是，如果您没有重命名 build.xml（只需修改提供的默认值或创建您自己的名称并将其命名为 build.xml），那么只有命令“ ant”会自动知道要查找构建。 xml 并执行它的作用！

Apache ANT 具有强大的功能，足以超越“谢谢”的门槛！ 我们可以，

*   清理项目
*   编译源代码
*   生成可分发的 JAR 或 WAR
*   处理来自版本控制系统（例如 CVS，SVN 等）的代码
*   向指定级别的记录器和侦听器回显消息（错误，警告，信息，详细信息，调试信息）
*   创建或删除目录
*   复制，移动，删除文件
*   可以压缩，解压缩，tar，untar，unjar，unwar 文件
*   执行 JUnit 测试，测试脚本等。
*   通过 JDBC 对数据库执行一系列 SQL 语句
*   生成 JUnit 测试报告

*还有很多其他事情…*

听起来很吓人，但到目前为止，我刚才提到的每件事都可以通过 buildfile 来实现。

是时候忙于大肆宣传的 buildfile 的元素了。 这些都是用 XML 编写的。

***便笺*** ****： *以下信息足以使您熟悉 Apache ANT 构建文件。 有关深入的知识，请访问 Apache ANT 用户手册。 （http://ant.apache.org/manual/）*

每个构建文件都有

1.  项目 – 至少包含一个目标
2.  目标 – 执行工作单元的一组任务
3.  任务 – 可以执行的一段代码

示例 build.xml 文件如下，

![sample build.xml](data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20839%20425'%3E%3C/svg%3E)

<noscript><img alt="sample build.xml" class="alignnone size-full wp-image-12640" height="425" src="img/28116bee6867f10c68cb8a7b00821a1e.png" width="839"/><p>让我们一次将构建文件提取一个标签。</p><p><strong>项目</strong>：这具有三个属性。</p><ol><li>名称 – 项目名称</li><li>default – 如果未提供任何内容，则应执行的默认目标</li><li>baseDir – 从中计算文件中相对路径的基本目录。 “。” 指执行的当前目录</li></ol><p><strong>目标</strong>：如示例构建文件中所示，一个项目可以具有一个或多个目标。 目标是一组任务。 我们可以选择希望 ANT 执行的目标，并用逗号分隔它们的名称。 如果未指定目标，则将执行默认目标。</p><p>这里要注意的重要属性是“依赖”。 这指定了它所依赖的目标名称。 例如，编译目标将仅在其依赖的初始化目标执行后执行。 因此，depends 属性指定执行目标的顺序。</p><p><strong>任务</strong>：这是一段可以执行的代码。 每个任务可以具有一个或多个属性作为键值对。</p><p>句法：</p><p>&lt; <em>名称</em> <em> attribute1 </em> =” <em> value1 </em>” <em> attribute2 </em> =” <em> value2 </em>”…/ &gt;</p><p><em>名称</em>是任务的名称，<em>属性 N </em>和<em> valueN </em>分别是属性名称和值名称。</p><p>这是现成的<a href="https://ant.apache.org/manual/tasklist.html">内置任务</a>的长长列表。 我们也可以编写自己的任务。 （还记得吗？都是用 Java 编写的）。</p><p>您一定想知道，为什么要深入研究构建文件，而不是立即安装并开始执行操作！ 传递这么多 ANT 知识是有原因的。 随着我们在旅途中的进一步发展，您将对此表示赞赏。 请稍等...</p><p>现在开始营业！</p><p><strong>步骤 1 </strong>：转到“ https://ant.apache.org/bindownload.cgi”，然后单击“ apache-ant-1.10.2-bin.zip”以在下面下载.zip 文件 “蚂蚁的当前版本”。</p><p><img alt="Download link" class="alignnone size-full wp-image-12641" data-lazy-src="https://javabeginnerstutorial.com/wp-content/uploads/2018/04/1_downloadLink.jpg" height="98" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20572%2098'%3E%3C/svg%3E" width="572"/></p><noscript><img alt="Download link" class="alignnone size-full wp-image-12641" height="98" src="img/14970a7f07b1ccaa7596be317ad9fa33.png" width="572"/><p><strong>步骤 2：</strong>下载.zip 存档后，将所有文件提取到本地计算机上的目录中。</p><p><strong>步骤 3 </strong>：如下设置环境变量 ANT_HOME 和 Path，</p><p>右键点击“计算机”-&gt;属性-&gt;高级系统设置-&gt;“高级”标签-&gt;环境变量-&gt;在系统变量下单击“新建”。</p><p>ANT_HOME 设置为提取 Apache ANT 文件的文件夹的路径。</p><p><img alt="System variable settings" class="alignnone size-full wp-image-12642" data-lazy-src="https://javabeginnerstutorial.com/wp-content/uploads/2018/04/2_SystemVariable.jpg" height="162" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20376%20162'%3E%3C/svg%3E" width="376"/></p><noscript><img alt="System variable settings" class="alignnone size-full wp-image-12642" height="162" src="img/ba0bc910e93456af8ef5bbf18bafd97b.png" width="376"/><p>类似地，编辑 Path 变量以包含% ANT_HOME% \ bin。</p><p><strong>步骤 4 </strong>：通过在“命令提示符”中键入以下命令来验证是否已安装 Apache ANT</p><p><em>蚂蚁版本</em></p><p><img alt="ANT version check in cmd" class="alignnone size-full wp-image-12643" data-lazy-src="https://javabeginnerstutorial.com/wp-content/uploads/2018/04/3_CmdVersionCheck.jpg" height="86" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20354%2086'%3E%3C/svg%3E" width="354"/></p><noscript><img alt="ANT version check in cmd" class="alignnone size-full wp-image-12643" height="86" src="img/418f05483293c425772a4636e1d0364c.png" width="354"/><p><strong>步骤 5：</strong>下一个任务是打开 Eclipse IDE，</p><li>右键单击 Java 项目-&gt;导出</li><li>在“常规”下，选择“蚂蚁构建文件”，然后点击“下一步”</li><li>确保已选择所需的项目</li><li>取消选中“创建目标以使用 Eclipse 编译器编译项目”，以删除对 Eclipse 的任何依赖</li><p><img alt="Generating ANT buildfile" class="alignnone size-full wp-image-12638" data-lazy-src="https://javabeginnerstutorial.com/wp-content/uploads/2018/04/4_Buildfiles-1.jpg" height="407" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20509%20407'%3E%3C/svg%3E" width="509"/></p><noscript><img alt="Generating ANT buildfile" class="alignnone size-full wp-image-12638" height="407" src="img/f6b7286b63d7900c3782225e686a6833.png" width="509"/><p>单击“完成”以查看自动生成的 eclipse 文件。</p><p>就是这样！ 您已经准备好将所有项目作为 ANT 构建运行。 这很简单，不是吗？</p><p><strong> <em>即时贴：</em> </strong> <em> Eclipse 与 ANT 集成在一起。 为了确保 Eclipse 的“蚂蚁之家”指向最新版本的 ANT，请单击 Windows-&gt;首选项-&gt; Ant-&gt;运行时。 点击“类路径”标签。 展开“蚂蚁房屋入境”并验证路径。 如果指向的是其他版本，请单击“蚂蚁之家”并浏览用于提取 Apache ANT 文件的文件夹的位置。 </em></p><p>在我们的下一篇文章中，让我们做到这一点，并在 ANT 目标的帮助下生成 JUnit 报告。</p><p>安装愉快！</p><div class="sticky-nav" style="font-size: 15px;"><div class="sticky-nav-image"></div><div class="sticky-nav-holder"><div class="sticky-nav_item"><h6 class="heading-sm">下一篇文章</h6></div><h5 class="sticky-nav_heading " style="font-size: 15px;"><a href="https://javabeginnerstutorial.com/selenium/10b-advanced-webdriver-generating-junit-reports/" title="10b. Advanced WebDriver – Generating JUnit Report"> 10b。 高级 WebDriver – 生成 JUnit 报告</a></h5></div></div> </body> </html></noscript>