我写了一个测试脚本。我正在使用Java,JUnit和Selenium RC。我想使用ant命令运行此脚本。
如何编写ant任务并设置build.xml文件来运行此新任务?
答案 0 :(得分:1)
所有的selenium测试用例只是JUnit测试用例的扩展。所以你需要做的就是在ant中运行一个junit测试用例。蚂蚁手册显示了如何非常清楚地做到这一点。
答案 1 :(得分:-1)
首先,你必须从Apache ANT下载ANT。然后,您提取该zip文件并放置到您的驱动器。您必须设置类路径并在类路径上提供ANT路径。在此之后,在当前项目下打开build.xml
,将jar
文件位置写入76行并编写套件名称。转到命令提示符并键入ant compile
和ant run
。
答案 2 :(得分:-1)
我使用来自http://saucelabs.com的OnDemand服务。下面是我针对SauceLabs Selenium服务器运行JUnit测试的Ant脚本。
如果您不想将任何参数传递给测试,则可以跳过junit任务中的sysproperty
属性。使用System.getProperty("...")
检索Java测试方法中的参数。我觉得能够从Ant脚本中指定平台,浏览器和版本并且在测试用例中不对它们进行硬编码很方便。
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project name="TestingStudieplads" basedir="." default="main">
<property name="src.dir" value="src"/>
<property name="build.dir" value="build"/>
<property name="classes.dir" value="${build.dir}/classes"/>
<property name="main-class" value="TestingStudieplads"/>
<property name="lib.dir" value="selenium-2.24.1"/>
<property name="test.name" value="TestingStudieplads"/>
<path id="classpath">
<fileset dir="${lib.dir}" includes="**/*.jar"/>
<pathelement location="${classes.dir}" />
</path>
<target name="clean">
<delete dir="${build.dir}"/>
</target>
<target name="compile">
<mkdir dir="${classes.dir}"/>
<javac srcdir="${src.dir}" destdir="${classes.dir}" includeantruntime="false" classpathref="classpath"/>
</target>
<target name="main" depends="clean,run"/>
<target name="run" depends="compile">
<junit fork="yes" haltonfailure="yes">
<test name="${test.name}"/>
<sysproperty key="browser.name" value="Chrome"/>
<sysproperty key="browser.platform" value="Linux"/>
<sysproperty key="browser.version" value=""/>
<formatter type="plain" usefile="false"/>
<classpath refid="classpath"/>
</junit>
</target>
</project>
我的目录布局是
Test
|- build.xml
|- src
| | TestingStudieplads.java
|- selenium-2.24.1
| CHANGELOG
| selenium-java-2.24.1.jar
| libs
| dep1.jar
| dep2.jar
| dep3.jar
| ...