软件测试 进阶

测试分类

在这里插入图片描述

按照测试对象划分

界面测试(UI测试)

直接和用户交互的,界面设计的好坏决定了用户使用软件的直观感受

  • 保证界面和UI设计稿内容显示的一致性,正确性、完整性、友好性。
  • 验证整个界面布局是否合理,不同板块字体的设计,图片展示是否符合需求。
  • 对界面不同控件的测试,比如,对话框,文本框,滚动条,按钮,checkbox等是否可以正常使用。
  • 有效和无效的状态是否设计合理。
  • 界面不同分辨率的测试。(同一个web页面在不同页面大小下的测试,页面从笑傲到达变化过程中衔接思华,可让用户接受,页面字体不模糊不消失,不重叠,页面图片不消失,排版布局合理,页面的功能可以正常使用。)
  • 页面的布局和色调是否符合当下时事的发展。

可靠性测试

可靠性=正常运行时间/(正常运行时间+非正常运行时间)
一般软件对可靠性要求99.99% ,而特殊软件,如军事系统,对可靠性要求很高。
非实时性的信息系统对一般网站要求都很低。
如何进行软件的可靠性测试:
软件本身,外界因素,(电,网络,硬件设备,软件系统)

容错性测试

因为系统或者外部一些异常情况使得系统发生异常,系统能够自我处理这种错误或者异常的能力,而不是直接暴露给用户。

  • **数据级别:**人民币0.09元、时间25时61分、日期 13月32日
  • **校验级别:**输入账号8~16位,大小写以及空格的校验
  • 界面级别:一些复杂的操作或者危险较高的操作,会给用户提示信息,危险的按钮,直接屏蔽禁用。
  • 环境级别:断电断网硬件设备出问题是否可以无缝切换到备用服务
  • 灾难恢复性测试 人为让系统发生故障,软件系统的环境恢复能力。系统恢复的时间,以及数据恢复。

文档测试

开发过程中产生的文档,需求文档,设计文档,功能文档,用户使用手册进行测试。
文档的正确性,以执行,专业术语,完整性。
文档和软件功能进行对比。

兼容性测试

平台的兼容性

  • web网页:各种浏览器,操作系统的兼容性;
  • APP:不同系统IOS/安卓,不同品牌,不同系统版本;
  • 软件本身的兼容性:软件本身功能前后的兼容性,新功能不能影响老功能,也不能影响后续功能的开发);
  • 软件对用户数据的兼容性:不能影响更新数据,数据库中增加字段不能影响用户之间的数据存储;
  • 软件对第三方软件的兼容性:不能影响其他软件使用;如果和第三方软件有交互,数据要有兼容性。

易用性测试

用户使用软件的体验,用户体验测试

  • 符合标准和规范 :严重错误 警告
  • 直观性:让用户直接按到自己期望的操作
  • 灵活性:用户可以根据自己的习惯选择适合自己的操作方式 键盘,九宫格、26键、手写、五笔等 灵活性=复杂性 两者找一个平衡点
  • 舒适性:让用户对自己操作有感知 不产生焦虑情绪
  • 实用性。

安装卸载测试

  • 软件可以正常安装卸载
  • 软件更新
  • 安装软件时断网,断电,死机情况下,软件的响应
  • 安装软件内存不足是否有提示
  • 卸载软件暂停,是否可以继续卸载
  • 下载过程中

安全性测试

安全指的是信息安全,之网络和信息保护用户的数据,隐私不被侵犯核泄漏输入域安全性,防止。
防病毒,防黑客攻击
xss注入,SQL注入,防爬虫

性能测试

资源泄露,资源瓶颈,响应慢,查询,加载信息速度慢,吞吐量,响应时间死锁,资源分配不均。系统受外界影响越来越大。

内存泄漏测试

系统分配了内存,没有回收,导致系统运行越来越慢,直到崩溃。

按照是否查看代码划分

黑盒测试

不关心软件内部代码实现,不关心代码的逻辑结构,相当于看不见代码部分,只关心输入输出是否符合预期
黑盒测试的好处:不用看代码(不懂代码也可以进行测试):
黑盒测试测试系统的功能:
站在用户角度去考虑使用功能,有利于培养用户思维
黑盒测试的测试用例是按照需求设计的,不容易遗漏需求
黑盒测试设计测试用例的方法有哪些:
边界值法,等价类,因果图,错误猜测法,场景法,正交法

白盒测试

白盒测试就是针对代码进行的测试,分析和测试代码的逻辑和结构,实现的功能,看是否符合用户的需求。
语句覆盖,路径覆盖,判定覆盖,条件覆盖,判定组合覆盖,条件组合覆盖,判定和条件组合覆盖。

灰盒测试

介于白盒测试和黑盒测试之间的测试方法

按照开发阶段划分

在这里插入图片描述

越往下测试效率越高,定位问题越容易
界面测试——集成测试——单元测试——系统测试——验收测试

单元测试

针对软件组成最小的单元模块进行测试
测试阶段:编码前,编码后
测试对象:组成软件的最小单元模块
测试方法:白盒测试
测试人员:白盒测试工程师,开发人员
测试依据:软件测试V模型
测试内容:模块接口,局部数据的测试,边界测试,异常测试,路径测试

集成测试

按照一定的策略吧单元模块组合起来形成一个大的功能模块进行的测试
测试阶段:单元测试后
测试对象:集成模块
测试方法:灰盒测试
测试依据:概要设计文档(v模型)
测试人员:黑盒测试工程师,开发人员
测试内容:整个模块功能的正确性,单元模块之间接口的正确性,全局数据结构测试,单个模块的缺陷对整个功能模块的影响。模块之间功能的冲突。

系统测试

当软件开发完成,系统的全面的对软件功能进行测试
测试阶段:系统集成之后
测试对象:整个系统
测试方法:黑盒测试
测试人员:黑盒测试工程师
测试依据;需求设计文档(v模型)
测试内容:系统的功能,兼容性,容错性,界面,可靠性,性能,可移植性,安全性等
回归测试: 当系统引入了新的代码的时候,看新的代码是否影响了旧的功能,进行回归测试
冒烟测试:正式测试之前,对软件的系统的基本流程和核心功能进行测试,如果测试通过,才同意正式测试

验收测试

软件上线前最后一道测试,由用户或者产品经理发起的
测试阶段:系统测试后
测试内容:同系统测试
测试方法:黑盒测试
测试依据:用户需求文档
测试人员:用户(产品方)
测试内容:同系统测试,包含文档,用户手册,功能设计文档

按照实施组织划分

α测试

指的是让用户或除了开发人员和测试人员以外的公司内部人员到开发现场去进行测试
测试环境:开发环境

β测试

实际使用的用户在实际使用环境下进行测试,不限时间,不限地点。
α测试和β测试的区别:测试环境不同,时间集中程度不一样,α测试先于β测试

第三方测试

第三方软件的测评机构对软件进行测试。依据业界的标准和规范进行测试。

按照是否运行代码划分

静态测试

不运行代码,通过分析代码风格,分析是否符合公司的规范,分析代码的结构,逻辑,算法,方法的实现是否满足用户的需求。
在这里插入图片描述

动态测试

运行代码,执行测试用例,进行代码测试

按照是否手工测试划分

手工测试

手工执行测试用例,查看测试结果
缺点:量大,容易出错,效率比较低
优点:不可替代的,无法被自动化替代,手工测试的过程是人为可控的,有利于做探索性测试

自动化测试

按照预先设定好的条件(自动化测试脚本)去执行测试,这些条件包括正常和异常的方面
UI自动化,接口自动化,性能自动化

按照地域划分

国际化测试

软件国际化:开发软件的时候使用了一种工程技术,使得软件适用于各种语言环境

本地化测试

为提升本地化版本质量,而对其而进行的测试就是本地化测试。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值