文章来源:公众号-智能化IT系统。

针对大部分的B2B系统,通过后台接口,例如http等方式交互。传统的黑盒测试难以测试出系统的细节问题。在了解交互接口的情况下,可以针对交互进行自动化测试,把控系统的运行状况。

本文介绍了自动化测试系统的一个案例,针对支付平台,自动化测试系统作为一个商户的角色,进行交互接口测试,并且从返回结果,以及业务系统的DB两个方面进行验证。

1. 自动化测试系统的意义

在预设条件下运行系统或应用程序,评估运行结果,预先条件应包括正常条件和异常条件。主要意义如下:

  • 避免重复工作,提高测试效率

  • 保证每次测试地一致性和可重复性

  • 优化资源配置

  • 更好的利用无人值守时间

  • 促进测试人员能力提升

2. 测试人员需要掌握的技能

一般测试行业分两个方向,测试开发以及系统测试。测试开发类似于开发自动化测试平台,而系统测试的主要任务是开发自动化测试的脚本,在本案例中,主要是需要模拟请求,并且验证结果。需要如下:

  • 基本的脚本语言,例如python,shell,本案例使用的是python

  • 熟悉被测系统的接口协议,以及接口内容

  • 熟悉被测系统的数据库,以及需要验证的数据对应的数据表以及字段

3. 自动化测试框架以及流程

自动化测试的性能指标要求较低,毕竟自动化测试不是无时无刻进行,所以后台的管理站点以及数据库偏轻量级,本案例采用java开发管理后台,mysql作为数据库存储用例,python作为自动化测试的脚本,从mysql数据库中读取用例并执行,并且将用例的执行结果存储在mysql,管理者通过管理后台查看。

对应的流程刚才已经说明,如下图:

4. 系统结构

结构如下图。自动化测试在下图的左半部分。

自动化测试管理后台”一共有五大核心功能模块,分为是:

  • 系统管理

共分为:用户管理、权限类型管理、预测类型管理、脚本方法列表、日志类型配置等五个子模块;

该模块主要用于配置系统的用户、权限和预测类型、脚本方法、日志的类型的基本配置。

  • 平台管理

共分为:平台管理列表、接口配置列表、请求模块列表、校验模块列表等四个子模块;

该模块主要用于项目平台的配置、对应平台的下单接口名称配置、接口的请求地址详情配置和通用校验脚本的配置。

  • 用例管理

共分为:用例管理平台一个子模块;

该模块主要用于配置所有的测试用例、以及用例的功能描述、执行的模块步骤以及对应模块的预测结果。

  • 监控管理

共分为:执行详情列表、用例平台统计、用例接口统计等三个子模块;

该模块主要用于查看具体用例的执行详情以及根据平台、用例的用例执行统计数据。

  • 日志管理

共分为:系统日志等一个子模块;

该模块主要用于查看后台的详细操作日志。

5. 自动化测试的用例构成

6. 自动化测试的用例对应的预期结果

上文已经提到,该案例主要采用两种方式进行自动化测试

  • 针对被测系统的接口

主要是在系统构造了请求后,针对返回的信息,进行判定,是否和预期结果一致,主要通过是否包含特定字段方式,通过正则表达式等均可实现。

  • 针对被测系统的数据库

通过系统数据库的检测,判断系统是否针对请求正常的运转,通过写SQL语句进行判定。

不同的项目需求不一样,所有的技术和方案都会有不同。本文主要是通过一个案例,来打开思路,说明自动化测试系统的价值,以及在B2B平台应用的可行性。进一步了解请关注公众号。

———————————————————

公众号-智能化IT系统。每周都有技术文章推送,包括原创技术干货,以及技术工作的心得分享。扫描下方关注。

针对B2B平台的接口自动化测试系统相关推荐

  1. 手把手教你打造一个可视化接口自动化测试系统

    现如今,接口开发几乎成为一个互联网公司的标配了,无论是web还是app,哪怕是小程序,都离不开接口作为支撑,当然,这里的接口范围很广,从http到websocket,再到rpc,只要能实现数据通信的都 ...

  2. jemeter python接口自动化测试平台_接口自动化测试平台

    你好,打包的时候报错了)我node.js版本高导致的么 Warning: Accessing non-existent property 'cat' of module exports inside ...

  3. 汽车汽配行业B2B电子商务系统营销渠道自动化,综合提升B2B平台交易效率

    汽车工业作为国家制造业的支柱之一,是衡量国家工业水平的基本指标.不断完善汽车工业整体的行业规范,促进汽车工业更稳定.更健康的发展,才能有效提升汽车工业的经济作用及影响力. 4S店模式,作为我国一直以来 ...

  4. 自动化测试系统的软件架构(转)

    自动化测试系统的软件架构 一.为什么要自动化测试系统 随着产品可测性设计和仪表程控制技术的不断完善和提高,自动化测试系统越来越广泛的被应用于从产品设计研发到生产制造验证的各个环节.自动化测试系统之所以 ...

  5. 大厂标配HttpRunner接口自动化测试框架

    目录 HttpRunner 简介 框架流程 核心特性 下载安装 入门使用 HttpRunnerManager 简介 核心特性 下载安装 环境配置 HttpRunnerManager 入门使用 创建项目 ...

  6. python locust post 参数拼接md5_HttpRunner接口自动化测试框架

    HttpRunner 简介 HttpRunner 是一款面向 HTTP(S) 协议的通用测试框架,只需编写维护一份 YAML/JSON 脚本,即可实现自动化测试.性能测试.线上监控.持续集成等多种测试 ...

  7. 接口自动化测试平台Lego ------ 美团接口自动化测试超全实践【3000字长文】

    一.概述 1.1 接口自动化概述 众所周知,接口自动化测试有着如下特点: 低投入,高产出. 比较容易实现自动化. 和UI自动化测试相比更加稳定. 如何做好一个接口自动化测试项目呢? 我认为,一个&qu ...

  8. linux mysql 修改密码之后还是不能登录_怎样在Linux下搭建接口自动化测试平台?...

    前言 之前在学习HttpRunner时,我们都是把用例写在 YAML/JSON 中进行维护,使用起来也很方便.其实,现在有不少大佬都喜欢开发自动化测试平台,比如我们今天要搭建的HttpRunnerMa ...

  9. linux手动安装unzip_怎样在Linux下搭建接口自动化测试平台?

    前言 之前在学习HttpRunner时,我们都是把用例写在 YAML/JSON 中进行维护,使用起来也很方便.其实,现在有不少大佬都喜欢开发自动化测试平台,比如我们今天要搭建的HttpRunnerMa ...

最新文章

  1. 独家 | 请停止使用浏览器过程中的不安全行为(附链接)
  2. string.Equals 比较2个字符串是否相同忽略大小写
  3. python中的__call__和__repr__魔术方法
  4. [HAOI2007]上升序列
  5. matlab由x得到y,matlab 已知x、y值以及函数,求未知参数
  6. 【转】oracle数据库中varchar2陷阱
  7. .net bitmap rgb数据_Python商务与经济统计学-数据描述
  8. [cb]SceneView 获取鼠标位置
  9. 合并两个数组的两种方式的异同
  10. linux wifi驱动rtl8188移植
  11. Axure9 导入元件库
  12. ubuntu重装显卡驱动
  13. 品管(QC)七大手法
  14. uniapp-微信小程序直播插件小记
  15. pg_bigm 处理中间模糊匹配 like ‘%xxoo%‘
  16. mysql orderby asc_MySQL 数据排序 order by
  17. R 数据的导入和导出
  18. JS DOM获取标签/元素style样式
  19. mysql Pxc工作原理_浅谈MySQL-PXC架构
  20. corei7 64 poky linux,Solved: arm-poky-linux - NXP Community

热门文章

  1. Nginx隐藏PHP入口文件index.php
  2. python3 yield 大文件_详解Python3中yield生成器的用法
  3. 需求调研计划_干货!如何做好一个BI项目的规划和需求定义?
  4. 【MySQL】错误#1217:外键约束引起的错误
  5. oracle查看执行最慢与查询次数最多的sql语句
  6. zkui:好用的zookeeper ui工具
  7. 评估微型计算机的主要指标,微型计算机的工作过程和主要性能指标.doc
  8. 喜马拉雅xm格式转化mp3_怎样让mp3录音转文字?
  9. idea怎么将本地文件和远程git对比_IntelliJ IDEA将文件和文件夹与本地版本进行比较...
  10. linux内核2018,CVE-2018-1000001 linux kernel