按测试对象划分:
界面测试+性能测试+安全测试+兼容性测试+兼容性测试+可靠性测试
系统测试:回归测试(修改BUG或者是版本迭代)+冒烟测试(正式测试之前);
验收测试:同系统测试,相比于系统测试来说还要加上文档测试,包含了a测试,b测试和第三方测试
按照地域划分: 软件国际化+软件本地化
自动化测试的价值:写好的自动化测试脚本的复用率,避免重复修改,只用了一次体现不出来价值
文件压缩项目实战:
一)项目进行启动,首先介入了解需求:
1)项目背景:磁盘空间不够,当我们做成一个压缩包之后,我们就可以把这个文件放到空间里面了,我们需要做一个压缩,解压缩的文件;
2)目标:我们要完成对所有文件类型的压缩和解压缩;
目标:完成所有文件的压缩
时间:2022-8-20-2022-8-27
项目经理:唐僧
产品经理:孙悟空
开发:猪八戒
测试:沙和尚
二)功能需求:
1)文件类型:支持所有的文件
2)压缩文件个数:最多压缩100个文件
3)压缩大小:不超过5G
4)性能需求:压缩,解压缩文件不超过30min
5)安全需求:带有病毒感染的文件是不可以进行压缩的
6)易用性需求:操作简单,方便
7)兼容性需求:windows7,windows 8,windows 10都是可以进行使用的
8)界面需求:布局,排版美观
三)制定测试计划和测试策略
1)测试的范围以及测试点:
1.1)测试的范围和测试点
1.2)压缩,解压缩文件
1.3)单文件,多文件,各种类型的文件都要进行测试
1.4)从压缩文件的个数和压缩文件的大小进行测试
2)测试方法:手工进行测试,因为项目周期太短无法进行自动化测试用例的编写,写了也只能用一次,没啥意义;
3)测试所依据的类型:
功能,性能,安全,兼容,界面,易用性按照对应的测试用例要全部进行执行
要用到等价类和边界值结合设计测试用例来进行测试,压缩文件个数,还有压缩文件的大小
4)测试管理工具:禅道(记录测试用例和BUG);
测试计划:主要是对时间的一个计划,主要要进行数据测试准备,因为测试的时候就是需要用数据进行测试(之前说过不超过100个文件,文件大小不超过5G)
测试资源:
两个电脑测试三个操作系统是可以装双系统的
风险 :人员离职:人员备份、感情留人测试轮数:第一轮测试:冒烟测试,全面测试第二轮测试:冒烟测试, BUG 验证,回归测试第三轮测试:冒烟测试, BUG 验证,全面回归测试第四轮测试:封版测试(版本封了,不能再继续进行测试)配置管理:每发布一个版本将源代码上传至: https://github.com/broncho ,并做好版本管理项目中产出的所有文档上传到 :svn://118.24.113.xx/变更管理:按照公司的变更管理流程执行评审管理:按照公司的评审管理流程执行测试用例会进行测试用例评审,我们会讲解测试用例来给产品经理和一些其它开发人员,组内一些测试人员,项目经理,看看测试用例是否覆盖所有的需求,开发人员会告诉测试人员代码一些隐含条件和逻辑怎么测,从而让测试用例来覆盖软件中所有的需求;准入准出标准准入测试:冒烟测试通过(这是进入到测试的一个规则)准出标准:严重、重要BUG无遗留,一般、次要BUG合计不超过2个
4)测试执行流程
1) 需求测试基于需求的测试方法是基本的测试方法,而需求的质量直接影响到后续的开发和测试工作需求审核需求测试测试设计中进行需求测试需求测试要素:正确性,必要性,完整性,一致性需求测试应该尽早开始2) 提测版本测试冒烟测试版本测试中信息传递:修改内容,配置管理3) 系统测试根据测试用例执行测试缺陷管理4) 回归测试确认回归内容确认回归方式为手工用例的回归bug 的回归5) 编写测试报告缺陷分析测试结论
5)编写测试用例
边界值(边界的左边和边界的右边都要进行考虑)
功能测试:
压缩单个文件
压缩0个文件------它的预期结果是压缩失败
压缩50个文件压缩100个文件压缩101个文件-----压缩失败压缩大小0K文件------- 它的预期结果是压缩失败压缩大小1K文件压缩大小3K文件压缩文件大小刚好5G文件压缩文件大小超过5G文件![]()
压缩相同类型的文件
压缩多个不同类型文件切换目录压缩二次压缩:![]()
解压的时候磁盘空间不足:
压缩不同扩展名字的压缩文件
选择文件以及压缩之后的文件扩展名
压缩文件一半的时候强制进行取消:
压缩率验证:
解压单个被压缩的文件:
解压缩0个文件
解压缩50个文件
解压缩100个文件
解压缩101个文件
解压缩大小是0K的文件
解压缩大小是1K的文件
解压缩大小是3K的文件
解压压缩文件大小超过5G文件解压缩文件大小刚好等于5G的文件
解压缩相同类型的文件
解压缩多个不同类型的文件
二次解压缩文件
解压时磁盘空间不足
解压缩不同扩展名字的压缩文件
解压缩一半的时候强制进行取消
未压缩文件进行解压缩------>解压缩失败
切换解压缩的目录
性能测试:
压缩文件大小刚好5G文件-------压缩时间大于等于30min压缩文件大小小于5G文件压缩5G文件类型相同压缩5G文件类型不相同压缩文件1个5G文件压缩100个合计5G文件解压缩文件大小刚好等于5G
解压缩5G文件类型相同解压缩5G文件类型不相同解压缩文件1 个5G文件解压缩100个合计5G文件
安全测试:
压缩一个带有病毒的软件
压缩多个文件,其中一个是带有病毒的文件
压缩多个文件,其中多个是带有病毒的文件
解压缩一个带有病毒的文件
解压缩多个文件,其中一个是带有病毒的文件
解压缩多个文件,其中有多个是带有病毒的文件
容错性
解压缩已经被损坏的压缩包-----提示文件已经被损坏不可以进行解压
关于手机APP的测试功能:
1)在我们的软件安装之后,我们是要对这些应用和功能要检查是否可以正常稳定的运行
1.1)有的情况下手机APP在安装完成之后要你能够正常进行点击,尤其是不能够出现一进入到软件APP就出现闪退的情况,软件做的不好,如果说我们的客户端这里面的请求比较多的时候我们就处理不过来
1.2)一次闪退还可以,多次闪退用户就有可能直接卸载,因为需要重复进行进行入到软件,假设我们在使用软件的过程中填写一些重要数据,结果系统直接进行闪退了,用户直接说XXXXXX)
2)APP的速度是否可以让人接受,不同页面的切换是否流畅,要在用户可以接受的响应时间范围之内
3)当我们的网络出现异常的时候,我们的系统应用是否会出现崩溃,这个时候如果出现了崩溃的情况,那么此时系统应该给用户一个提示,请您重新检查你的网络设施,请您重新检查您的页面,请您重新点击你的按钮,刷新一下,比如说如果我们在请求超时的情况下,如果说程序处理得不好,就直接有可能会发生就有可能发生Crash
举个例子来说在黄油相机的APP4.8.2.8版本,在没有网络的状态下,进入到照片编辑页面的时候,我们选择拖动照片,就会发生闪退,所以说当我们反复进行使用同一个该功能的时候,系统可以正常的进行反应,而不是说直接出线崩溃的情况
4.编写具体的测试用例:
一:账号密码进行登录:
1)输入正确的符合账户密码要求的账号密码,可以进行登录和注册
2)已经注册好的用户是不可以进行再次注册的,手机号已经注册过,昵称重复也不会让你注册的,并给用户一些合适的提示信息
3)未注册的用户尝试进行登录
4)我们输入的密码必须暗文显示
5)账号密码输入框对最大长度和格式应该有校验
6)账号或者密码出现错误的时候,建议提示账号错误或者密码错误,而不是提示账号错误或者密码错误,降低式对密码的可能性,是安全方面的一个考虑
7)密码传输的时候一定要加密,抓取请求的时候进行查看;
8)当我们的密码更改之后,在进行登陆的时候是否进行了对有效数据的一个校验,修改前的密码进行失效
9)为登陆的时候对一些页面的操作,是否进行了一些控制
我们有的功能是用户没有进行登录的时候是进行操作不了的,比如说博客系统的查找所有博客的功能)
10)当我们进行切换用户登录的时候,我们进行检测登陆的信息是否能够做到及时更新,比如说头像和姓名
11)对于手机端和电脑端进行操作的时候,我们要确保数据库操作无误,并且我们的每一个端可以及时看到数据的更新(当有人给我们发送信息的时候,我们手机端也登陆了QQ,电脑端也进行登录了QQ,那么消息是否可以做到同步更新呢?(数据同步,因为用的是同一个账户,用的数据表是同一张表)
12)当我们多个设备同时登陆一个账号的时候(IOS+IOS,Android+Android,IOS+Android),检查是否将原用户提出,系统页面并会显示异地登陆,并对一些需要登陆才能使用的页面操作无权限(不能说我们使用两个手机,或者两个电脑同时登陆同一个QQ设备)(如果说APP账户切换手机进行重新登陆,就需要进行验证)
二:手机号注册登录:(刷脸登录,二维码登录,人脸识别,指纹登陆测试点)
1)手机号输入框格式进行验证,手机号位数必须是11,况且开头的数字必须是1
2)我们可以使用手机号进行登录,当我们收到手机验证码的时候,进行验证手机的短信的接收是否及时(检测监控时间)
3)验证码错误的时候,要给用户进行提示登录失败和验证码错误
4)重复发送验证码,前一个验证码失效
5)频繁操作验证码发送,应该有操作限制
6)验证码有效期显示
2)关于手机APP的日历控件: 目前包含了很多具有购票功能的APP都会进行设置日历控件方便进行选票
1)方便进行日期的一个记录,记录一些备忘录,12306方便选票
2)对日期的一个准确的变化
3)月份和日期相对对应(2月有28天,七月有31天)
4)当我们进行跨年的时候,年份是应该有所增加的
3)权限设置:高德地图,完美校园打卡,打开定位,导航,就要允许访问权限
我们当前使用的很多APP都依赖于位置,通知,网络等用户权限,针对用户权限,比如说杭州公交APP,在我们进行首次启动的时候会进行询问用户是否同意定位,通知,网络权限,我们还可以进行关注以下几点:
1)在我们首次访问APP的时候询问是否可以同意开启权限:位置,通知,网络,是否是在一直使用这款APP的时候有权限,还是一直,不管是否进行使用,都会有权限
2)消息权限开始的时候,消息推送是否及时?
IOS系统应用和后台关闭的时候都是应该可以收到的,Android系统在后台关闭进程之后就不会进行推送
网络登录验证:看看是否在不同网络运营商的环境下是否可以实现一些指定的功能(例如说登录功能)-----中国移动,中国电信,中国联通
淘宝购物车的测试用例:
一)界面测试:
一)打开界面之后,页面的布局是否合理,显示是否完整
比如说标题,宝贝总数,右上角的管理,字体的格式,字体的大小
二)不同卖家的商品在不同的区域显示,区分明显,店铺和店铺之间是分隔开的
2.1)每一个店铺区域都有店铺的名称,店铺里面的商品可以正常进行显示;
2.2)不可能没有商品,只显示店铺的名称;
2.3)店铺的icon和图形展示正确,此处要注意一下,icon只是店铺前面一个正常的小房子,但是按钮它是有点击功能的,比如说发送和点击功能;
2.4)可以领取优惠卷的店铺在店铺的右上角带有领卷字样
2.5)做活动的店铺,在底端会展示本店的优惠活动,同时在地段右下角展示去凑单字样
三)页面的功能按钮可以正常的显示,比如说勾选圈圈,编辑商品数量的编辑框,全选功能,结算功能;
四)商品最下面展示失效宝贝
五)最低端显示你可能还喜欢
六)向下滑动页面,在购物车顶端展示这个中间展示购物车(宝贝总数量)
七)购物车有商品降价或者库存紧张的或者有限购件数的,在商品详情下面会有对应的字体显示
八)在商品下面展示商品的规格,比如说商品的大小颜色,衣服的尺寸
二)功能测试
一)购物车页面所有连接正常
1)点击店铺名称,可以进入到该店铺首页;
2)点击领卷,可以进入到该店铺的领卷页面;
3)点击一个商品,可以进入到该商品的购买的详细界面,可以看到商品的价格图片等等;
4)仅限有活动的店铺,点击去凑单或者本店活动进入到活动详情页面;
5)点击相似,会进入到和本商品相似商品的界面,将某一个商品进行左滑里面有更多按钮,加入分组,移动到顶部,还有删除;
6)清空的话会有一个去首页逛逛的链接到首页;
二)从商品信息页面中添加的商品可以显示在购物车中,主要是分两个方面进行测试:
2.1)在APP端添加商品可以添加到购物车里面
2.2)在PC端用同一个账户添加的商品,登录APP端的时候也可以在购物车中正常的显示
三)如未登录淘宝页面,那么点击购物车中的商品直接进行结算,那么系统会显示请输入用户名或者密码,或者提示其他非注册用户的购物方式;
因为淘宝和互联网是属于同一家公司的;
四)如果没有选择任何商品点击结算,那么会直接提示用户"请添加要结算的商品"
五)勾选商品之后,已选商品的总价(和优惠满减活动会进行显示)
六)勾选商品,点击结算按钮之后,进入到确认订单信息界面,在订单确认界面里面会有确认收货地址,支持多个收货地址,核对购买商品的信息
七)在购物车页面中,可以对添加的商品信息做信息的修改,并且自动保存成功
1)可以编辑商品的数量,增加或者减少,商品数量减少到1的时候不能再减少;
2)同一个商品,在商品信息界面上多次添加的时候,数量会自动进行增加,可以无限制地进行增加,但是不可以无限制地减少;
3)在进行编辑某一种商品数量的时候不会影响到购物车顶端的购物车总数,购物车总数是添加宝贝的件数,只关心商品的种类;
八)可以在购物车中重新修改商品规格,可以直接点击商品详情的向下箭头
九)购物车能够添加的商品种类是有上限的,超过上限会有提示
10)结算的时候可以选择全选,选择底端的全选按钮
1)有一种特殊情况,如果全选之后发现购物车的商品太多,页面就会有相应的提示
2)取消全选
11)可以在购物车页面对宝贝的进行管理:
1)选择右上角,可以移入收藏夹或者删除或者分享,前提是选择对应的宝贝为前提
2)取消全选之后,也就是说没有选择任何宝贝,这个时候再去点击进行分享,移入收藏,系统就会提示您没有选择任何宝贝
性能测试:
1)打开购物车时间是否在已定的用户可以接受的时间范围之内
添加0个商品,添加1个商品,添加最大数量的商品
2)编辑购物车
删除,增加商品所需要的时间
3)在购物车页面选择需要购买的商品进行结算的时候,结算金额是否可以实时的显示,看看时间;
4)清空失效的商品所需要的时间
5)商品批量操作收藏文件夹
6)结算全部商品
7)淘宝在运行的时候的耗电量,占用的系统资源还有CPU的大小
弱网测试:三大运营商的网络环境都要进行测试,电信移动还有联通
1)3G 4G 5G和wifi网络环境下面的各个功能可以正常运行
2)网络异常的时候,数据交换失败是否会有提醒,是否会自动给出提示,请检查网络设置
3)从有网再到无网再到有网环境过程中,数据是否可以正常恢复,自动进行加载
异常测试:
1)横竖屏切换展示;
2)APP运行的时候网络中断;
3)反复操作某一个功能,一般是比较重要的功能不断进行回退和刷新,看看是否会出现闪退
因为在这个过程中不断进行回退和刷新,就是在向服务器发送HTTP请求,如果收到的HTTP数量过多而无法解决,那么就会出现闪退;
4)APP运行的时候不断接入电话,短信,微信或者其他消息;
为什么购物车的商品数量添加到一定程度就添加不了了?
1)和数据库相关;
2)如果一个用户添加的商品数量过多,那么每一次打开购物车页面对性能来说也是一种消耗