如何在不解压依赖 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 套件? 的相关文章

  • 如何默认将 Maven 插件附加到阶段?

    我有一个 Maven 插件应该在编译阶段运行 所以在项目中consumes我的插件 我必须做这样的事情
  • 在画布上绘图

    我正在编写一个 Android 应用程序 它可以在视图的 onDraw 事件上直接绘制到画布上 我正在绘制一些涉及单独绘制每个像素的东西 为此我使用类似的东西 for int x 0 x lt xMax x for int y 0 y lt
  • Play框架运行应用程序问题

    每当我尝试运行使用以下命令创建的新 Web 应用程序时 我都会收到以下错误Play http www playframework org Error occurred during initialization of VM Could no
  • 在 java 类和 android 活动之间传输时音频不清晰

    我有一个android活动 它连接到一个java类并以套接字的形式向它发送数据包 该类接收声音数据包并将它们扔到 PC 扬声器 该代码运行良好 但在 PC 扬声器中播放声音时会出现持续的抖动 中断 安卓活动 public class Sen
  • 如何找到给定字符串的最长重复子串

    我是java新手 我被分配寻找字符串的最长子字符串 我在网上研究 似乎解决这个问题的好方法是实现后缀树 请告诉我如何做到这一点或者您是否有任何其他解决方案 请记住 这应该是在 Java 知识水平较低的情况下完成的 提前致谢 附 测试仪字符串
  • Android:捕获的图像未显示在图库中(媒体扫描仪意图不起作用)

    我遇到以下问题 我正在开发一个应用程序 用户可以在其中拍照 附加到帖子中 并将图片保存到外部存储中 我希望这张照片也显示在图片库中 并且我正在使用媒体扫描仪意图 但它似乎不起作用 我在编写代码时遵循官方的Android开发人员指南 所以我不
  • Android MediaExtractor seek() 对 MP3 音频文件的准确性

    我在使用 Android 时无法在eek 上获得合理的准确度MediaExtractor 对于某些文件 例如this one http www archive org download emma solo librivox emma 01
  • 多个 Maven 配置文件激活多个 Spring 配置文件

    我想在 Maven 中构建一个环境 在其中我想根据哪些 Maven 配置文件处于活动状态来累积激活多个 spring 配置文件 目前我的 pom xml 的相关部分如下所示
  • 列出jshell中所有活动的方法

    是否有任何命令可以打印当前 jshell 会话中所有新创建的方法 类似的东西 list但仅适用于方法 您正在寻找命令 methods all 它会打印所有方法 包括启动 JShell 时添加的方法 以及失败 被覆盖或删除的方法 对于您声明的
  • 操作错误不会显示在 JSP 上

    我尝试在 Action 类中添加操作错误并将其打印在 JSP 页面上 当发生异常时 它将进入 catch 块并在控制台中打印 插入异常时出错 请联系管理员 在 catch 块中 我添加了它addActionError 我尝试在jsp页面中打
  • Spring Data JPA 应用排序、分页以及 where 子句

    我目前正在使用 Spring JPA 并利用此处所述的排序和分页 如何通过Spring data JPA通过排序和可分页查询数据 https stackoverflow com questions 10527124 how to query
  • 从 127.0.0.1 到 2130706433,然后再返回

    使用标准 Java 库 从 IPV4 地址的点分字符串表示形式获取的最快方法是什么 127 0 0 1 到等效的整数表示 2130706433 相应地 反转所述操作的最快方法是什么 从整数开始2130706433到字符串表示形式 127 0
  • Java Integer CompareTo() - 为什么使用比较与减法?

    我发现java lang Integer实施compareTo方法如下 public int compareTo Integer anotherInteger int thisVal this value int anotherVal an
  • AWS 无法从 START_OBJECT 中反序列化 java.lang.String 实例

    我创建了一个 Lambda 函数 我想在 API 网关的帮助下通过 URL 访问它 我已经把一切都设置好了 我还创建了一个application jsonAPI Gateway 中的正文映射模板如下所示 input input params
  • Eclipse Java 远程调试器通过 VPN 速度极慢

    我有时被迫离开办公室工作 这意味着我需要通过 VPN 进入我的实验室 我注意到在这种情况下使用 Eclipse 进行远程调试速度非常慢 速度慢到调试器需要 5 7 分钟才能连接到远程 jvm 连接后 每次单步执行断点 行可能需要 20 30
  • Java列表的线程安全

    我有一个列表 它将在线程安全上下文或非线程安全上下文中使用 究竟会是哪一个 无法提前确定 在这种特殊情况下 每当列表进入非线程安全上下文时 我都会使用它来包装它 Collections synchronizedList 但如果不进入非线程安
  • 如何在桌面浏览器上使用 webdriver 移动网络

    我正在使用 selenium webdriver 进行 AUT 被测应用程序 的功能测试自动化 AUT 是响应式网络 我几乎完成了桌面浏览器的不同测试用例 现在 相同的测试用例也适用于移动浏览器 因为可以从移动浏览器访问 AUT 由于它是响
  • 获取 JVM 上所有引导类的列表?

    有一种方法叫做findBootstrapClass对于一个类加载器 如果它是引导的 则返回一个类 有没有办法找到类已经加载了 您可以尝试首先通过例如获取引导类加载器呼叫 ClassLoader bootstrapLoader ClassLo
  • JGit 检查分支是否已签出

    我正在使用 JGit 开发一个项目 我设法删除了一个分支 但我还想检查该分支是否已签出 我发现了一个变量CheckoutCommand但它是私有的 private boolean isCheckoutIndex return startCo
  • 节拍匹配算法

    我最近开始尝试创建一个移动应用程序 iOS Android 它将自动击败比赛 http en wikipedia org wiki Beatmatching http en wikipedia org wiki Beatmatching 两

随机推荐

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

    我正在尝试填补一个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