Hi, 如果有任何想法与我沟通, 请用: lifr_nj 在 msn.com

Different QTP: 测试执行流程与Mngt Tools

上一篇 / 下一篇  2012-09-08 22:16:10 / 个人分类:QTP

测试执行流程与Mngt Tools

一套测试套件设计出来之后,它的价值在一遍一遍的执行中体现出来。如何能最大化的优化执行的流程,Mngt tools的任务。在我的项目中,Mngt Tools是由一些VBS脚本和BAT脚本构成。

下图是Mngt Tools所包含的脚本。用户直接调用的脚本都是BAT脚本,实际实现在VBS脚本里。VBS脚本放在Script文件夹里面,如下图所示。

测试项目的执行流程定义如下。

                         +-----------------+

                         |  Prepare Test   |

                         +-------+---------+

                                 |

                                 |

                         +-------v---------+

                         |  Execute Test   |

                         +-------+---------+

                                 |

                                 |

                         +-------v----------+

                         |  Generate Report |

                         +-------+----------+

                                 |

                                 |

                         +-------v----------+

                         |  Analyze Result  |

                         +------------------+

Prepare Test

在准备Test阶段,最重要的是产生一份所有要执行的testcase的清单,在这里是TestCaseList.txt。显然,可以通过扫描Test Case Repository目录来达成。这是通过脚本GenTestCaseList.bat来完成的。

另外,被测试产品的版本号是一个非常重要的信息,必须在product.version文件里指定。

Execute Test

通过调用Batchrun.bat,所有定义在TestCaseList.txt里的testcase都会被顺序执行。执行过程中的所有log会记录到Run.log文件里。

执行结果所有信息会在一个目录里保存,如下图所示。

其中,Batchrun.bat会把每一个Testcase的执行结果和错误信息(如果有的话)保存在TestResult.txt。这个文件会在"Generate Report"阶段被转换成TestResult.html

Execute Test Twice

因为GUI测试天然的不稳定性,有时候,你会希望执行两次,并且取两次运行合并后的结果作为最终结果。合并的算法是,一个testcase,只要有一次通过,就认为是通过的。这钟方式能够有效的消除不稳定性导致的testcase失败的机会。

对于这种方式,执行过程是下面这样.

1.  Batch run all test cases in TestCaseList.txt)

2.  Restore test environment

3.  Batch run only failed test cass

4.  Merge test results

BatchRun_Rerun.bat能自动的完成上述的流程。测试结果目录是下面的样子。

注意这里有三个TestResult文件。TestResult.txt, TestResult_Rerun.txtTestResult_Merged.txt,分别是“第一次”,“第二次”,“合并后”的结果。

Generate Report

在所有testcase执行完之后,调用GenReport.bat会为该次执行产生一个HTML report,如下所示。这个动作已经集成在BatchRun.batBatchRun_Rerun.bat脚本里面。不过也可以在测试执行完成后的任何时候调用GenReport.bat

 

这个Report由总到分,逐级展示测试结果。最上面是整个testrun的结果,下面是TestModuleTestSuite的结果,最下面是每一个testcase的测试结果。

在查看每一条Testcase结果记录的地方,你可以立即获得错误信息和当时的Screenshot他们都是对于结果分析非常有用的信息。实践表明,这种便利性可以大大加快结果分析的效率。如果你需要在Result Viewer里面查看更详细的信息,那么可以打开ResultXML,这个文件正是Result Viewer需要的文件。

Analyze Result

为了方便结果分析,需要用到GenExcel.bat这个脚本。它可以根据测试结果文件(TestResult.txt)文件,产生一个TestResult.xls文件。利用Excel的能力,你可以方便的根据测试结果过滤所有testcase并且可以随时记录下分析结果。

如果需要汇报测试执行结果,那么可以在邮件正文给出汇总的信息,并附上TestResult.htmlTestResult.xls两个文件。这样你的邮件基本上包含了各种stakeholder(team leader, manager, developer...)可能感兴趣的信息,而且还不会显得凌乱。


TAG:

 

评分:0

我来说两句

Open Toolbar