zoukankan      html  css  js  c++  java
  • 光荣之路 做梦的人 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个案例:

    执行效果如下:

  • 相关阅读:
    new Date(str)返回 Invalid date问题
    时间倒计时
    js返回上一页并刷新 代码整理
    赋值变量值在标签里
    jQuery获取select选择的文本与值
    判断div里面的子集是否含有特定的类
    卷boot仅剩余XX空间
    ubuntu16.04 anaconda3安装
    ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)
    毕业设计
  • 原文地址:https://www.cnblogs.com/beiank/p/9825787.html
Copyright © 2011-2022 走看看