001) selenium+testng:日志监听器TestListenerAdapter

1TestNG 提供的几种监听器(预定义的 Java 接口)IAnnotationTransformer   IAnnotationTransformer2    IHookable  IInvokedMethodListener  IMethodInterceptor  ISuiteListener   IReporter     ITestListener

 2、目前的框架主要用到IReporter 和 ITestLisntener:  

    (1)监听测试方法(1Test为一个测试方法)

             public void onTestSuccess(ITestResult tr)

            public void onTestFailure(ITestResult tr) 

            public void onTestSkipped(ITestResult tr)

    (2)每一个测试方法开始执行时

               public void onTestStart(ITestResult result)

   (3)Test开始和结束时(testng.xml中的Test)

              public void onStart(ITestContext testContext)

              public void onFinish(ITestContext testContext)  

3、使用方式用户继承这些接口的实现类,复写父类的方法(也可调用父类的方法,保存父类的行为)指定不同后续行为,并把它们加入到 TestNG 中,TestNG 便会在测试运行的不同时刻(测试执行开始、执行结束、测试方法执行成功、执行失败、者跳过)调用这些类中的接口方法。
4、实例
       1、创建监听类,继承TestListenerAdapter(TestListenerAdapter 已经实现 ITestListener复写需要复写的方法             
         
    (2)、创建测试类,类定义前面加上@listener标签,监听类用大括号          
      
     (3)结果     
        
*****onStart*****
*****onTestStart*****
testListeners.......
*****onTestSuccess*****
*****onFinish*****
PASSED: testListeners


===============================================
    Default test
    Tests run: 1, Failures: 0, Skips: 0
===============================================
 5、ITestResult  中有对监听的方法中的testng.xml配置信息的获取
      例如:result.getTestContext().getName():获取testng中<test>标签中的name值
                  result.getTestClass().getRealClass().getName():获取testng<class>标签的值,即类报名+类名
                  result.getName() :获取class中运行的方法名
 6、优化
       日志  :可将以上的方法中的输出,转化成日志输出
       截图:在onTestFailure做截图功能
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值