如何在不解压依赖 jar 的情况下运行具有故障安全功能的 TestNG 套件?

2024-02-25

我想使用包含在依赖项 jar 中的 TestNG 套件文件来执行集成测试。

The 设置 pom.xml 的详细信息将在此处讨论 https://stackoverflow.com/questions/10496846/run-junit-tests-contained-in-dependency-jar-using-maven-surefire

这是我目前拥有的 pom 文件。问题出在我需要定义套件文件的部分:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>test</groupId>
  <artifactId>test-runner</artifactId>
  <version>1.0.0-SNAPSHOT</version>

  <dependencies>
    <dependency>
      <groupId>${test.library.groupId}</groupId>
      <artifactId>${test.library.artifactId}</artifactId>
      <version>${test.library.version}</version>
    </dependency>
    <dependency>
      <groupId>${test.library.groupId}</groupId>
      <artifactId>${test.library.artifactId}</artifactId>
      <version>${test.library.version}</version>
      <classifier>tests</classifier>
    </dependency>
  </dependencies>

  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-failsafe-plugin</artifactId>
        <version>2.18</version>
        <executions>
          <execution>
            <goals>
              <goal>integration-test</goal>
              <goal>verify</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <suiteXmlFiles>
            <suiteXmlFile>${test.suite}.xml</suiteXmlFile> <!-- <<< this is the issue -->
          </suiteXmlFiles>
          <dependenciesToScan>
            <dependency>${test.library.groupId}:${test.library.artifactId}</dependency>
          </dependenciesToScan>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>

可以通过在 Jenkins 作业中提供参数值来执行测试:

    -Dtest.library.groupId=com.example.test
    -Dtest.library.artifactId=example
    -Dtest.library.version=2.0.1
    -Dtest.suite=smoke

如果套件文件在本地可用,那么这一切都可以正常工作,但我想让它与仅在 jar 中可用的套件文件一起工作(与测试类相同)。无需拆包。

所以问题是:如何定义套件文件(打包在依赖项中)的位置?

这是有问题的部分:

<suiteXmlFile>[whatComesHere?]${test.suite}.xml</suiteXmlFile>

如何将failsafe/surefire指向测试jar中包含的套件文件?或者这是不可能的,我必须解压 jar 只是为了能够运行特定的套件文件?


使用 Surefire 插件在配置部分指定以下属性:

        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>${version}</version>
        <configuration>
          <properties>
            <property>
              <name>testjar</name>
              <value>your.test.jar</value>
            </property>
            <property> <!--use if testng.xml is not in root directory-->
              <name>xmlpathinjar</name>
              <value>resources/testng.xml</value>
            </property>
          </properties>
        </configuration>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在不解压依赖 jar 的情况下运行具有故障安全功能的 TestNG 套件? 的相关文章

  • 使用 Java-Large 文件查询 JSON 文件

    我正在尝试使用 java 解析下面的 JSON 文件 我需要能够 按 ID 或名称或对象中的任何字段搜索文件 也在字段中搜索空值 搜索应返回整个对象 该文件将会很大 并且搜索应该仍然很省时 id 1 name Mark Robb last
  • Java简单加密

    我想加密存储在磁盘上的文本 配置 文件 尝试使用DES http en wikipedia org wiki Data Encryption Standard加密 我在客户端计算机上遇到了致命错误 后来我发现该算法无法处理重音字符 我怀疑这
  • 为什么在使用 repaint() 而不是使用 getParent().repaint() 时会出现此 Swing 错误?

    这个问题是基于我不久前在一个简单的 Swing 骰子程序中遇到的问题 我发布的原始问题是here https stackoverflow com questions 22306637 mystery concurrency componen
  • 在游戏框架中编写功能测试的正确方法

    在为基于 play1 2 4 的 web 应用程序编写功能测试时 我对如何正确编码感到有点困惑 困惑在于所涉及的事务边界 我在某处读到每个测试都有自己的事务 在我的应用程序中 用户可以登录并向购物车添加一些商品 然后他可以提供一个地址 以便
  • 逐行读取 JTextPane

    有没有办法读取a的内容JTextPane逐行 很像 BufferedReader 吗 Element root textPane getDocument getDefaultRootElement 获得根元素后 您可以检查存在多少个子元素
  • Spring boot 404错误自定义错误响应ReST

    我正在使用 Spring boot 来托管 REST API 即使浏览器正在访问 URL 以及自定义数据结构 我也希望始终发送 JSON 响应 而不是使用标准错误响应 我可以使用 ControllerAdvice 和 ExceptionHa
  • 从 Java 启动外部进程:stdout 和 stderr

    我正在使用标准从 java 启动一个外部进程java lang Process 我试图弄清楚该过程的输出是什么 但是采用结合了两者的格式stdout and stderr 目前 我有Process getInputStream它提供了访问s
  • 酷还是傻? Catch(异常[NamingException, CreateException] e)

    我正在编写一些代码 我注意到异常处理中的一种模式让我思考 try do stuff throws JMS Create and NamingException catch NamingException e log1 e rollback
  • Maven 调试显示警告和错误,但最终编译

    正如标题所示 我在 Maven 中面临着一个奇怪的情况 给出的是我运行的调试过程的输出mvn install X命令 DEBUG WARNING The POM for sampleModule sampleModule msg jar 1
  • 如何在Android中使用资源

    一个人如何使用资产 我有这个代码 AssetManager assets getAssets InputStream stream assets open test txt 看起来它只能在 Activity 类中使 用 如果我尝试在另一个类
  • 未从线程接收位置数据

    我尝试使用计时器经常发送包含用户位置的短信 最初 我遇到了空指针异常 这是由于我犯了一个简单的错误 一旦解决了这个问题 一切似乎都运行良好 但是 它永远不会获取我的位置 因此 不断发送的文本显示 无法接收位置 我想问的是为什么它无法获取我的
  • 无法从 ViewPager 中的 Fragment 编辑 ActionBar 标题

    我有一个Activity它通过一个托管多个片段ViewPager 在活动的onCreate方法我使用以下代码来更改ActionBar title Toolbar toolbar findViewById R id toolbar setSu
  • 使用泛型进行选择排序

    我对整数进行了选择排序并且它正在工作 当我尝试修改程序以使用泛型时 编译器会抱怨 我不知道如何修复它 如果有人能提出一些建议和建设性意见 我将不胜感激 这是代码 public class SelelctionSort public stat
  • 如何使 RSACryptoServiceProvider 在没有填充(nopadding)的情况下工作?

    我需要使 C 应用程序与 Java 应用程序兼容 Java 应用程序使用Cipher getInstance RSA ECB nopadding 初始化器使密码 ECB 和无填充 但是 在 C 中 您有 2 个填充选项 OAEP 填充或 P
  • org.apache.catalina.core.JreMemoryLeakPreventionListener 中急切调用 URLConnection 的 setDefaultUseCaches(false) 是什么原因

    这个问题可能有点难以找到答案 这是一个系列中的问题考虑使用 Policy getPolicy 的原因是什么 因为它将保留对上下文的静态引用并可能导致内存泄漏 https stackoverflow com questions 7057421
  • 飞碟 - html 实体未呈现

    我正在使用 Flying saucer lib 生成 pdf 但我对一些 html 实体有问题 我已经在寻找解决方案 我在这个论坛和其他地方找到了很多提示 但仍然存在问题 我尝试过这种方法 http sdtidbits blogspot c
  • 为什么我的 Java 路径中添加了“L”?

    我在我的类路径中加载了一个 jar 在 iReport 中 如果重要的话 我确信它具有所需的方法 但是当我尝试测试连接 从而调用该 jar 时 我得到一个 java lang NoSuchMethodError 说它正在引用班上 Lorg
  • 如何使用 Kafka 发送大消息(超过 15MB)?

    我发送字符串消息到Kafka V 0 8使用 Java Producer API 如果消息大小约为 15 MB 我会得到MessageSizeTooLargeException 我尝试过设置message max bytes到 40 MB
  • Hibernate 命名查询使用 Like 和 % % 运算符?

    在我的 Hibernate JPA 示例代码中 public List
  • 是什么让热部署成为“难题”?

    在工作中 我们经常遇到这样的问题 永久代内存不足 http www jroller com agileanswers entry preventing java s java lang例外 团队负责人认为这是 JVM 中的一个错误 与代码的

随机推荐

  • 文本区域的值?怎样填写呢?

    我正在尝试填补一个textarea使用javascript 问题是我发现textarea没有值标签 并且
  • Android 资源 ID

    我正在从自定义 xml 视图类型检索自定义资源 ID 我被要求为检索指定一个默认的 int 值 并且想知道 ID 的范围是多少 它们总是正数还是包含零 即 1 是一个有效的 空 引用和 或 0 是一个有效的 空 引用吗 Thanks EDI
  • 将嵌套的 for 循环转换为单个 LINQ 语句

    有人可以帮我将此嵌套结构转换为单个 LINQ 语句吗 EventLog logs EventLog GetEventLogs for int i 0 i lt logs Length i if logs i LogDisplayName E
  • 尝试为 ARM 构建 GDB 时出错

    我正在尝试为我的 Ubuntu 16 04 机器上的手臂构建 GDB 版本 8 0 我打算直接在arm机器上调试 目前没有服务器 我已经执行了这些指令 正如所解释的那样here https sourceware org gdb wiki B
  • 在 Python 中使用数量时消除单位

    我正在使用伟大的数量 http pypi python org pypi quantitiesPython 的包 我想知道如何在没有单位的情况下仅获得数量的数值 即 如果我有 E 5 3 quantities joule 我只想得到5 3
  • Android 是否将从 HTTP 下载的图像保留在缓存中?

    这就是我的程序的工作原理 1 显示来自服务器的图片 2 用户更改图片并上传到服务器 3 从服务器重新下载显示图片 这是我从服务器获取图片的方式 String src http www getyourpicture com mypicture
  • Scala Map 实现按插入顺序保留条目?

    在Java中 我使用LinkedHashMap以此目的 Java 的文档LinkedHashMap很明显它有 可预测的迭代顺序 我在 Scala 中也需要同样的东西 斯卡拉有ListMap and LinkedHashMap 但是关于他们到
  • 将数据框中的列乘以向量

    我想要做的是将 data frame 的第 1 列中的所有值乘以向量中的第一个元素 然后将第 2 列中的所有值乘以向量中的第二个元素 依此类推 c1 lt c 1 2 3 c2 lt c 4 5 6 c3 lt c 7 8 9 d1 lt
  • 使用 XMLHTTP 方法时等待页面加载

    在下面的工作代码中 我尝试导航到特定的 YouTube 频道 要将视频名称放入 Excel 中 它可以工作 但部分工作 因为代码只列出了大约 30 个视频 Dim x html As Object ele As Object sKeyWor
  • 当 ASP.net 验证摘要已填写时,如何调用 javascript 函数

    我的页面中有一个validationSummary 我想在validationSummary填充后调用一个javascript函数 我怎样才能做到这一点 我认为我应该在后面的代码中添加一个属性 但我无法弄清楚该属性的键是什么 有什么帮助吗
  • VirtualPathUtility 的 ASP.Net Core 替换

    有替代品吗VirtualPathUtility ToAbsolute在 ASP Net Core 中 似乎不可用 我想转换相对路径 例如将 bob 转换为绝对路径 例如 应用程序 鲍勃 我试图从类库中执行此操作 因此无法访问控制器和视图的常
  • 每个块的最大线程数

    我有以下信息 Maximum number of threads per block 512 Maximum sizes of each dimension of a block 512 x 512 x 64 这是否意味着 2d 线程块中的
  • Git:添加非暂存文件

    我对文件进行了更改 尝试暂存文件后git add 像往常一样 我继续承诺git commit m 然而 终端向我吐出了这样的信息 no changes added to commit use git add and or git commi
  • pandas 中 DataFrame.div 和 DataFrame.divide 的区别

    我试图将 pandas 数据帧的一列元素与另一列的相同行索引元素分开 在尝试寻找库函数来实现此目的时 我遇到了两个函数数据框 div https pandas pydata org pandas docs stable generated
  • 计算数据框中每列的非 NA 值的数量[重复]

    这个问题在这里已经有答案了 我有一个很大的数据集 其中包含很多NAs 和一些非 Na 值 此刻我数着我的非NA每列的值如下所示 attach df 1000 sum is na X1 1000 sum is na X2 1000 sum i
  • 带有用于 NTLM 身份验证的 http 客户端的 Spring Rest 模板

    我们在 IIS 服务器中部署了一个 Web 服务 该服务基于 NTLM 身份验证进行身份验证 当我尝试通过在 httpClient UserNamePasswordCredentials 中传递用户名和密码来访问 Web 服务时 收到警告
  • React应用程序未在azure应用程序服务中启动

    我已将一个简单的反应应用程序部署到 azure 应用程序服务 但它无法启动 如何让应用程序运行index html 将此命令添加到您的 azure 仪表板 gt 配置 gt 启动命令中 pm2 serve home site wwwroot
  • 在 sailsjs 视图中访问会话变量

    我对 sailsjs 和 nodejs 很陌生 我正在尝试创建一个身份验证页面 其中一旦用户通过身份验证 我想设置 req session user user id req session authenticated true 然后我需要在
  • 使用平移和缩放计算正确的光标位置

    我已经在这个问题上折腾了大约一个小时了 我有一个支持平移和缩放的视口 平移是通过存储 X 和 Y 轴的偏移来处理的 缩放只是一个从 0 2 到 14 的浮动值 我的问题是 我需要能够将内容放置在用户在视口中单击的位置 但是当我缩放和平移时
  • 如何在不解压依赖 jar 的情况下运行具有故障安全功能的 TestNG 套件?

    我想使用包含在依赖项 jar 中的 TestNG 套件文件来执行集成测试 The 设置 pom xml 的详细信息将在此处讨论 https stackoverflow com questions 10496846 run junit tes