测试用例(TestCase)是指对一项特定的软件产品进行测试任务的描述,体现测试方案、方法、技术和策略。
1.编写测试方法都有哪些等价类划分法边界值分析法错误推测法因果图法场景设计法
2.介绍一下每种测试方法(定义)并举例说明
定义:输入有效的等价类和无效的等价类的数据进行测试,有效等价类:是指合理的、有意义的数据。如:测试手机号码输入框正常格式输入无效等价类:与有效等价类的定义相反。指不合理的或无意义的数据。对于具体问题,无效等价类至少应有一个,也可以有多个。如:测试手机号码输入框输入错误格式(2.5.6开头等)
边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法。通常边界值分析法是作为对等价类划分法的补充,这种情况下,其测试用例来自等价类边界。如:测试手机号码输入框输入10.11.12位手机号其中11位是正确的10.12位为边界值
基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性的设计测试用例的方法。如:测试返回按钮,根据经验设计用例,测试其功能是否可用,与物理返回键点击后结果是否一致,返回的界面是否是需求要求的上个网页等等一切可能出现的错误
是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况。如:测试自助售卖机
4.水杯的测试用例
5.二维码的测试用例
二维码是否可以正常识别
可以识别的极限距离
每次刷新是否会更新
二维码清晰度
二维码的时效
使用不同的设备去扫描(ipda,跨平台,跨系统,前置摄像头)
使用不同的应用去扫描产品
在最阴暗,强光下去扫描
页面尺寸、形状、颜色与UI保持一致
二维码局部扫描是否可以扫描
是否能多人同时去扫描
失效的二维码是否能被识别
是否有扫描的次数上限
扫描方向、角度
截图或者拍照的二维码是否可以正常被扫描
被转发的二维码是否可以被识别
修改二维码是否能够正常使用
OCR同时扫描多个二维码
6.优惠券的测试用例
优惠券是否可以正常使用
外观是否与UI保持一致
部分商品是否能正常使用
购买商品的时候会不会提示使用优惠券
优惠券是否有有效期
特殊事件是否会延期
过期的优惠卷是否可以使用(是否会自动销毁)
是否能随商品赠送
优惠券是否可以跨店铺使用
进入商家优惠券是否会自动弹出
优惠券是否可以叠加使用,最多叠加几张
不同店铺的优惠券是否可以一起使用
优惠券立即使用按钮到产品列表
优惠券最多可以叠加几张
商家满减后与优惠券一起使用
特价商品是否可以使用优惠券
使用优惠券后是否减免相应的金额
不满足条件优惠券是否能正常使用
不同等级的用户是否使用相同的优惠券
使用优惠券购买商品后退款优惠券是否退还
使用优惠券支付失败优惠券是否还在
取消支付之后优惠券是否退还
退款中优惠券是否可以再次使用
退还的优惠券是否还可以再次使用
订单信息里边会不会显示我使用了优惠券
使用优惠券的时候断网优惠券还有没有
是否支持跨平台、跨系统、跨商家、跨应用版本使用
7.取款机的测试用例
8.三角形的测试用例
一、输入条件判断
三角形三边的输入条件:1.整数2.三个数3.正数4.非零数5.两边之和大于第三边6.两边相等7.三边相等
二、根据输出条件出现的结果
不构成三角形条件1-5有任意一个或多个不满足
构成普通三角形条件1-5都满足,但不满足条件6,7
构成等腰三角形条件1-5都满足,并且满足条件6
构成等边三角形条件1-5都满足,并且满足条件7
三、设计测试用例
有效等价类无效等价类整数非正数三个数只有一个数或两个数正数有负数非零数有边为零两边之和大于第三边两边之和小于或等于第三边两边相等三边相等
9.发红包的测试用例
输入200个数增加个数减少数据展示页面展示输入框点击字符边界值弹框展示页面跳转小数点保留按钮展示按钮展示输入密码框展示
选择支付方式
10.添加购物车的测试用例
页面是否与需求UI保持一致
能否正常加入购物车
没有库存的商品是否可以加入购物车
单个商品的数量上限
购物车总商品的数量上限
购物车是否能正常删除/增加商品
收藏列表是否能正常增加
购物车列表中光标放在收藏按钮上是否展示收藏字段
数量是否可以手动修改
购物车数量是否与购物车数量保持一致
商品的跳转
添加商品入购物车是否有添加成功的提示
添加商品的有效期
购物车的全选按钮是否正常操作
勾选特价商品是否展示特价商品名称
光标放在购物车上是否展示已选商品的详细信息
同一家店的商品是否会全部结算
进入购物车是否会默认全选
点击全选金额统计是否正确
是否可以一次性全部删除商品
结算时是否会提示优惠券
购物车按钮的跳转是否正常
购物车能否展示详细信息
预售商品是否能正常加入购物车,信息是否正确
同款不同尺码商品是否分开展示
商品数量改变,金额是否正确
购物车商品价格是否根据商家定价进行金额变化
购物车是否会推荐相似产品的介绍
点击结算按钮是否能够正常跳转
结算失败后,购物车商品是否还展示
购物车商品列表是否根据最新商品排列
11.你们公司进行交叉测试吗?并说明一下什么是交叉测试
在上线前我们会进行交叉测试交叉测试是指为了防止遗漏,保证产品质量,上线前进行模块互查。(一般在第三轮)
12.项目写了多少条测试
看项目大小,大的几千条,小的七八百
13.在项目中发现多少bug,一天能发现多少bug
一个项目100多个一天能发现7-8个
14.一天能写多少测试用例
50-60条太少:我们编写测试用例是按照流程走的,一个流程一个测试用例挺多:我们写的比较仔细。如页面的字体,颜色,样式等都会编写用例。
15.一天能执行多少测试用例
20-30条(开发质量)
16.公司的人员得分配分别是怎么进行分工的(说出人员配备比例)
一般一个20人左右的项目由2-3个人测试
一般一周迭代一次,功能多的话,两周迭代一次第一天:需求评审2-3天:编写测试用例以及代码开发4-5天:测试回归上线
18.测试用例都包含哪些元素
19.你们公司采用什么编写case(测试用例)
采用Excel编写
20.你们的依据什么编写测试用例
根据prd、产品模型等工作中所有可以接触到的文件。
21.你们的测试用例在哪里维护(SVN或者Git)
在SVN或者git维护SVN与GIT的区别(选择了解)区别1:GIT是分布式的SVN不是。这是GIT与其他非分布式的版本控制系统最核心的区别;GIT和SVN一样有自己的集中式版本库或服务器。但是,GIT更倾向于被使用于分布式模式,也就是每个开发人员从中心版本库/服务器上的chectout代码后会在自己的机器上克隆一个自己的版本库。区别2:GIT直接记录快照,而非差异比较GIT和其他本版本控制系统的主要差别在于,GIT只关心文件数据的整体是否发生变化,而大多数其他系统则只关心文件内容的具体差异。GIT并不保存这些前后变化的差异数据。实际上,GIT更像是把变化后的文件做快照后,记录在一个微型的文件系统中。每次提交更新时,都会浏览一遍所有文件的指纹信息并对文件做一个快照,然后保存一个指向这次快照的索引。为提高性能,若文件没有变化,GIT不会再次保存,而只对上次保存的快照做一个链接。区别3:GIT中近乎所有的操作的是本地执行在GIT中的绝大多数操作都只需要访问本地文件和资源,不用联网。但如果用SVN的话,差不多所有操作都需要连接网络。因为GIT在本地磁盘上就保存着所有当地项目的历史更新,所以处理起来速度飞快。
22.公司分为几个环境?
三个环境:测试环境:用来执行测试,上线前需要在测试环境中进行测试预发布环境:把即将发布的版本放在预发布环境进行回归生产环境(线上环境):把预发布环境回归完毕的版本放在生产环境
23.你们一般进行几轮测试
三轮:第一轮:冒烟测试第二轮:对系统进行全面性覆盖性的测试第三轮:回归测试
24.说测试用例的时候应该注意的点
首先先进行冒烟,将主功能流程测一遍,然后再说详细的测试点,从上到下,从左到右