35 | 如何准备测试数据?

摘要:
创建测试数据的基本方法从创建测试数据角度来看,测试数据准备方法可分为四类:基于GUI操作生成测试数据;通过API调用生成测试数据;通过数据库操作生成测试数据;使用API和数据库生成测试数据。为了避免在创建测试数据时过于关注实现细节,在实际工程实践中,我们经常将调用API生成测试数据的过程封装为测试数据准备函数。如何知道前端用户通过GUI操作修改了哪些数据库业务表?

测试数据创建的基本方法

从创建测试数据的维度来看,测试数据准备方法主要可以分为四类:

  • 基于 GUI 操作生成测试数据;

  • 通过 API 调用生成测试数据;

  • 通过数据库操作生成测试数据;

  • 综合运用 API 和数据库的方式生成测试数据。

基于 GUI 操作生成测试数据

很少直接使用基于 GUI 的操作生成测试数据。

通过 API 调用生成测试数据

通过 API 调用生成测试数据,是目前主流的测试数据生成方法。

为了规避在创建测试数据时过于在乎实现细节的问题,在实际工程实践中,我们往往会把调用 API 生成测试数据的过程封装成测试数据准备函数

如何了解前端操作调用了哪些后端 API?

  • 直接询问开发人员。

  • 直接阅读源代码。

  • 在一个你可以独占的环境上执行 GUI 操作创建测试数据,与此同时监控服务器端的调用日志,分析这个过程到底调用了哪些 API。

通过数据库操作生成测试数据

通过数据库操作生成测试数据,也是目前主流的测试数据生成方法。

见的做法是,将创建数据需要用到的 SQL 语句封装成一个个的测试数据准备函数,当我们需要创建数据时,直接调用这些封装好的函数即可。

如何知道前端用户通过 GUI 操作修改了哪些数据库的业务表?

  • 直接向开发人员索要使用到的 SQL 语句。

  • 直接阅读产品源代码。

  • 在一个你可以独占的环境上执行 GUI 操作产生测试数据,与此同时,监控独占环境的数据库端业务表的变化,找到哪些业务表发生了变化。

通过数据库操作生成测试数据的方法,主要优点是测试数据的生成效率非常高,可以在较短的时间内创建大批量的测试数据。

综合运用 API 和数据库的方式生成测试数据

在实际的工程实践中,很少使用单一的方法生成测试数据,基本都是采用 API 和数据库相结合的方式。最典型的应用场景是,先通过 API 调用生成基础的测试数据,然后使用数据库的 CRUD 操作生成符合特殊测试需求的数据。

总结

基于 GUI 操作生成测试数据是最原始的方法,但是效率很低,而且会引入不必要的依赖;通过 API 调用以及数据库操作的方式生成测试数据是目前主流的做法,通过 API 调用的方式具有数据准确度高但是创建效率较低的特点,而通过数据库的方式具有创建效率高但是维护复杂度也高的特点。

所以,在实际项目中,业界往往会综合采用 API 和数据库的方式生成测试数据,即通过 API 调用生成基础数据,然后使用数据库的 CRUD 操作进一步生成符合特殊测试需求的数据。


来源于 极客时间 茹炳晟 软件测试52讲

免责声明:文章转载自《35 | 如何准备测试数据?》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇libcurl+openssl实现https爬虫BZOJ 2141 排队(分块+树状数组)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

SQL Server 备份还原造成孤立用户的问题

首先需要了解一下SQL Server登录名和用户名的却别: 登录名:服务器方的一个实体,使用一个登录名只能进入服务器,但是不能让用户访问服务器中的数据库资源。每个登录名的定义存放在master数据库的syslogins表中。用户名:一个或多个登录对象在数据库中的映射,可以对用户对象进行授权,以便为登录对象提供对数据库的访问权限。用户定义信息存放在每个数据库...

R实战 第11篇:处理缺失值

在真实的世界中,缺失数据是经常出现的,并可能对分析的结果造成影响。在R中,经常使用VIM(Visualization and Imputation of Missing values)包来对缺失值进行可视化和插补。在使用VIM绘图时,有些绘图函数会对缺失值会自动进行插补。 缺失数据的分类: MCAR(完全随机缺失):若变量的缺失数据与其他任何观测或未观测...

JeecgBoot 单体升级微服务启动

JeecgBoot 单体升级微服务启动 参考地址 一、操作步骤 按照官网操作步骤即可。 需要执行项目下的SQL。(重要) 需要将微服务的项目加到Module里面,File-->Project Structure-->Modules 二、遇到的问题 需要修改数据库中的数据库地址,Redis地址 Nacos 启动后,配置信息加载的是数据...

PostgreSQL:在Linux系统上面安装PostgreSQL数据库

一、准备工作 这里使用的Linux操作系统是Centos7,选择在虚拟机上面装Centos7系统,然后在虚拟机上面安装PostgreSQL。 二、安装PostgreSQL 2.1、选择版本 进入PostgreSQL官网下载界面,找到Centos相关下载信息。官网下载地址:https://www.postgresql.org/download/linux/r...

thinkphp3.2链接数据库常用的配置选项

thinkphp3.2常用配置选项,app/Common/Conf/config.php 或者 app/Home/Conf/config.php 1 2 3 4 5 6 7 8 'SHOW_PAGE_TRACE'=>true; //开启右下角的调试信息小图标,调试时使用 'DB_TYPE'=>'mysql', //数据库类型...

RMAN连接及简单操作

一、RMAN的进入与退出 1、启动RMAN并连接到本地目标数据库   C:UsersAdministrator>set oracle_sid=orcl(如果只有一个实例,则不需要指定,RMAN会自动连接到默认实例) C:UsersAdministrator>rman target/ 恢复管理器: Release 11.2.0.1.0 -...