• 光荣之路 做梦的人 testng--失败重跑(五)


    背景:因为这里只是想单独展示失败的重跑的案例,所以先暂时把app这块的运行注释掉,只跑一个简单的demo,就一个简单类,类中就3个测试方法,失败重跑的原理是,运行方法是成功状态,就不重跑,如果是失败的,就在继续执行方法,直到他设置的最大重跑次数时就停止失败重跑很关键的是,要先添加这个一个类,实现IRetryAnalyzer 这个方法,以下就是一个retry 类。

    这个类RetryListener.Java主要是实现IAnnotationTransformer 方法

    配置监听

    在xml文件中配置监听器, 监听的是RetryListener这个类。

    目前的目录结构是这样,但是关键是retry.java,RetryListener.java,rosewholepc.java:

    实  现

    在rosewholepc中写入的方法为:

    查看执行效果

    以为这样就完了,其实没有,这个时候执行你会发现他会记录你3次结果数据,但是其实我们只想记录最后1次的数据,因为做UI你会发现,因为网络原因会导致第一次失败,第二次就正常了,所以我们增加重跑就可以减少脚本的误报的情况,我们只要采取最后一次结果就好了。

    finish监听加代码

    在TestngListener这个类里面的finnish监听里面加上这段代码就可以了。

    Xml文件加上这两段

    执行效果

    参考文章

    参考文章:http://blog.csdn.net/qq744746842/article/details/51428938。

    这篇文章中提到是去实现ITestListener接口, IestListenerAdapter 已经实现 ITestListener,并且提供了一些有用的方法,比如分别获取所有成功失败跳过三种测试结果的测试方法的方法,并且 ITestListner 中有很多方法而 TestListenerAdapter 已给出了默认实现。因此,继承 TestListenerAdapter 后,便只需关注需要修改的方法。刚好我们用到的也是TestListenerAdapter,所以在onFinish中直接完成就可以了。
    我添加了2个案例:

    执行效果如下:

  • 相关阅读:
    三十二、恢复单库单表
    三十一、XBK备份
    三十、分库分表备份脚本
    二十九、mysqldump恢复案例
    二十八、mysqldump备份
    二十七、备份介绍
    二十六:慢日志分析
    二十五、二进制日志之GTID模式
    Trie树
    AC自动机
  • 原文地址:https://www.cnblogs.com/beiank/p/9825787.html
Copyright © 2020-2023  润新知