软件测试学习笔记01
一.测试主流技能
软件测试定义:使用技术手段验证软件是否满足需求
测试主流技能:1.功能测试
2.自动化测试
3.接口测试
4.性能测试
通常主流方向:1.功能测试+接口测试
2.自动化测试+接口测试
3.功能测试+性能测试
功能测试定义:是指对软件系统或应用程序进行测试,来验证其是否符合需求规格说明书中规定的功能要求。 例如用户界面,功能操作,数据输入和输出等。
自动化测试定义:是指使用自动化测试工具或脚本来执行测试任务的测试方法。通过自动化测试可以自动化执行重复性的测试任务。
接口测试定义:应用程序在是指测试系统或应用程序之间的接口是否能够按照设计要求进行交互。
性能测试定义:是旨在评估应用程序在不同负载条件下的性能,稳定性和可靠性的一种软件测试类型。
二,测试分类:
阶段划分:单元测试:用于测试软件中的最小独立功能代码段,称为单元。
优点:快速定位缺陷,提高测试执行效率。
集成测试:针对单元与单元之间的接口测试,又称接口测试、
系统测试: 在软件开发阶段的后期进行,用于 测试整个软件系统功能和性能
验收测试:软件开发的最后一个阶段,通常涉及到软件开发周期的各个方面
通常分为内测:公司内部人员使用,发觉缺陷并修复 公测:让用户帮忙测试
根据项目类型决定是否使用(可用,可不用)
代码可见度划分:黑盒测试:看不见源代码,主要对程序功能进行测试(阶段划分为系统测试)
灰盒测试:看见部分代码,主要对程序接口进行测试(阶段划分为集成测试)
白盒测试:看见全部代码,主要对程序源代码进行测试(阶段划分为单元测试)
即:系统测试和黑盒测试重点核心是功能测试
集成测试和灰盒测试又称接口测试
单元测试和白盒测试是对代码进行测试
自动化测试归属功能测试
性能测试,安全测试归属专项测试(用于测试软件系统中特定的功能,特性,场景或性能指标的一种软件测试方法)
三,模型
质量模型:测试时应考虑的方面
分为:功能性,兼容性,可靠性,可维护性,性能效率,易用性,信息安全,可移植性
重点:功能,性能,兼容,易用,安全
四,测试流程
需求分析——>计划编写——>用例设计——>用例执行——>缺陷管理——>测试报告
需求分析:时间:软件还未实现
目的:确保各部门需求理解一致
各角色对需求进行查漏补缺
了解软件有哪些功能
测试计划:内容:测什么(目标,范围),谁来测(人员进度及安排),怎么测(测试工具,测试策略)
用例设计:过程:分析需求,提取测试点,设计用例覆盖测试点
用例执行
缺陷管理:识别,记录,跟踪和解决软件中的bug
测试报告:内容:1.bug分析及统计
2.测试中遇到的问题
3.测试总结(本次测试中的优点和不足)
五,测试用例
概念:是描述了对软件系统的一个或多个方面进行测试的步骤和文档
作用:防止漏测,衡量软件是否通过的标准
八大要素编写规范:1.用例编号:项目_模块_编号
2.用例标题:预期结果(测试点)
3.模块/项目:所属项目或模块
4.前置条件:要执行此条用例,有哪些前置操作
5.优先级:表示用例的重要程度或者影响力(P0-P4)P0最大
6.测试步骤
7.测试数据
8.预期结果
六,用例设计方法
1.等价类划分法:将输入数据划分为若干等价类,从每个等价类选取一个典型值进行测试,已验证每个等价类的正确性
案例:用户名6-12位数字,密码8-16位
用户名可分:不足6,6-12,12以上
密码可分:不足8,8-16,16以上
2.边界值分析法:确定边界范围:分为上点(临界点),离点,内点 优化:开内闭外
案例:用户名6-10位自然数
上点6,10 离点:5,7,9,11 内点:8
优化:上点:6,10 离点:5,11 内点:8
强调:单个输入框,常用等价类+边界值
最常用的用例设计方法:等价类+边界值
3.判定表法:定义:是一种以表格形式表达多条件逻辑判断的工具
案例:
如果存在欠费或关机,就不能允许主被叫
条件 是否欠费 是 是 否 否
是否关机 是 否 是 否
操作 是否允许主被叫 否 否 否 是
使用场景:有多个输入条件,多个输出结果,输入条件之间有组合关系,输入条件和输出结果有制约关系
一般适用于条件组合数量较少的情况(4个以内)
4.流程图法:线上工具:processon
离线工具:visio
其他工具:excel
重点:先测试业务,在测试单功能,单模块,单页面
流程图:作用:梳理业务用例
引入:什么是冒烟测试?在软件进行较大的改动或更新后,对软件的基本功能进行简单、高层次的验证,
以确定软件是否可以进一步进行更详细的测试。测试人员通常会挑选软件的关键功能点、
业务流程和常见错误情况进行测试。冒烟测试通常会在系统测试、验收测试等阶段的前期
使用
5.错误推测法:根据对软件系统的了解和经验,推测可能出现的错误,并设计测试用例来验证这些错误是否存在。
场景:时间紧,任务大,找出易出错的模块重点测试
时间宽裕,列出问题较多的模块再次测试
6.随机测试法:使用随机生成的测试数据来测试系统,以探索可能存在的错误。
7.用户场景法: 根据用户实际使用系统的场景设计测试用例,以确保软件系统满足用户需求。
案例:
假设有一个在线商城系统,用户可以在系统中浏览商品、下订单、付款等。通过用户场景法,可以设计以下测试用例:
1.用户进入商城首页,浏览商品分类、商品推荐和活动信息。
2.用户选择一款商品,查看商品详情、评价和购买记录等信息。
3.用户将该商品添加到购物车中,并修改商品数量和选择优惠券。
4.用户进入结算页面,填写收货地址和支付方式,并提交订单。
5.用户完成支付后,在订单列表中查看该订单状态和发票信息。
6.用户在订单详情中查看商品信息、物流信息和售后服务等。
7.用户在商城系统中提交售后申请并查看售后进度。