测试思想-测试设计 关于测试用例设计的一点感想

简介: 测试思想-测试设计 关于测试用例设计的一点感想

关于测试用例设计的一点感想


直接上例子,如下,要测的是一个卡券验证功能:

 


 

描述:打开二维码扫描卡券,可对卡券进行验证。支持的卡券分三种,会员主卡,折扣券,代金券,点击手动输入按钮(不知为何,拍照时显示成那熊样了),弹出如下界面

 

 



描述:输入编号,点击“优惠券”,“会员卡”图标,可对输入的卡券(会员主卡,代金券,折扣券)编号验证,另外,如果输入是手机号,则对手机号关联会员的会员主卡进行验证

 

如果不考虑逆向用例,考虑正向用例,你会咋样设计用例?是否如下:

扫码验证会员主卡

扫码验证折扣券

扫码验证代金券

 

手动输入会员主卡编号,优惠券验证

手动输入会员主卡编号,VIP验证

手动输入手机号,VIP验证

……

 

这样设计用例带来的结果是啥呢?用例数比较多,进而花费的测试时间也跟着变长,如果再加上一些条件(本例子中还有个条件:是否携带“不可优惠金额”,验证结果会受到其影响),那就更多了,咋办呢?

 

实践中,我是这么做的,先不着急写用例,写操作,操作时用fiddler等工具,抓取发送的请求接口,进行观察,结果发现:

1、相同前提下,扫码或者是手动输入编号,调用的都是同一接口,扫码主要是读取卡券编号

2、相同前提下,手动输入卡券编号验证,点击“优惠券”,“会员卡”图标,调用的也是同一个接口

 

 


                           
调用接口

 

接下来就简单多了,对“扫码”进行详细的用例设计,然后针对手动输入编号,分是否输入手机号,如果是手机号,接口实现中必须根据传入的手机号查找对应会员的会员主卡,并进行校验;如果是非手机号,确保正确调用了接口即可。

 

 

综上,我们在测试用例不能仅停留在用例设计原理上,很多时候还应该从实现角度来进行设计分析,减少不必要的时间投入,特别是逻辑复杂的情况,通常我们可以做如下事情:

 

1、分析调用的接口请求

查看不同(相似)入口,发起的请求调用是否一样

 

2、分析代码实现

常查看代码逻辑,查看影响用例设计的因素之间的制约关系,举例如下

if条件1 ==:

do something

else if条件2 ==:

do something

 

 

if条件1 ==:

do something

 

if条件2 ==:

do something

 

如上,不同的代码实现,影响用例设计的条件1和条件2之间的关系是不一样的,对应的,用例设计也就不一样了。

3、查看调用的实现相关的sql语句

有时候,我们也可以通过日志获取开发代码调用的sql语句,作为用例设计中结果校验的手段。通过sql语句来分析界面数据是怎么展示出来的,数据取值是否正确。

 

 

目录
相关文章
|
2月前
|
数据采集 运维 安全
测试需要写测试用例吗?
测试需要写测试用例吗?
30 0
|
3月前
|
前端开发 测试技术
可访问性测试清单/测试用例/场景
可访问性测试清单/测试用例/场景
可访问性测试清单/测试用例/场景
|
4月前
|
Web App开发 SQL 安全
软件测试/测试开发|一文告诉你什么是测试用例
软件测试/测试开发|一文告诉你什么是测试用例
49 0
|
4月前
|
测试技术
软件测试/测试开发|测试用例设计方法——边界值
软件测试/测试开发|测试用例设计方法——边界值
165 1
软件测试/测试开发|测试用例设计方法——边界值
|
4月前
|
测试技术
软件测试/测试开发|测试用例设计方法——等价类划分
软件测试/测试开发|测试用例设计方法——等价类划分
45 1
|
4月前
|
分布式计算 测试技术 Spark
通过Langchain实现大模型完成测试用例生成的代码(可集成到各种测试平台)
通过Langchain实现大模型完成测试用例生成的代码(可集成到各种测试平台)
673 0
|
2月前
|
测试技术
接口测试测试用例编写注意事项
接口测试测试用例编写注意事项
|
1天前
|
测试技术
【测试】优化软件测试:有效测试用例设计的关键
【测试】优化软件测试:有效测试用例设计的关键
|
4天前
|
测试技术 API 网络架构
Python的api自动化测试 编写测试用例
【4月更文挑战第18天】使用Python进行API自动化测试,可以结合`requests`库发送HTTP请求和`unittest`(或`pytest`)编写测试用例。以下示例: 1. 安装必要库:`pip install requests unittest` 2. 创建`test_api.py`,导入库,定义基础URL。 3. 创建继承自`unittest.TestCase`的测试类,包含`setUp`和`tearDown`方法。 4. 编写测试用例,如`test_get_users`,检查响应状态码和内容。 5. 运行测试:`python -m unittest test_api.py`
12 2
|
5月前
|
人工智能 测试技术
软件测试/人工智能|如何利用ChatGPT帮助我们编写测试用例
软件测试/人工智能|如何利用ChatGPT帮助我们编写测试用例
81 0

热门文章

最新文章