当前位置: 首页 > 面试题库 >

如何在詹金斯上运行TestNG测试

子车海
2023-03-14
问题内容

我正在尝试从Jenkins运行TestNG测试(在一个包含的Java项目中),但是没有运气。

似乎Jenkins的TestNG插件(https://wiki.jenkins-ci.org/display/JENKINS/testng-
plugin
)仅发布TestNG测试的结果,但实际上不运行测试类…或我错了吗?

无论如何,我该如何在Jenkins的TestNG项目中实际运行TestNG测试,或者甚至有可能?例如,是否必须使用命令行语句或批处理文件(在Windows
Server 2008上)?

任何帮助,不胜感激。

PS
我尝试在Jenkins中输入一个用于该项目的构建后命令行以运行TestNG测试,但由于找不到TestNG的类路径而很难。我发布了一个有关无法从命令行运行TestNG的问题,因此我放弃了这条路线:


问题答案:

如上所述,请使用以下ant脚本运行TestNG单元测试。请调整以下代码以满足您的要求。

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project basedir="." default="build" name="Ant Play">
    <property name="classes.dir" value="bin" />
    <property name="report.dir" value="test-output" />
    <path id="classpath">
        <fileset dir="lib">
            <include name="**/*.jar"/>
         </fileset>
        <pathelement path="${basedir}\${classes.dir}"/>
    </path>
    <target name="init">
        <mkdir dir="${classes.dir}"/>
        <copy includeemptydirs="false" todir="${classes.dir}">
            <fileset dir="src">
                <exclude name="**/*.java"/>
            </fileset>
        </copy>
    </target>
    <target name="clean">
        <delete dir="${classes.dir}"/>
    </target>
    <target depends="clean" name="cleanall"/>
    <target depends="build-project" name="build"/>
    <target depends="init" name="build-project">
        <echo message="${ant.project.name}: ${ant.file}"/>
        <javac debug="true" includeantruntime="false" destdir="${classes.dir}">
            <src path="src"/>
            <classpath refid="classpath"/>
        </javac>
    </target>
    <target  depends="build" name="runTests" description="Running tests" >
        <echo>Running Tests...</echo>
        <taskdef resource="testngtasks" classpathref="classpath"/>
        <testng outputDir="${report.dir}"
            haltonfailure="true"
            useDefaultListeners="false"
            listeners="org.uncommons.reportng.HTMLReporter"
            classpathref="classpath">
            <xmlfileset dir="${basedir}" includes="testng.xml"/>
            <!--<classfileset dir="${classes.dir}" includes="**/*.class" />-->
        </testng>
    </target>
</project>

如果您遇到任何问题,请告诉我。顺便说一句,请使用Jenkins ant插件/任务运行此脚本



 类似资料:
  • 问题内容: 我的詹金斯装在 bat文件位于 当我从cmd运行此bat文件时,一切正常。但是当我尝试从jenkins执行Image中提到的批处理命令时,Jenkins显示错误为 构建步骤“执行Windows批处理命令”将构建标记为失败 另外,在je​​nkins文件夹中,会自动用工作标题名称创建工作区文件夹。你们能详细解释一下吗 问题答案: Tatkal,您无法执行图片中的命令, 你为什么不尝试 C

  • > 我希望能够与Jenkins一起使用硒2。 我是两者的新手,所以请原谅我的无知。 我注意到了下面这个jenkins的插件,并安装了它。 我有一个基类如下: 我在Jenkins的Selenium插件上有以下配置: .. 一旦我尝试构建该项目并在Jenkins中运行JUnit selenium测试,它就成功构建,但它自己的测试失败了。( 编辑:我刚刚注意到您可以在Jenkins中构建后存档JUnit

  • 问题内容: 我有一些正在使用Jenkins运行的自动化测试。 我已经将Jenkins连接到我的GitSwarm,它从我的分支中提取代码, 然后将其执行。 我已经为Jenkins安装了“并行测试作业执行插件”。 在插件中,我指定了要分三批运行的测试 屏幕截图 还有什么我应该指定的吗?我认为我不必这样做,因为 我已经连接到GitSwarm来运行代码。控制台输出似乎 另有说明! 在工作空间C:\ Jen

  • 问题内容: 我已经配置了一个jenkins ubuntu奴隶,我想在它上运行我的gradle构建(与gradle插件)。问题是,当运行詹金斯构建工作时,我得到: 在从属服务器(相同用户)的命令行上运行相同的gradle命令时,它将成功运行。 问题答案: 找到了解决方法!我已经开始使用gradle包装器来运行gradle构建。我做了两件事: 按照本页上的说明创建gradlew(和其他文件)并在我的存

  • 问题内容: 我正在尝试在jenkins上配置MSTest构建插件,但出现以下错误: 该配置仅将TestResult.trx指定为ResultFileName。该文件未版本化,我希望可以在每个版本上创建该文件。 为此需要做什么? 问题答案: 我也有这个完全相同的错误消息! 我的建议是替换“用MSTest运行单元测试”步骤。使用“执行Windows批处理命令”步骤。这对我有用。 命令 使用这种技术,您

  • 我用selenium IDE记录了一些简单的硒测试。现在我想在詹金斯进行这些测试。我需要Jenkins的哪个插件?以及如何一步一步地运行测试?谢谢你的帮助。