在面试时,常常会有面试官问道,在什么情况下会使用到相关工具的问题,而 mysql 也会有人这么问,有的小伙伴傻傻的回答,造数据的时候,如果这么回答或者只回答了一个简单的场景,90% 本次面试这个问题的得分为 0,如果你也是这么回答的,那么你必须看一下这篇文章了.
这个问题可以根据场景进行划分,列出测试同学在测试过程中所有使用数据库的场景,包括测试前的准备,测试中验证数据,以及性能测试准备大量测试数据,这些测试场景都是测试过程中所能遇到的,但是只这么回答还不够全面,需要根据场景说说具体细节是怎么去做的,这才是此问题的完整答案.
1.测试前-准备测试数据
在用例已写好之后,我们知晓需准备哪些测试数据,可以通过数据库导出/制造数据,来为后续测试做出准备,这样可以提高测试效率
具体的做法:
1.连接数据库
1.数据库的类型目前主流为 mysql
2.知道数据库的地址、IP或域名、端口号(默认3306,为了安全,很多公司会更改为其他端口号)、用户名、密码
3.下载连接数据库的工具-Navicat 官网下载即可
2.操作数据库
前提条件,要知道查看表,表结果是什么->找开发要数据字典或类似的文档
1.问开发,对应的是哪张表
2.了解到数据库以后,看单词的意思 去猜测表内容
3.造数据 insert into新增数据,update 修改原有数据
最后数据准备完成,大大提高了测试效率.
2.测试过程中-检查结果
测试过程中检查数据是否正确,出问题的时候,再去检查那就晚了,所以要做到对数据流转的测试 这样的目的,1.检查数据是否正确,2.核对数据
具体的做法:
1.连接数据库
2.操作数据库
前提条件,要知道查看表,表结果是什么->找开发要数据字典或类似的文档
1.问开发,对应的是哪张表
2.了解到数据库以后,看单词的意思 去猜测表内容
3.查询数据是否正确 ,查询语句select····
最后可以保证,1.确保测试质量 2.排查是否为数据的问题
3.性能测试-准备大量测试数据(若自己掌握较差,不讲性能相关可忽略)
首先需要做性能测试的时候,必须准备大量测试数据 ,所以导出/制造数据成了必要前提
1.连接数据库
2.操作数据库
前提条件,要知道查看表,表结果是什么
导出/制造数据
1.生产环境中的数据导入到测试环境,使测试环境数据更加丰富,更贴近用户使用习惯 mysql dump
2.存储过程造数据
3.自动化脚本,Python利用pymsql去造数据
4.Jmeter去写
3.用drop 或者delete 去删除性能测试中的脏数据
我是小巴哥,一个陪你成长,实实在在分享 测试干货职场经验的人,欢迎关注!!!