2012-06-06 5 views
0

В настоящее время я борюсь с Ant, пытаясь сделать его драйвером для моих тестов WebDriver. До сих пор я получил следующий build.xml (явно скопирован из)Ant jUnit WebDriver - NoClassDefFoundError

<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> 

Теперь, когда я бег муравья все получает строить хорошо, но тест не запускается и Я получаю 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(Unknown Source) Caused by: java.lang.ClassNotFoundException: org.apache.http.HttpHost at java.net.URLClassLoader$1.run(URLClassLoader.java:202) at java.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

java.lang.NullPointerException at com.yourcompany.selenium.ccloop.tb6NoInterested.tearDown(Unknown Source)

Имя пакета com.yourcompany.selenium.ccloop имени Теста tb6NoInterested

У меня есть все банки в муравьиной Lib папки (в Hamcrest, JUnit, селен из них)

Что я Я делаю неправильно?

ответ

1

Кажется, что httpcore from apache нет в пути к классам.

org/apache/http/HttpHost - это класс в этой библиотеке.

Обычно я использую findjar, чтобы найти, какие банки содержат классы, когда я получаю удивительный NoClassDefFoundError.

+0

спасибо! что (и еще несколько отсутствующих банок) решили проблему – tom

Смежные вопросы