首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >testng_failed.xml在运行之前不会刷新并运行较旧的失败测试用例

testng_failed.xml在运行之前不会刷新并运行较旧的失败测试用例
EN

Stack Overflow用户
提问于 2015-08-19 06:51:39
回答 3查看 755关注 0票数 1

实际上,与testng-failed.xml相关的问题已经被问了很多次了,但我的问题几乎没有什么不同。我想一起运行所有失败的测试用例,所以我所做的是在我的pom中传递了testng-failed.xml。

但我面临的问题是,首先我的testng.xml会运行,然后是testng-failed.xml,然后它会被覆盖。因此,假设我对我的测试用例进行了第二次新的运行,testng.xml运行,那么我的testng-failed.xml之前已经失败了测试用例,所以它运行之前失败的用例,然后用这次失败的用例更新testng-failed.xml。

我不知道应该添加哪个侦听器来处理这个问题:每当我第一次运行testng.xml时,它都应该运行,然后它应该覆盖testng-failed.xml,然后testng-failed.xml应该运行。我使用的是Maven、selenium、testng。

我只是在我的pom中输入了testng-failed.xml,如下所示。请让我知道要使用哪个listner

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<suiteXmlFiles>
        <suiteXmlFile>src/resources/testng/testng.xml</suiteXmlFile>
        <suiteXmlFile>test-output/testng-failed.xml</suiteXmlFile> 
</suiteXmlFiles>
EN

回答 3

Stack Overflow用户

发布于 2015-08-19 11:28:33

通过实现“IAnnotationTransformer”创建类“RetryListener”。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public class RetryListener implements IAnnotationTransformer {

@Override
public void transform(ITestAnnotation testannotation, Class testClass,
        Constructor testConstructor, Method testMethod) {
    IRetryAnalyzer retry = testannotation.getRetryAnalyzer();

    if (retry == null)  {
        testannotation.setRetryAnalyzer(Retry.class);
    }

}
}

现在创建另一个类。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public class Retry implements IRetryAnalyzer {
private int retryCount = 0;
private int maxRetryCount = 1;

// Below method returns 'true' if the test method has to be retried     
   else 'false' 
//and it takes the 'Result' as parameter of the test method that just 
   ran
 public boolean retry(ITestResult result) {
    if (retryCount < maxRetryCount) {
        System.out.println("Retrying test " + result.getName() + " with status "
                + getResultStatusName(result.getStatus()) + " for the " + (retryCount+1) + " time(s).");
        retryCount++;
        return true;
    }
    return false;
}

public String getResultStatusName(int status) {
    String resultName = null;
    if(status==1)
        resultName = "SUCCESS";
    if(status==2)
        resultName = "FAILURE";
    if(status==3)
        resultName = "SKIP";
    return resultName;
  }
  }

现在,在您的testNG xml文件中添加以下行

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
   <listeners>
    <listener class-name="com.pack.test.RetryListener"/>
   </listeners>

并且不在pom.xml中传递Xml文件

希望它能起作用

谢谢

票数 0
EN

Stack Overflow用户

发布于 2015-08-19 18:48:59

为什么在同一个testng任务中运行testng xml和失败的测试xml。您应该分离构建任务,首先运行testng并生成失败的测试xml,然后另一个任务运行失败的测试xml。看起来不错。

票数 0
EN

Stack Overflow用户

发布于 2018-12-22 19:34:28

我实现了运行一次,然后只重新运行三次新失败的测试。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
mvn $par1=$pSuiteXmlFile test > $test1log
mvn $par1=$failedRelPath test > $failed1log
mvn $par1=$failedRelPath test > $failed2log
mvn $par1=$failedRelPath test > $failed3log

它是有效的,但测试用例很少。我有一个包含300个测试的套件,不知何故,在主(第一次)运行后,surefire/testng没有创建testng-failed.xml。当套件较小时,将根据需要创建testng-failed.xml。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32088383

复制
相关文章
android UiAutomator让运行失败的用例重新运行
本人在使用android UiAutomator做测试的时候,发现经常会因为页面加载太慢或者网络延迟比较大又或者出现意外情况导致用例失败,但是在检查的时候又能运行成功,提出了一个让失败的用例重新运行的需求,经过尝试终于成功了,使用excel作为测试报告的类型,html的类似,下面分享一下运行的代码,供大家参考。
FunTester
2019/09/04
8560
成功的测试通常是运行测试用例后_成功的测试是指运行测试用例后
用过pytest的小伙伴都知道,pytest的运行方式是非常丰富的,可以说是你想怎么运行怎么运行,想运行哪些运行哪些,那httprunner是否同样可以呢?
全栈程序员站长
2022/09/19
9990
Appium移动端自动化测试--录制测试用例并运行
选择右下方的Send Keys, 跳出输入框,输入搜索内容并点击Send Keys按钮。
软测小生
2019/12/12
1.1K0
在linux下安装并运行scrapyd
因为我腾讯云上是python2与python3并存的 所以我执行的命令是:pip3 isntall scrapyd
py3study
2020/01/20
2.7K0
Jenkins 集成postman 自动化运行接口测试用例
做过接口测试的人,应该都知道postman ,我们在日常的时候都可以利用postman做接口测试,我们可以把接口的case保存下来在collection里面,那么可能会有这样的需求,我们怎么把collection的用例放到jenkins中定时执行呢,今天我们就来看下如何实现的。
雷子
2021/03/15
9540
Jenkins 集成postman 自动化运行接口测试用例
在Ubuntu上启动并运行Hadoop
Hadoop是一个用Java编写的框架,它允许在大型商品硬件集群上以分布式方式处理大型数据集。
大数据弄潮儿
2018/05/29
4.6K0
在Ubuntu上启动并运行Hadoop
优化IOS7在旧款设备上的运行性能
IOS7无疑是史上升级速度最快的IOS系统,但部分稍旧的设备例如iPhone 4和iPhone 4S在升级到IOS7之后却遇到了不少性能问题。下面给大家带来了几点建议,通过修改系统设置在一定程度上提高IOS7的性能。
reizhi
2022/09/26
1K0
优化IOS7在旧款设备上的运行性能
Hadoop 任务运行失败
任务运行失败最常见的情况是 map 任务或 reduce 任务中的用户代码抛出运行异常。如果发生这种情况,任务 JVM 会在退出之前向其父 application master 发送错误报错。错误报告最后被记入用户日志中。application master 会将此次任务尝试标记为 failed (失败),并释放容器以便资源可以为其他任务使用。
smartsi
2019/08/07
3K0
Tomcat闪退问题 Tomcat在eclipse运行失败
1.环境配置问题 2.端口被占用 3.直接修改 startup.bat 和 shutdown.bat 文件,在前面添加 jdk 和 jre 的安装路径 …还有很多 这些方法随便一搜到处都是
全栈程序员站长
2022/08/26
1.1K0
Tomcat闪退问题 Tomcat在eclipse运行失败
2020-12-02 graphviz在windows运行失败
今天使用go tool pprof test.test.exe prof.cpu,出现错误 Could not execute dot; may need to install graphviz. 解决问题步骤如下:
oracle3
2022/04/22
1.8K0
Twemproxy测试用例以及压测结果
1、前端使用 Twemproxy 做代理,后端的 Redis 数据能基本上根据 key 来进行比较均衡的分布。后端一台 Redis 挂掉后,Twemproxy 能够自动摘除。恢复后,Twemproxy 能够自动识别、恢复并重新加入到 Redis 组中重新使用。
小程故事多
2018/08/22
1.2K0
Twemproxy测试用例以及压测结果
pytest文档27-运行上次失败用例(--lf 和 --ff)
“80%的bug集中在20%的模块,越是容易出现bug的模块,bug是越改越多“平常我们做手工测试的时候,比如用100个用例需要执行,其中10个用例失败了, 当开发修复完bug后,我们一般是重点测上次失败的用例。 那么自动化测试也一样,当用例特别多时,为了节省时间,第一次部分用例失败了,修复完之后,可以只测上次失败的用例。
上海-悠悠
2018/10/24
1.9K0
pytest文档27-运行上次失败用例(--lf 和 --ff)
自动化测试用例失败继续执行
当出现异常时,你希望标记出来这个错误,但不影响后面的测试脚本执行,在Nightwatch中如何做?
Peter Shen
2020/06/12
8020
Idea 打包成功,运行失败
最近开发中,发现一个奇怪的问题,用idea 的maven ,编译,打包都能够成功,项目中也没有爆红出错,但是你运行/调式SpringBoot的启动类的时候,会提示包**不存在。网上找了很多解决方案 都没成功。最后终于成功了,特此记录分享下:
IT小马哥
2021/03/22
2.3K0
在Hadoop系统中运行WordCount案例失败解决方法
报错提示: mapreduce.shuffle set in yarn.nodemanager.aux-services is invalid 请在yarn-site.xml中添加 <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.nodemanager.aux-services.mapredu
指剑
2022/07/15
8770
DEV c++点击f5刷新运行代码,会闪退,点击运行却不会闪退。怎么解决?
今天在使用dev c++编写c语言程序的时候点击运行,发现是没有任何问题。 但是当我点击键盘上F5刷新运行程序的时候,输入后点击会自动闪退,并且在电脑中直接点开exe文件也同样是这种情况 。 于是便上网搜索了一些解决的方案。
吃猫的鱼Code
2023/02/02
8190
adb 安装并运行 apk[通俗易懂]
adb install apk路径即可,例如:adb install E:\filetestapplication.apk
全栈程序员站长
2022/08/24
5.4K0
spark (java API) 在Intellij IDEA中开发并运行
王小雷
2018/01/02
3.8K0
spark (java API) 在Intellij IDEA中开发并运行
.Net Core in Docker - 在容器内编译发布并运行
Docker可以说是现在微服务,DevOps的基础,咱们.Net Core自然也得上Docker。.Net Core发布到Docker容器的教程网上也有不少,但是今天还是想来写一写。 你搜.Net core程序发布到Docker网上一般常见的有两种方案:
MJ.Zhou
2019/07/02
2K0
pytest文档83 - 把收集的 yaml 文件转 Item 用例并运行
上一篇通过用例收集钩子 pytest_collect_file 把 yaml 文件收集起来的,仅仅只是收集到用例,还不能执行。 接下来详细讲解,如何把yaml 文件的内容,转成Item 用例去执行。
上海-悠悠
2023/01/03
5860
pytest文档83 - 把收集的 yaml 文件转 Item 用例并运行

相似问题

如何使TestNG测试用例失败并继续运行测试用例

10

Laravet测试用例失败,无法在测试用例上运行种子

12

在Protractor中运行测试用例后,不会执行其他测试用例

12

GWT测试用例运行失败: JUnitFatalLaunchException

30

在Cypress中只运行失败的测试用例

313
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文