zoukankan      html  css  js  c++  java
  • 第一章 接口自动化简述

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

    随着移动设备的普及,手机AppHTML5站点的应用越来越广泛。现在公司的宣传和推广也越来越多样化,网站,AppWAP站同时存在着。可能在公司发展的初期,这三方面是各自分开的,分别开发和应用,不过随着公司的发展需要,这种模式显然不行的。三方的数据同步的问题会非常麻烦,而解决办法就是建立一套通用的接口,然后三方数据都去调用这套接口去完成相应的操作。

    1.1      接口测试

       关于接口的测试,其实说起来挺简单的,就是按接口文档的要求传递参数,然后对接口返回值进行判断,看是否符合预期。而相关的测试用例就是对接口参数的不同排列组合,必选项和非必选项,正确参数和错误参数等各种情况组成不同的测试用例。

        而接口测试手工的方法有三种:一是直接用浏览器地址栏调用,然后安装jsonview插件,查看返回结果。不过这种方法对get方式的接口好用,post方式的接口不好用。二是,借助于第三方的接口调用工具,网上有很多可以下载尝试。三是,利用命令Curl,在命令行下直接调用,同样是查看返回结果。

    1.2      接口自动化测试

    接口自动化测试,就是利用脚本语言,对接口发起请求,然后对接口返回的结果进行分析判断。与预期的一样的话,程序返回成功,如果不一样,就抛出异常,程序执行失败。然后结合不同的脚本框架,如phpunit,对测试用例进行管理,对测试执行的结果进行分析汇总等!

    接原理说,各种脚本语言应该都可以编写接口自动化测试,不过业界最常用的还是php,利用phpunit框架来测试的。在我工作过的上一家公司,他们平台研发部利用phpCI框架开发了一个接口自动化工具,用来管理和组织测试脚本,执行并生成报告。其实也就是用网页把接口自动化过程变得操作简化一点儿,原理上还是用phpunit来运行和组织测试用例的。

    1.3      接口自动化的实施

       实现接口自动化测试,主要是用来回归,确保接口稳定。因为接口一旦出问题,那些儿调用接口的网站,AppWAP将会出现联动的错误,影响很大的。而接口自动化的实施主要有以下几个步骤:

    (1)阅读接口文档。在接口测试过程中,接口文档至关重要,这是测试的依据。所以在接到编写接口自动化测试用例之前,一定要认真阅读接口文档,明白哪些儿参数是必选的,哪些儿是非必选的,参数的取值范围等。

    (2)编写对应的测试用例。根据接口文档编写具体的测试用例,组织参数组合,正确与错误的参数值调用,预期的结果等一一罗列出来。把具体的测试用例编写出来后,为转化成接口自动化测试用例作准备。

    (3)自动化测试用例代码架构规划。和页面自动化类似,虽然没有页面变动频繁,但是接口也存在着升级或是优化的情况。在这种情况下,我们也要维护接口自动化测试用例,所以提前规划一下代码架构也是很有必要的。

    (4)具体测试用例的编写。规划好代码架构,我们就可以着手编写公用函数,具体的测试用例等代码文件。在这些儿代码文件调试通过后,我们根据需要完成对接口的测试用例覆盖。

    (5)测试用例的组织。根据不同的需要,我们需将不同的测试用例放到不同的数据测试集中。如测试环境下的回归测试和线上回归测试就不同,线上的回归测试不能产生测试数据,所以产生测试数据的接口就不能回归。

    (6)测试用例无人值守运行。将测试用例接入到Jenkins,利用触发式或是定时执行,对接口进行无人值守的自动化回归测试。

    1.4 本章小结

    本章大概简述了接口的用途,接口手工测试方法,接口的自动化测试方法及接口自动化测试实施的步骤等。以方便大家对接口自动化有个初步的认识,后面章节我们讲详细讲解接口自动化测试的相关知识。

  • 相关阅读:
    Git一些简单但非常重要并常用的操作命令
    利用fastjson解析json并通过js&ajax实现页面的无跳转刷新
    利用Graphviz绘制逻辑关系依赖图
    oracle导入.dmp文件
    Linux查找当前目录5天的文件并打包
    Web安全相关(三):开放重定向(Open Redirection)
    Web安全相关(二):跨站请求伪造(CSRF/XSRF)
    Web安全相关(一):跨站脚本攻击(XSS)
    密码学应用(DES,AES, MD5, SHA1, RSA, Salt, Pkcs8)
    行为驱动开发(BDD)实践示例
  • 原文地址:https://www.cnblogs.com/eagleking0318/p/6520868.html
Copyright © 2011-2022 走看看