• 第六章 TestNG深入讲解及测试报告输出(下)


    ------Web自动化测试之Webdriver+TestNG--从零到熟练(系列)

    6.2 测试报告美化

    我们执行完成测试用例后,都会想得到一个测试报告,这样能对执行的结果有一个清晰的了解,并且也能发给相关人员,大家共同关注一下结果。显然Eclipse的输出结果是不行的,不过大家不要担心,TestNG已帮我们生成了测试报告。

    当我们执行Testng.xml运行测试用例后,就会在工程文件下生成一个test-output文件夹,打开下面的index.html文件,就可以看到测试报告如图6.2.1或是6.2.2所示。


    6.2.1 TestNG测试报告一

     

    6.2.2 TestNG测试报告二

    不过这两个报告都比较丑,我们需要对其进行改造一下。通过在网上查询,得到一个方法使用TestNG-xslt这个插件可以生成较理想的报告。

    Ø  下载TestNG-xslt并把其中的saxon-8.7.jar复制到测试项目lib下,并附加到工程中

    Ø  从你下载的包中拷贝文件testng-results.xsl test-output目录下。testng-results.xsl文件的位置是testng-xslt-1.1.1/src/main/resources,为什么要这个文件呢?因为我们的测试报告就是用这个style生成的。

    Ø  新建build.xml文件,内容如下:

    Ø  ant运行这个xml就会在test-output目录下生成index1.html 如下图6.2.3所示:

    6.2.3 生成美化的测试报告

    打开它就能看到新生成的测试报告, 通过生成的报告我们能看到总体的情况,比如通过了多少case,失败了多少,跳过了多少没执行。第二个好处是我们可以查看失败的case抛出的异常,有具体的函数和行号。我们还可以通过case执行后的状态来过滤查询等等。

    我们测试用例的代码,运行结果如图6.2.4所示:

    6.2.4 美化后的测试报告

        我们讲到此处,算是对TestNG+Webdriver进行页面自动化测试达到了最终的结果,有完美的代码架构,数据和程序分享,还有漂亮的结果报告。最后需要的就是你的具体测试用例的编写了,根据需要是否接入jenkins中等。

    6.3 TestNG.xml的一些技巧

    通过上面的讲解,我们知道了如何运行TestNG.xml来配置我们的测试用例,输出报告,可是总感觉到测试报告还不够清晰。在这里我们讲一下如何写这个配置文件,能让报告显得比较清晰,出错后容易定位。

    常用的配置就是在配置文件testng.xml中把测试用例都给写出来,如:


       此时是把一个测试工程Test中的所有测试用例,都罗列到一个test标签里,运行测试用例的时候,会把所有的测试用例执行一遍,而且报告如图6.3.1所示:

     

    6.3.1 一个test多个class的报告

    在报告的左侧有一个Test-LoginTest,右边则是所有的测试用例。要想查看测试用例的情况,则点击右边测试用例项即可展开。

    但是这样写虽然不影响测试用例的执行,但有如下几个缺点:

    1)如果并发执行的话,可以用methods级来执行,但是通常一个测试用例中的多个方面之间有相关的,不是太好,我们通常以tests为单位来执行。此时,如果Testng.xml这样写的话,就会被当成一个线程中的测试用例,达不到多线程的效果。

    2)当一个测试文件中包含多个测试方法时,这样写就无法清楚地分辨出多个方法了,如果执行出错,不方便定位。

    3)如果在一个测试用例中打开多个窗口的话,Webdriverquit()函数无法将所有的窗口关闭。

    所以我们需要调整一下testng.xml文件的写法,以一个测试文件为一个测试用例的方法来写,如:

       此时以测试文件为单位,一个测试文件就是一个Test,报告清楚明了。测试报告如图6.3.2所示:

    6.3.2 优化后的测试报告

    并且如果一个测试文件中有多个方法,单击左边对应的测试文件名,会在右边展开文件中的所有方法,如图6.3.3所示:

     

    6.3.3查看测试方法

    从属关系一目了然,出错的时候方便定位调试。

    此时设置多线程的时候,以Tests为单位,各个测试文件会以不同的线程开执行。而我们在设计测试文件的时候,相互之间是没有耦合的,互不影响。一个测试Test执行完后,完成清理工作,而后再执行其他的测试用例,因此不会出现多窗口不被关闭的情况。

    这只是一个简单的Testng配置技巧,大家可以根据需要,对其做灵活的设置,使报告达到自己的要求。

    6.4 本章小结

    本章我们讲解了TestNG的用例管理配置文件testng.xml,以及如何配置测试用例,美化测试报告等操作。通过本章的学习,我们可以根据需要来组织测试用例,并生成漂亮的报告,这样不仅方便定位错误,也可以在老大们面前炫耀一番,感觉挺爽的。由于testng.xml文件中没有办法生成多个suite节点,所以我们可以通过建议多个testng.xml的方式来组织不同测试环境下的测试用例,如tesng1.xml,tesng2.xml……,只要结构和testNG.xml一样,就能执行测试用例。

  • 相关阅读:
    从小到大全排列
    众数-摩尔投票法
    链表复制
    2019.8.29刷题统计
    2019.8.28刷题统计
    2019.8.27刷题统计
    2019.8.26
    2019.8.25刷题统计
    2019.8.24
    2019.8.23刷题统计
  • 原文地址:https://www.cnblogs.com/eagleking0318/p/6520809.html
Copyright © 2020-2023  润新知