testNG套件标签时间戳与testng-results.xml中的测试方法时间戳不同

时间:2018-03-17 08:48:07

标签: selenium selenium-webdriver testng appium appium-android

我正在生成Excel报告以捕获套件执行的开始时间和结束时间,其中框架从testng-results.xml读取数据,但是,我注意到启动时间的差异并且已完成 - 在套件级别和方法级别的时间。我的框架读取套件级别的时间,而不是我期望的时间。我期望套件时间与方法级别时间相同。

<suite name="Suite" duration-ms="1543927" started-at="2018-03-15T05:53:39Z" finished-at="2018-03-15T06:19:23Z">
    <groups>
    </groups>
    <test name="Regression_test" duration-ms="1543927" started-at="2018-03-15T05:53:39Z" finished-at="2018-03-15T06:19:23Z">
        <class name="com.mpos.android.tests.CnC_TC_08">
            <test-method status="PASS" signature="_init()[pri:0, instance:com.mpos.android.tests.CnC_TC_08@627551fb]" name="_init" is-config="true" duration-ms="2" started-at="2018-03-15T11:31:27Z" finished-at="2018-03-15T11:31:27Z">
                <reporter-output>
                </reporter-output>
            </test-method> <!-- _init -->

以下是使用上述代码段生成的Excel报告:

screenshot

1 个答案:

答案 0 :(得分:1)

<suite>标记的<test-method>标记和started-at标记时间戳表明了这一切。

  • started-at标记中的<suite> timeatamp提及 2018-03-15T05:53:39Z
  • started-at标记中的<test-method>时间戳提及 2018-03-15T11:31:27Z
  • 所以时差为 5小时37分48秒

分析

这表明:

  • started-at标记中的<suite> timeatamp提及 2018-03-15T05:53:39Z GMT
  • started-at标记中的<test-method> timeatamp提及 2018-03-15T11:31:27Z 属于(可能) IST(印度标准时间)< /强>

解决方案

快速解决方案是将 TestNG 版本升级到最新的 GA v6.14.2 ,其中时间戳,其中两个时间戳都将是 GMT

  • 当前执行的示例如下:

    <testng-results skipped="0" failed="0" ignored="0" total="1" passed="1">
      <reporter-output>
      </reporter-output>
      <suite name="Default suite" duration-ms="13267" started-at="2018-03-17T10:50:04Z" finished-at="2018-03-17T10:50:17Z">
        <groups>
        </groups>
        <test name="Default test" duration-ms="13267" started-at="2018-03-17T10:50:04Z" finished-at="2018-03-17T10:50:17Z">
          <class name="Config_property_demo.Index">
        <test-method status="PASS" signature="handling_multiple_windows()[pri:1, instance:Config_property_demo.Index@2bbf4b8b]" name="handling_multiple_windows" duration-ms="13236" started-at="2018-03-17T10:50:04Z" finished-at="2018-03-17T10:50:17Z">
          <reporter-output>
          </reporter-output>
        </test-method> <!-- handling_multiple_windows -->
          </class> <!-- Config_property_demo.Index -->
        </test> <!-- Default test -->
      </suite> <!-- Default suite -->
    </testng-results>
    
  • 虽然我的系统时间戳(apprx)位于 2018-03-17T16:50:04Z <suite>代码和<test-method>标记均显示 2018-03-17T10:50:04Z