2013-05-22 2 views
0

Использование ant для запуска тестов testng, но оно не запускается и не показывает никаких ошибок. даже сообщение (Running Tests) не выводится на консоль. вот build.xml. сборка происходит успешно и создает JAR. оцените любую помощь по этому поводу.Задача testng не работает с ant

<?xml version="1.0" encoding="UTF-8"?> 
<project name="BANC"> 

<property name="project.path" value="." /> 
<property name="src" value="${project.path}/src" /> 
<property name="bin" value="${project.path}/bin" /> 
<property name="testngxmldir" value="${project.path}/src/com/portico/regressionsuite" /> 
<property name="bancJarFile.path" value="./build/BANC.jar" /> 

<!-- Set class path libraries to be used for compilation --> 
<path id="class.path"> 
<pathelement location="lib" path="lib/activation.jar"/> 
<pathelement location="lib" path="lib/commons-lang-2.4.jar"/> 
<pathelement location="lib" path="lib/jxl.jar"/> 
<pathelement location="lib" path="lib/logging-selenium-1.2.jar"/> 
<pathelement location="lib" path="lib/mail.jar"/> 
<pathelement location="lib" path="lib/ojdbc14.jar"/> 
<pathelement location="lib" path="lib/poi-3.0.2-FINAL.jar"/> 
<pathelement location="lib" path="lib/reportng-1.1.1.jar"/> 
<pathelement location="lib" path="lib/saxon-8.7.jar"/> 
<pathelement location="lib" path="lib/selenium-grid-demo-1.0.7.jar"/> 
<pathelement location="lib" path="lib/selenium-grid-demo-standalone-1.0.7.jar"/> 
<pathelement location="lib" path="lib/selenium-grid-hub-1.0.7.jar"/> 
<pathelement location="lib" path="lib/selenium-grid-hub-standalone-1.0.7.jar"/> 
<pathelement location="lib" path="lib/selenium-grid-remote-control-1.0.7.jar"/> 
<pathelement location="lib" path="lib/selenium-grid-remote-control-standalone-1.0.7.jar"/> 
<pathelement location="lib" path="lib/selenium-grid-tools-1.0.7.jar"/> 
<pathelement location="lib" path="lib/selenium-grid-tools-standalone-1.0.7.jar"/> 
<pathelement location="lib" path="lib/selenium-server-1.0.3-standalone.jar"/> 
<pathelement location="lib" path="lib/velocity-1.7.jar"/> 
<pathelement location="lib" path="lib/jna-3.4.0.jar"/> 
<pathelement location="lib" path="lib/sikuli-script.jar"/> 
<pathelement location="lib" path="lib/testng-6.8.jar"/> 
<pathelement location="lib" path="${bin}"/> 
</path> 

<!-- Compile targets--> 
<target name="banc"> 
    <echo message="Compiling BANC Source..." /> 
    <mkdir dir="${bin}" /> 
    <javac classpathref="class.path" destdir="${bin}" encoding="UTF-8" optimize="off" 
    debug="on" failonerror="true" srcdir="${src}" /> 
    <jar destfile="${bancJarFile.path}" basedir="${bin}" /> 
</target> 

<taskdef name="testng" classname="org.testng.TestNGAntTask"> 
    <classpath> 
     <pathelement location="lib/testng-6.8.jar"/> 
    </classpath> 
</taskdef> 

<target name="runTest"> 
<echo message="Running Tests..." /> 
    <testng classpathref="class.path" outputDir="${project.path}/test-output" 
    sourcedir="${bin}" haltOnfailure="true"> 
     <xmlfileset dir="${testngxmldir}" includes="regressionsuite.xml"/> 
    </testng> 
</target> 

</project> 
+0

Как вы управляете муравей? Файл ant не имеет ни корневого элемента с заданием по умолчанию, ни зависимостей между задачами. – creinig

+0

Это просто опечатка (теперь она исправлена). я делал пробный запуск, поэтому havent включал любые зависимости. Я попытался запустить муравья из eclipse и командной строки, но тот же результат. – Akbar

ответ

2

Как вы видите, вы не сообщаете муравьям, какие из целей запускать - поэтому он просто выбирает первый. Если вы запустите его с помощью ant banc runTest, он будет работать нормально.

Обычный способ сделать это - определить пустую цель, которая зависит от всех желаемых целевых значений, установленных по умолчанию в теге <project>. Кроме того, ваша цель «runTest» должна зависеть от «banc», поскольку для запуска тестов требуется, чтобы проект был создан заранее. В этом случае вы также можете просто сделать ant runTest - муравьев автоматически выполнит все зависимые задания в правильном порядке.

+0

Спасибо. «ant banc runTest» работал. Большая часть онлайн-документации на самом деле не упоминает, что задача должна быть указана, если между ними нет зависимостей. – Akbar

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