TestNG源码解读(十)

本文深入解析TestNG的执行流程,从runSuitesSequentially出发,详细阐述SuiteRunnerWorker.run方法如何调用suiteRunner.run(),接着探讨suiteRunner.run()中的privateRun()方法,涉及beforeSuiteMethods、test执行和afterSuiteMethods的过程。最终,文章聚焦于runSequentially()和runTest方法,解释如何依次执行<test>用例并记录结果。
摘要由CSDN通过智能技术生成

 

继上边6.4 执行用例

上一篇讲到了runSuitesSequentially这个方法会去调用SuiteRunnerWorker.run方法,那么run方法的具体实现又是什么样的呢?

走读本段代码后发现run方法中又继续调用了runSuite方法,该方法主要作用:执行suite然后将结果存到suiteRunnerMap中。执行suite的方法则是调用suiteRunner.run()方法,继续细看suiteRunner.run()方法

SuiteRunnerWorker srw = new SuiteRunnerWorker(suiteRunnerMap.get(xmlSuite), suiteRunnerMap,
      verbose, defaultSuiteName);
srw.run();

  @Override
  public void run() {
    runSuite(m_suiteRunnerMap, m_suiteRunner.getXmlSuite());
  }


   /**
   * Runs a suite
   * @param suiteRunnerMap map of suiteRunners that are updated with test results
   * @param xmlSuite XML suites to run
   */
  private void runSuite(SuiteRunnerMap suiteRunnerMap /* OUT */, XmlSuite xmlSuite)
  {
    //日志级别大于0时,在控制台中输出要执行的tetsng.xml的路径,如下图一
    if (m_verbose > 0) {
      StringBuffer allFiles = new StringBuffer();
      allFiles.append("  &
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值