A级:
白盒测试和黑盒测试:(给出一个场景,判断应该使用哪种测试方法,如何去写)
黑盒测试:把测试对象看做一个黑盒子,完全基于输入和输出来判断测试对象的正确性
优点 :
1) 比较简单,不需要了解程序的内部的代码及实现
2) 与软件的内部实现无关
3) 从用户的角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题
4) 基于软件开发文档,所以也能知道软件实现了文档中的哪些功能
5) 在做软件自动化测试时较为方便
缺点:不可能覆盖所有的代码
常见方法:
1)等价类划分
2)边界值分析
3)决策表
4)状态转换
白盒测试:把测试对象看做透明的,按照测试对象内部的程序结构来设计测试用例进行测试工作
优点:帮助软件测试人员增大代码的覆盖率
缺点:
不可能覆盖所有的代码
测试基于代码,只能测试开发人员做的对不对,而不能知道设计是否正确,可能会漏掉一些功能需求
系统庞大时,测试开销会非常大
(能解释并区别白盒测试三种不同的方法)
常见方法:
1)语句覆盖:保证每一行代码都至少执行一次。
2)分支覆盖:保证每个判断结果都至少满足一次。
3)路径覆盖:保证每条独立的执行路径都至少执行一次。
测试层次:
按测试对象:
单元测试:对程序单元进行正确性检验的测试工作。一个单元就是类的一个方法
集成测试(组装测试):对程序模块一次性或采用增量方式组装起来,对系统的接口进行正确性检验的测试工作
系统测试:
更关注不符合需求的缺陷和需求自身的内在缺陷
系统测试关注整个系统的行为
可分为:
功能测试
非功能测试
验收测试
安装测试
按测试目标:
功能测试:被测试软件的行为是否遵从软件需求规格的说明
α测试和β测试:在软件发布前,让小规模、有代表性的潜在客户试用。开发机构中进行(α),或用户处进行(β)
易用性测试:评价终端用户使用学习软件的难易程度、软件功能支持用户任务的有效程度,从用户的错误中恢复的能力
恢复测试:软件在“灾难”后的重启动能力
压力测试:以设计的最大负载运行软件,并超过最大负载运行软件,验证软件的负载能力
回归测试:变更系统后进行,重新执行已经测试过的系统用例子集,确保变更没有造成未预期的副作用
性能测试:针对性能需求进行验证
配置测试:分析软件在规格说明下的不同配置的行为
可靠性测试:验证和评价系统可靠性的测试
安全测试:验证系统内的安全保护机制不受非法入侵的能力
验收测试:按照客户的需求检查系统
安装测试:在目标环境中通过安装来验证软件
**软件测试的目的:
验证:是否正确地使用技术建立系统,如“编程错误”,“设计思路错误”,“文档书写错误”
确认:是否建立了正确的系统。如“文档是否反映需求”
验证与确认的手段:静态分析与动态测试(软件测试)
B级:
软件测试的目标:
①展示软件满足了需求:有效性测试
②找出缺陷与不足:缺陷测试
C级:
缺陷测试没有发现缺陷或数量远远少于历史数据:可能是测试活动不及格
缺陷测试发现缺陷或数量远远多于历史数据:可能是测试活动表现了较高的水平
缺陷:不正确的地方,如计算时可能除0
错误:执行了不正确的地方产生的不稳定状态,如执行除0
失败:错误产生的软件功能失效
测试的目标:发现尽可能多的错误
随机测试:瞎JB测试
测试活动:
测试计划
测试设计
测试执行
测试评价
来源:CSDN
作者:什么你竟然不会敲代码
链接:https://blog.csdn.net/m0_37302219/article/details/104363015