私は最近Antと格闘していて、それをWebDriverテストのドライバーにしようとしています。これまでのところ、次のbuild.xmlにアクセスしました(どこかから露骨にコピーされています)
<property name="src" value="./src" />
<property name="lib" value="d:/apache-ant-1.8.4/lib/" />
<property name="bin" value="./bin/" />
<property name="report" value="./report" />
<path id="test.classpath">
<pathelement location="${bin}" />
<fileset dir="${lib}">
<include name="**/*.jar" />
</fileset>
</path>
<target name="init">
<delete dir="${bin}" />
<mkdir dir="${bin}" />
</target>
<target name="compile" depends="init">
<javac source="1.6" srcdir="${src}" fork="true" destdir="${bin}" >
<classpath>
<pathelement path="${bin}">
</pathelement>
<fileset dir="${lib}">
<include name="**/*.jar" />
</fileset>
</classpath>
</javac>
</target>
<target name="exec" depends="compile">
<delete dir="${report}" />
<mkdir dir="${report}" />
<mkdir dir="${report}/xml" />
<junit printsummary="yes" haltonfailure="no">
<classpath>
<pathelement location="${bin}" />
<fileset dir="${lib}">
<include name="**/*.jar" />
</fileset>
</classpath>
<test name="com.yourcompany.selenium.ccloop.tb6NoInterested" haltonfailure="no" todir="${report}/xml" outfile="TEST-result">
<formatter type="xml" />
</test>
</junit>
<junitreport todir="${report}">
<fileset dir="${report}/xml">
<include name="TEST*.xml" />
</fileset>
<report format="frames" todir="${report}/html" />
</junitreport>
</target>
これで、antを実行するとすべてが正常にビルドされますが、テストが実行されず、NoClassDefFoundErrorが発生します。
org / apache / http / HttpHost
java.lang.NoClassDefFoundError:org / apache / http / HttpHost at org.openqa.selenium.chrome.ChromeDriver。(ChromeDriver.java:144)at org.openqa.selenium.chrome.ChromeDriver。(ChromeDriver.java:86)at com.yourcompany.selenium.ccloop.tb6NoInterested.setUp(不明なソース)原因:java.lang.ClassNotFoundException:org.apache.http.HttpHost at java.net.URLClassLoader $ 1.run(URLClassLoader.java:202)atjava。 security.AccessController.doPrivileged(Native Method)at java.net.URLClassLoader.findClass(URLClassLoader.java:190)at java.lang.ClassLoader.loadClass(ClassLoader.java:306)at java.lang.ClassLoader.loadClass(ClassLoader。 java:247)at java.lang.ClassLoader.loadClass(ClassLoader.java:247)N / A
com.yourcompany.selenium.ccloop.tb6NoInterested.tearDown(不明なソース)でのjava.lang.NullPointerException
パッケージ名はcom.yourcompany.selenium.ccloopです。テスト名はtb6NoInterestedです。
私はすべてのjarファイルをantlibフォルダーに持っています(hamcrest、junit、seleniumのもの)
私は何が間違っているのですか?