暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

数据库在软件测试中的应用

松勤软件学院 2020-11-06
1539




01


摘要


我们在测试一个项目时,需要验证其需求是否正确,比如某购物平台,是否可以注册、登录、查找商品、购买商品、以及后期物流跟踪、订单评价等等流程。这些操作看似跟数据库是没有任何关系的。

那么,我们为什么要研究数据库呢,为什么数据库会成为软件测试人员的必备技能呢?



02


关键词

 软件测试,数据库,数据库测试




03


测试前准备


(一)项目
 该项目的主要业务功能:提交缺陷。

(二)环境
l 系统:win10
l 项目服务器:xampp
l 数据库:mysql
l 脚本:php+html
l 浏览器:google
 


04


数据库概念

l 数据:数据是存储的基本单元,包括文件、图片、视频、音频  
l 数据库:数据仓库,存放数据的地方。
l 项目中的数据一般用来存放系统中需要用到的数据。比如某个银行系统,数据库中可以存放用户信息,贷款信息,交易信息,货币信息等等。
 


05


数据库测试中应用


实际项目中,为了更好的维护数据,我们一般都用数据库来管理数据。
 
首先熟悉登录逻辑:
在登录页面上面,如果随意输入用户【错误账户/cuowumima】进行登录系统。

点击登录按钮,页面发现报错。
 

报错分析:因为系统中没有该用户。
那么如何能够获取到有效的登录用户呢?
我们看到,登录页面提供了注册功能,所以通过注册获取用户。
Step 1、点击【regist】按钮。
 

Step 2、输入注册信息,点击【submit】按钮。
 

Step 3、注册成功。
 

使用上述注册的用户名/密码登录系统,点击【submit】按钮。
 

提交成功。
Ps:此处提交成功的原因是该用户已经注册,是有效的用户。
 

5-1、数据查询

我们去数据库验证表中是否存在该用户,事实证明该数据存在于表中。
数据库操作:【select * from user;】
 

5-2、数据修改

数据库操作:
【update user set username=’yimi000’where username=’yimi001’】实现将用户名’yimi001’改成’yimi000’
 
继续使用’yimi001’可以登录系统吗?

登录失败。
 
思考:为什么用户名被改了之后就不能登录了呢?(此种问法就很欠揍)
分析:想要解答这个问题,我们要明白,当我们提交了用户名和密码,点击【submit】之后,系统后台是如何处理的。想要弄明白这个问题,就需要访问后台脚本,一起来看看后台脚本:
 

我们发现后台会执行sql语句,且该sql语句带入变量值之后为:select * from user where username=’yimi001’ ....
显然,系统中yimi001这个账户已经被我们改成了yimi000,最后程序判断查询结果失败,执行到脚本:’sorry ,Fail to Login...’
 

5-3、数据增加

在数据库中,增加一条用户
数据库操作:
insert to user(userid,username,password) values(1,’newYimi’,password);
 

Ps:密码值较长是因为数据库会对密码加密,所以我们直接用加密之后的密码。
使用新增加的用户信息【newYimi/123456】登录系统,点击【submit】按钮。
 


5-4、数据删除

我们继续假设,假如在数据库删除newYimi,还可以登录系统吗?
数据库操作:【delete from user where username = ‘newYimi’】
删除user表中用户newYimi
 

数据库操作,验证是否删除成功:
 

想象一下:使用newYimi再次登录系统,能否成功?
 
 
登录失败。
 

最后,请您分析:为什么会登录失败呢?

 

结尾篇

此篇文章中涉及的知识点是数据库比较普遍的应用,一般测试人员或多或少都会接触到一些,主要给大家捋通测试过程中前台测试和后台数据库的交互,希望能够帮到大家。



Linux面试题领取请添加小唐老师领取 
回复:Linux


文章转载自松勤软件学院,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论