tpshop购物网站价格筛选功能的测试用例设计
测试对象:红框内的“价格筛选功能”
以下是功能需求:
1、 除了空以外,输入框不能输入数字之外的内容。
备注:如果出现数字之外的内容,输入框禁止输入。
2、 输入框不能小于0
备注:如果出现小于0的数字,输入框禁止输入负号,只保留数字。
3、 框1为空,框2有数值,清空所有输入框
4、 框1有数值,框2为空,清空所有输入框
5、 两个框都为空,搜索出所有商品
6、 第一个框的值要小于等于第二个框的值。
第一个框的值和第二个框的值相同时,如果存在该价格的商品仅展示该价格的商品,若没有,弹出“抱歉,没找到您要搜索的商品,换个条件试试!”
这个小模块的测试用例如何设计呢?百思不得其解,是用等价类划分法还是用判定表法还是两个方法结合着来设计测试用例?
有一个未经验证的思路:
先按照等价类划分法划分:
有效等价类:空、不小于0的整数;
无效等价类:中文、英文、特殊字符,以及特殊的无效等价类,如小数和负数。
第一、先测试有效等价类能否正常输入,经测试可以正常输入
第二、再测无效等价类,中文、英文、一般特殊字符是否确实被禁止输入,经测试确实无法正常输入,但是特殊情况下可以输入(比如数据是复制进去的时候)。
之后再测试无效等价类中的两个特殊情况,小数和负数:
小数,比如输入(或者复制进输入框)50.5,输入框中的数据会自动变成505,说明小数这个无效等价类确实无法输入到输入框中,理由是输入框中的数据确实不是一个小数50.5而是一个整数505。
负数也是同理,比如输入-500,输入框中的数据会自动变成500,说明负数这个无效等价类也无法输入到输入框中,理由同样是输入框中的数据最终确实不是一个负数-500而是一个正整数500.
负小数也是同理,最终输入到输入框中也会变成正整数。
所以,小数和负数这两个无效等价类经测试,满足空和数字以外的内容禁止输入这个需求。
第三、在两个输入框中都输入的是有效等价类的前提下,通过两个输入框中输入的数据之间的对比来测试能否实现特定的逻辑功能
1、两个框都为空,预期结果是可以搜索出所有商品,经测试符合需求;
2、框1为空,框2有数值,预期结果是可以清空所有输入框,经测试符合需求;
3、框1有数值,框2为空,预期结果是可以清空所有输入框,经测试符合需求;
4、框1框2都有数值且均不为0,且框1值小于框2值,预期结果是可以搜索出价格在这两个值之间的商品,经测试符合需求;(为什么要排除为0的情况?因为要把边界值单测)
4.1、框1框2都有数值,且框1值小于框2值,且框1值为0,预期结果是可以搜索出价格在0-框2值之间的商品,经测试搜索出了所有商品。此处没能满足需求,需记录在缺陷报告中;
4.2、框1框2都有数值,且框1值小于框2值,且框1值为1,预期结果是可以搜索出价格在1-框2值之间的商品,经测试符合需求;
5、框1框2都有数值且均不为0,且框1值等于框2值,且待搜索的商品中有价格等于框1/2值的,那么就仅搜索出并展示这个价格的商品;
5.1、框1框2都有数值且均为1,且待搜索的商品中有价格等于1的,那么就搜索并展示这个价格的商品;
6、框1框2都有数值且均不为0,且框1值等于框2值,且待搜索的商品中没有价格等于框1/2值的,那么就弹出“抱歉,没找到您要搜索的商品,换个条件试试!”;
6.1、框1框2都有数值且均为1,且待搜索的商品中没有价格等于1的,那么就弹出“抱歉,没找到您要搜索的商品,换个条件试试!”;
7、框1框2都有数值且均为0,且待搜索的商品中有价格等于0的,那么就搜索并展示这个价格的商品;
8、框1框2都有数值且均为0,且待搜索的商品中没有价格等于0的,那么就弹出“抱歉,没找到您要搜索的商品,换个条件试试!”;
9、此处少了一个需求,即是框1的值大于框2的值,会有怎么样的提示;
以上的思路大致是:
1、先独立测试两个输入框中在输入无效等价类时是否如预期一样,除了空和数字以外的内容都不会显示;(这一步测试是为了确保输入框中只能输入空或者自然数,为下一步的逻辑功能实现做铺垫)
2、再构造有效等价类来输入到两个输入框中,通过对比两个输入框中的值,来测试是否能实现预期的逻辑功能;(这一步测试是为了在输入的是空或者自然数的前提下,确保需求中的价格筛选功能可以实现)
经过以上的测试思路,感觉已经测试到了价格筛选功能的主要测试点,只是这个测试用例设计办法有点繁琐。
有点啰嗦,如果各位看官有更好的方法或者发现了本文中的错误,欢迎指正
tpshop购物网站价格筛选功能的测试用例设计的更多相关文章
- PHP操作实现一个多功能购物网站
PHP操作实现一个多功能购物网站 一.需要实现的页面: Index.aspx:浏览商品页面,显示商品列表,用户可以点击“加入购物车“. ViewCart.aspx:查看购物车页面,显示已购买的商品信息 ...
- 织梦CMS实现多条件筛选功能
用织梦实现筛选的功能,其实主要就是运用到了织梦的高级搜索功能,然后用ajax去post替换掉本来的结果就可以了. 其实筛选的话,主要有两个问题需要解决,一个是前台的筛选实现,一个是后台根据前台的点击, ...
- 【PHP开源产品】Ecshop的商品筛选功能实现分析之一
一.首先,说明一下为什么要对category.php文件进行分析. 原因如下: ①个人对商城类商品筛选功能的实现比较好奇: ②对商城中关于商品的数据表设计比较感兴趣.(该功能涉及到与数据库的交互,而且 ...
- php实现一个简单的购物网站
实现一个简单的购物网站 一.考试时间:8小时 二.开发工具:DW 三.数据库:见附件 四.需要实现的页面: Index:浏览商品页面,显示商品列表,用户可以点击“购买“. ViewCart:查看购物车 ...
- 求解:php商品条件筛选功能你是怎么做出来的?
求解:php商品条件筛选功能你是怎么做出来的? 2013-09-25 13:43 chenhang607 | 浏览 2756 次 资源共享 求思路或者方法,最好能有些代码 2013-09-25 14: ...
- springMVC+angular+bootstrap+mysql的简易购物网站搭建
springMVC+angular+bootstrap+mysql的简易购物网站搭建 介绍 前端的css框架用了bootstrap, 以及bootstrap的JS组件, 以及很好用的angular(a ...
- php商品条件筛选功能你是怎么做出来的?
php商品条件筛选功能你是怎么做出来的? php按条件筛选商品的功能,还是比较简单的.其实就是根据不同的条件组成SQL查询条件,从数据库里查出不同的商品出来.举个例子:用户可以按价格范围.按品牌.按商 ...
- Redis构建处理海量数据的大型购物网站
本系列教程内容提要 Java工程师之Redis实战系列教程教程是一个学习教程,是关于Java工程师的Redis知识的实战系列教程,本系列教程均以解决特定问题为目标,使用Redis快速解决在实际生产中的 ...
- 基于Spring+Spring MVC+Mybatis的B2C购物网站
代码地址如下:http://www.demodashi.com/demo/12935.html 准备工作 当前项目运行的系统环境是MacOS,已经测试可以正常运行,并且之前开发的时候也在Windows ...
随机推荐
- APUE 4.8 umask函数
- gamit安装
需要准备的文件: 默认已安装好虚拟机和Ubuntu系统 1.输入用户名密码,进入Ubuntu10.04桌面.按下“Ctrl+Alt+T”,进入终端: 2.在终端输入“sudo gedit /etc/a ...
- python第十课——循环结构收尾
2.4.time模块的初体验 sleep(sec)函数:程序一旦执行到sleep()函数,会立即休眠sec秒,等到时间到了,自动醒过来,然后继续往下执行... 思路步骤: 第一步:导入time模块 i ...
- Vue2+Webpack创建vue项目
相比较AngularJS和ReactJS,VueJS一直以轻量级,易上手称道.MVVM的开发模式也使前端从原先的DOM中解放出来,我们在不需要在维护视图和数据的统一上花大量时间,只需要关注于data的 ...
- [USACO08DEC]Patting Heads
嘟嘟嘟 这题还是比较水的.首先O(n2)模拟显然过不了,那就换一种思路,考虑每一个数对答案的贡献,显然一个数a[i]会对后面的a[i] * 2, a[i] * 3,a[i] * 4……都贡献1,.那么 ...
- Python文件和流
#coding = utf-8 from pprint import pprint import fileinput #read(n) f = open(r'E:\test_dir\somefile. ...
- Docker实战(一)之使用Docker镜像
镜像是Docker三大核心概念中最为重要的,自Docker诞生之日起“镜像”就是相关社区最为热门的关键字. Docker运行容器前需要本地存在对应的镜像,如果镜像没有保存至本地,Docker会尝试先从 ...
- pl/sql连接远程oracle
1.找到oracle安装程序下的网络配置助手 2.选中本地net服务,进行添加 3.输入远程oracle服务名 4.选中tcp协议 5.输入远程oracle的ip地址 6.在网络服务名处,随便输入一个 ...
- jmeter报错之“请在微信客户端打开链接”
这是一个还没解决的问题,这里纯粹记录自己思考的过程,后续给自己参考. 先说明情景:对微信公众号的一个接口进行调用跑通,后续可能需要压测(是的,仅仅是调通一个接口而已o(╥﹏╥)o) 1.按照我理解的正 ...
- 蓝牙开发<coreBluetooth/CoreBluetooth.h>
/* 建立中心设备 扫描外设(Discover Peripheral) 连接外设(Connect Peripheral) 扫描外设中的服务和特征(Discover Services And Chara ...