[英]I try to create a build in ant were it create a html report which will start my .class file
您好,我嘗試在ant中創建一個構建,如果它創建了一個html報告,它將從eclips啟動我的.class文件
”
<property name="src" value="D:/Automation/eclipse/MyWork/OpenCart/src" />
<property name="lib" value="D:/Automation/eclipse/MyWork/OpenCart/lib/" />
<property name="bin" value="D:/Automation/eclipse/MyWork/build" />
<property name="report" value="d:/Automation/report" />
<path id="test.classpath">
<pathelement location="${bin}"/>
<fileset dir="${lib}">
<include name="${lib}/junit.jar" />
</fileset>
</path>
<target name="init">
<delete dir="${bin}" />
<mkdir dir="${bin}" />
</target>
<target name="compile" depends="init">
<javac source="1.7" srcdir="${src}" fork="true" destdir="${bin}" includeantruntime="false" >
<classpath>
<pathelement path="${bin}">
</pathelement>
<fileset dir="${lib}">
<include name="${src}/TestCases/OpenCart.class" />
</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="${src}/TestCases/OpenCart.class" />
</fileset>
</classpath>
<test name="com.selftechy.seltests.SeleniumTest" 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>
”
我收到錯誤消息:“
生成文件:D:\\ Automation \\ eclipse \\ MyWork \\ OpenCart \\ Build.xml init:
[刪除]刪除目錄D:\\ Automation \\ eclipse \\ MyWork \\ build [mkdir]創建的目錄:D:\\ Automation \\ eclipse \\ MyWork \\ build編譯:[javac]將1個源文件編譯為D:\\ Automation \\ eclipse \\ MyWork \\構建[javac] D:\\ Automation \\ eclipse \\ MyWork \\ OpenCart \\ src \\ OpenCart.java:3:錯誤:包com.thoughtworks.selenium不存在[javac]導入com.thoughtworks.selenium。 ; [javac] ^ [javac] D:\\ Automation \\ eclipse \\ MyWork \\ OpenCart \\ src \\ OpenCart.java:5:錯誤:包org.junit不存在[javac] import org.junit.After; [javac] ^ [javac] D:\\ Automation \\ eclipse \\ MyWork \\ OpenCart \\ src \\ OpenCart.java:6:錯誤:包org.junit不存在[javac] import org.junit.Before; [javac] ^ [javac] D:\\ Automation \\ eclipse \\ MyWork \\ OpenCart \\ src \\ OpenCart.java:7:錯誤:包org.junit不存在[javac] import org.junit.Rule; [javac] ^ [javac] D:\\ Automation \\ eclipse \\ MyWork \\ OpenCart \\ src \\ OpenCart.java:8:錯誤:包org.junit不存在[javac] import org.junit.Test; [javac] ^ [javac] D:\\ Automation \\ eclipse \\ MyWork \\ OpenCart \\ src \\ OpenCart.java:9:錯誤:包org.junit.rules不存在[javac] import org.junit.rules.ErrorCollector; [javac] ^ [javac] D:\\ Automation \\ eclipse \\ MyWork \\ OpenCart \\ src \\ OpenCart.java:11:錯誤:包org.junit不存在[javac]導入靜態org.junit.Assert。 ; [javac] ^ [javac] D:\\ Automation \\ eclipse \\ MyWork \\ OpenCart \\ src \\ OpenCart.java:14:錯誤:找不到符號[javac]私有硒硒; [javac] ^ [javac]符號:類Selenium [javac]位置:類OpenCart [javac] D:\\ Automation \\ eclipse \\ MyWork \\ OpenCart \\ src \\ OpenCart.java:17:錯誤:找不到符號[javac] public ErrorCollector errorCollector =新的ErrorCollector(); [javac] ^ [javac]符號:類ErrorCollector [javac]位置:類OpenCart [javac] D:\\ Automation \\ eclipse \\ MyWork \\ OpenCart \\ src \\ OpenCart.java:16:錯誤:找不到符號[javac] @Rule [javac] ^ [javac]符號:類規則[javac]位置:類OpenCart [javac] D:\\ Automation \\ eclipse \\ MyWork \\ OpenCart \\ src \\ OpenCart.java:19:錯誤:找不到符號[javac] @Before [javac] ^ [javac]符號:類[javac]位置之前:類OpenCart [javac] D:\\ Automation \\ eclipse \\ MyWork \\ OpenCart \\ src \\ OpenCart.java:25:錯誤:找不到符號[javac] @Test [javac] ^ [javac]符號:類測試[javac]位置:類OpenCart [javac] D:\\ Automation \\ eclipse \\ MyWork \\ OpenCart \\ src \\ OpenCart.java:128:錯誤:找不到符號[javac] @After [javac] ^ [javac]符號:類[javac]位置之后:類OpenCart [javac] D:\\ Automation \\ eclipse \\ MyWork \\ OpenCart \\ src \\ OpenCart.java:17:錯誤:找不到符號[javac]公共ErrorCollector errorCollector =新的ErrorCollector(); [javac] ^ [javac]符號:類ErrorCollector [javac]位置:類OpenCart [javac] D:\\ Automation \\ eclipse \\ MyWork \\ OpenCart \\ src \\ OpenCart.java:21:錯誤:找不到符號[javac]硒=新的DefaultSelenium(“ localhost”,4444,“ * chrome”,“ http:// IP /”); [javac] ^ [javac]符號:類DefaultSelenium [javac]位置:類OpenCart [javac] 15錯誤建立失敗D:\\ Automation \\ eclipse \\ MyWork \\ OpenCart \\ Build.xml:23:編譯失敗; 有關詳細信息,請參見編譯器錯誤輸出。
總時間:1秒
$ {lib}包含了我用來創建此類的所有庫,並且只運行100%的類工作,但是當我嘗試在eclips中將其作為ant構建運行時,它給了我這個錯誤
我已將%JAVA_HOME%設置為jdk,並在cmd中運行javac,它發現junit.jar位於$ {lib}和%ANT_HOME%/ lib和%JAVA_HOME%/ lib中
請幫忙 !!!
嘗試以下build.xml。 請記住,您需要在此文件中手動進行以下更改
請注意,我已將具有許多其他功能的build.xml更改為您喜歡的功能。 我已經非常仔細地對其進行了更新,盡管我想您可以做的很少會因錯誤而留下一些更改。 仍然,如果您發現任何問題,我將竭盡所能為您提供幫助。
<project name="ProjectName" basedir=".">
<property name="home.dir" value="${basedir}"/>
<property name="build.dir" value="${home.dir}/build"/>
<property name="src.dir" value="${home.dir}/src"/>
<property name="report.dir" value="${home.dir}/report" />
<property name="lib.dir" value="H:/Selenium/jar_collection"/>
<!-- setClassPath -->
<target name="setClassPath">
<path id="classpath_jars">
<pathelement path="${basedir}/" />
<fileset dir="${lib.dir}" includes="*.jar" />
</path>
<pathconvert pathsep=":" property="test.classpath" refid="classpath_jars" />
</target>
<!-- build -->
<target name="build">
<mkdir dir="${build.dir}"/>
<tstamp>
<format property="timestamp" pattern="dd-MM-yyyy_(HH-mm-ss)"/>
</tstamp>
<property name="build.log.dir" location="${basedir}/buildlogs"/>
<mkdir dir="${build.log.dir}"/>
<property name="build.log.filename" value="build_${timestamp}.log"/>
<record name="${build.log.dir}/${build.log.filename}" loglevel="verbose" append="false"/>
<echo message="build logged to ${build.log.filename}"/>
</target>
<!-- Clean -->
<target name="clean">
<echo message="deleting existing build directory"/>
<delete dir="${build.dir}"/>
</target>
<!-- Compile -->
<target name="compile" depends="clean,build,setClassPath">
<echo message="classpath:${test.classpath}"/>
<echo message="compiling.........."/>
<javac destdir="${build.dir}" srcdir="${src.dir}" classpath="${test.classpath}"/>
</target>
<!-- Execute -->
<target name="exec" depends="compile">
<delete dir="${report.dir}" />
<mkdir dir="${report.dir}" />
<mkdir dir="${report.dir}/xml" />
<junit printsummary="yes" haltonfailure="no">
<classpath>
<pathelement location="${build.dir}" />
<fileset dir="${lib.dir}">
<include name="${src.dir}/TestCases/OpenCart.class" />
</fileset>
</classpath>
<test name="com.selftechy.seltests.SeleniumTest" haltonfailure="no" todir="${report.dir}/xml" outfile="TEST-result">
<formatter type="xml" />
</test>
</junit>
<junitreport todir="${report.dir}">
<fileset dir="${report.dir}/xml">
<include name="TEST*.xml" />
</fileset>
<report format="frames" todir="${report.dir}/html" />
</junitreport>
</target>
</project>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.