工作中如何构造测试数据

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


在日常的测试工作中,大家是否会遇到类似的问题呢?

1、比如页面数据不够,翻页功能无法测试

2、页面某些功能暂时没有找到满足要求的数据

3、做数据分析的时候,需要用到大量的数据,而现有环境中数据量满足不了

......


怎么去解决数据的问题呢?



1)、基于GUI构造测试数据

好处:

1、不光是在造数据,本质上还是一次端到端的测试

2、没有过多技能要求,熟悉页面,能在页面进行操作就行

缺点:

1、创建数据的效率很低

2、创建数据依赖太多(依赖后台接口、测试环境和开发的支持)

3、基于 GUI 的测试数据创建方法不适合封装成测试数据工具

4、造数据的成本高,稳定性差,依赖性太强




2)通过api调用(python的faker库,jmeter等方式)

优点:

1、生成的数据可靠

2、效率高

3、构造数据的脚本可以改成接口case

4、能跳过前台,不依赖于前端

缺点:

1、需要学习成本

2、需要整理接口

3、有个别的业务,需要用到接口之外的一些其他参数(可能有部分数据是前端处理之后传给接口的),处理起来非常麻烦



3)通过数据库(sql)生成测试数据

优点:

1、效率比较高

缺点

1、整理数据库的关系非常困难,整理一个业务对应的所有sql很不容易


4)基于线上现有业务数据脱敏后导入测试环境

在涉及到大数据测试时,往往需要大量的数据用于验证逻辑,这个时候可以考虑将线上数据脱敏后,同步到测试环境的数据库中,同时也可以避免自己构造的数据数据考虑的场景不全面,导致漏测。


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

基于 GUI 操作生成测试数据是最原始的方法,但是效率很低,而且会引入不必要的

依赖;通过 API 调用以及数据库操作的方式生成测试数据是目前主流的做法,通过 API 调

用的方式具有数据准确度高但是创建效率较低的特点,而通过数据库的方式具有创建效率高

但是维护复杂度也高的特点。


相关文章
|
9天前
|
分布式计算 Shell MaxCompute
odps测试表及大量数据构建测试
odps测试表及大量数据构建测试
|
14天前
|
开发框架 .NET Java
C#集合数据去重的5种方式及其性能对比测试分析
C#集合数据去重的5种方式及其性能对比测试分析
31 11
|
16天前
|
开发框架 .NET Java
C#集合数据去重的5种方式及其性能对比测试分析
C#集合数据去重的5种方式及其性能对比测试分析
42 10
|
2月前
|
机器学习/深度学习 算法 UED
在数据驱动时代,A/B 测试成为评估机器学习项目不同方案效果的重要方法
在数据驱动时代,A/B 测试成为评估机器学习项目不同方案效果的重要方法。本文介绍 A/B 测试的基本概念、步骤及其在模型评估、算法改进、特征选择和用户体验优化中的应用,同时提供 Python 实现示例,强调其在确保项目性能和用户体验方面的关键作用。
45 6
|
2月前
|
机器学习/深度学习 算法 UED
在数据驱动时代,A/B 测试成为评估机器学习项目效果的重要手段
在数据驱动时代,A/B 测试成为评估机器学习项目效果的重要手段。本文介绍了 A/B 测试的基本概念、步骤及其在模型评估、算法改进、特征选择和用户体验优化中的应用,强调了样本量、随机性和时间因素的重要性,并展示了 Python 在 A/B 测试中的具体应用实例。
35 1
|
3月前
|
存储 测试技术 数据库
数据驱动测试和关键词驱动测试的区别
数据驱动测试 数据驱动测试或 DDT 也被称为参数化测试。
46 1
|
3月前
|
机器学习/深度学习 监控 计算机视觉
目标检测实战(八): 使用YOLOv7完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)
本文介绍了如何使用YOLOv7进行目标检测,包括环境搭建、数据集准备、模型训练、验证、测试以及常见错误的解决方法。YOLOv7以其高效性能和准确率在目标检测领域受到关注,适用于自动驾驶、安防监控等场景。文中提供了源码和论文链接,以及详细的步骤说明,适合深度学习实践者参考。
738 0
目标检测实战(八): 使用YOLOv7完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)
|
3月前
|
机器学习/深度学习 并行计算 数据可视化
目标分类笔记(二): 利用PaddleClas的框架来完成多标签分类任务(从数据准备到训练测试部署的完整流程)
这篇文章介绍了如何使用PaddleClas框架完成多标签分类任务,包括数据准备、环境搭建、模型训练、预测、评估等完整流程。
208 0
|
3月前
|
机器学习/深度学习 数据采集 算法
目标分类笔记(一): 利用包含多个网络多种训练策略的框架来完成多目标分类任务(从数据准备到训练测试部署的完整流程)
这篇博客文章介绍了如何使用包含多个网络和多种训练策略的框架来完成多目标分类任务,涵盖了从数据准备到训练、测试和部署的完整流程,并提供了相关代码和配置文件。
80 0
目标分类笔记(一): 利用包含多个网络多种训练策略的框架来完成多目标分类任务(从数据准备到训练测试部署的完整流程)
|
3月前
|
机器学习/深度学习 XML 并行计算
目标检测实战(七): 使用YOLOX完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)
这篇文章介绍了如何使用YOLOX完成图像目标检测任务的完整流程,包括数据准备、模型训练、验证和测试。
306 0
目标检测实战(七): 使用YOLOX完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)