zoukankan      html  css  js  c++  java
  • 第五章 自动化框架规划及用例管理(上)

    ------phpunit 接口自动化测试系列

    自动化测试的主要任务是回归测试,所以不可能一个一个地去执行测试用例。要根据测试的目的来组织测试用例,规划测试用例的架构。以方便测试用例的执行,测试用例的调试,出错的时候问题定位以及测试用例的维护等。

    5.1 自动化架构规划

       也许是个人原因吧,我比较喜欢测试数据和测试用例分开的规划方式。这样的规划一是比较明确,二是如果出现了问题,我们定位问题的时候比较方便。三是如果被测对象有任何改动,我们只需要修改测试数据就可以了,不需要修改测试用例。

       兼于以上优点,我们现在讨论一下自动化架构的规划。和Web自动化一样,我们做如下规划,在工程中创建以下文件夹:

    (1)CommonClass:文件夹下存放所有的公共函数,常用的引用或是通用操作等等。

    (2)Source:存放配置文件,图片资源或是其他静态资源。

    (3)TestCases:存放具体的测试用例文件,一个测试用例文件最好是针对一个接口的所有测试用例,如果用例比较多可以分成多个测试文件。

    (4)TestData:和测试用例文件相匹配的测试数据文件,以xml文件存方数据,数据的组织形式以测试用例为单位对应该xml文件中的一个节点。

    (5)TestSuites:根据不同的测试需要,把测试用例组织成不同的测试套件,然后在相应的环境中配置执行。

    经过这样的规划,我们再写自动化测试用例的时候,在相应的文件夹下添加对应的内容即可。

    5.2 CommonClass文件夹内容讲解

    CommonClass中存放的是我们的公共函数,根据我们的接口自动化测试的需要,我们要创建以下几个文件:

    (1)CurlOperation.php 此文件的主要功能是实现对接口的调用,根据传递过来的参数,执行不同的代码。代码如下: 

    PHP常用的调用PostGet接口的方法,为了实现一些儿接口调用需要登录,我们添加对HTTP头的封装,把Session的内容传递过来。

    (2)DataOperations.php 存放相关的数据操作,我们在此处的主要作用就是读取测试数据文件Xml,为测试用例提供测试数据。代码详情如下:

    3ReadConfig.php 读取Source下的配置文件config.xml,用于切换host,实现测试用例在不同的环境下运行。具体代码如下:

    4TextOperation.php Text文件的读写函数,用于存放登录接口返回的Token的值到Source/token.txt中,当其他的接口需要登录状态的时候,将Token读取出来,封装到Http头中。当然也可以类似于log一样,把错误的内容写到Source/result.txt文件中,具体代码如下:


    5Require.php 为了简化代码,我们将需要引用的文件全放到这个文件中,其他的测试用例文件再需要引用的时候,直接引用这个文件即可。具体代码如下:













  • 相关阅读:
    Android 视图切换库的使用
    Ext3.4--TreeGridDemo
    Extjs不错的博客
    Extjs学习笔记--(六,选择器)
    Webservice简单案例
    Extjs学习笔记--(五,事件)
    Extjs学习笔记--(四,基本函数介绍)
    Extjs学习笔记--(三,调试技巧)
    SQL集合运算:差集、交集、并集
    Extjs学习笔记--(二)
  • 原文地址:https://www.cnblogs.com/eagleking0318/p/6520858.html
Copyright © 2011-2022 走看看