一、按照测试目标分类
1. 界面测试
界面测试(简称UI测试),指按照界面的需求(⼀般是UI设计稿)和界面的设计规则,对我们软件界面所展示的全部内容进行测试和检查,⼀般包括如下内容:
• 验证界面内容显示的完整性,⼀致性,准确性,友好性。比如界面内容对屏幕大小的自适应,换行,内容是否全部清晰展示;
• 验证整个界面布局和排版是否合理,不同板块字体的设计,图片的展示是否符合需求;
• 对界面不同控件的测试,比如,对话框,文本框,滚动条,选项按钮等是否可以正常使用;
• 无效的状态是否设计合理;
• 界面的布局和色调符合当下时事的发展。
2. 功能测试
功能测试就是对产品的各功能进行验证,根据功能测试用例,逐项测试,检查产品是否达到用户要求的功能。
设计功能测试用例,参考产品规格说明书进行用例的编写,具体的测试用例需要使用黑盒设计测试用例的方法,如等价类、边界值、判定表法、正交法、场景法、错误猜测法等。
3. 性能测试
我们在使⽤软件的时候有时会碰到软件⽹⻚打开时越来越慢,查询数据时很⻓时间才显⽰列表,软件运⾏越来越慢等问题,这些问题都是系统的性能问题引起的
要进⾏软件产品的性能问题,要对产品的性能需求进⾏分析,然后基于系统的性能需求和系统架构,完成性能测试的设计和执⾏,最后要进⾏持续的性能调优。
4. 可靠性测试
可靠性(Availability)即可用性,是指系统正常运行的能力或者程度,⼀般用正常向用户提供软件服务的时间占总时间的百分比表示。
可靠性 = 正常运行时间 /(正常运行时间 + 非正常运行时间)*100%
5. 安全性测试
• 输入域,如输⼊恶性或者带有病毒的脚本或⻓字符串;
• 代码中的安全性问题,如SQL/XML注入
• 不安全的数据存储或者传递
• 数据文件,邮件文件,系统配置文件等里面有危害系统的信息或者数据;
• 有问题的访问控制,权限分配等
• 假冒ID:身份欺骗
• 篡改,对数据的恶意修改,破坏数据的完整性
安全性测试的⽅法有代码评审,渗透测试,安全运维等,常⽤的静态安全测试⼯具有,Coverity,IBM Appscan Source,HPFortify,常用的动态安全测试有OWASP的ZAP,HP WebInspect等。其中静态安全测试是常用的安全性测试的方法。
6. 易用性测试
1 标准性和规范性
2 直观性
3 灵活性
4 舒适性
二、按照执行方式分类
1. 静态测试
所谓静态测试(static testing)就是不实际运⾏被测软件,⽽只是静态地检查程序代码、界⾯或⽂档中可能存在的错误的过程。
不以测试数据的执⾏⽽是对测试对象的分析过程,仅通过分析或检查源程序的设计、内部结构、逻
辑、代码⻛格和规格等来检查程序的正确性。
常⻅的静态测试⽅式有代码⾛查,代码扫描⼯具等
2. 动态测试
动态测试(dynamic testing),指的是实际运⾏被测程序,输⼊相应的测试数据,检查实际输出结果和预期结果是否相符的过程,所以判断⼀个测试属于动态测试还是静态的,唯⼀的标准就是看是否运行程序。大多数软件测试工作都属于动态测试。
三、按照测试方法
1 白盒测试
白盒测试⼜称为结构测试或逻辑测试,它⼀般⽤来分析程序的内部结构,针对程序的逻辑结构来设计测试⽤例进⾏测试。






2 黑盒测试
⿊盒测试就是在完全不考虑程序逻辑和内部结构的情况下,检查系统功能是否按照需求规格说明书的规定正常使⽤、是否能适当的接收输⼊数据⽽输出正确的结果,满⾜规范需求。
所以,⿊盒测试⼜称之为数据驱动测试,只注重软件的功能
优点
不需要了解程序内部的代码以及实现,不关注软件内部的实现。
从用户角度出发设计测试⽤例,很容易的知道⽤⼾会⽤到哪些功能,会遇到哪些问题,锻炼测试⼈员的产品思维测试⽤例是基于软件需求开发⽂档,不容易遗漏软件需求⽂档中需要测试的功能。
缺点是不可能覆盖所有代码。
⿊盒测试⽤到的测试⽅法有,等价类,边界值,因果图,场景法,错误猜测法等
3 灰盒测试
灰盒测试,是介于⽩盒测试与⿊盒测试之间的⼀种测试,灰盒测试多⽤于集成测试阶段,不仅关注输出、输⼊的正确性,同时也关注程序内部的情况。
但是,灰盒测试没有⽩盒测试详细和完整,⿊盒测试是覆盖产品范围最⼴的测试,因此灰盒测试基本是不能够替代⿊盒测试,否则需要很⼤的代价,设计⾮常多的⽤例
常见面试题:你知道的测试方法有哪些?哪种用的比较多?
常⻅的测试⽅法有⿊盒测试,⽩盒测试和灰盒测试。开发⼈员主要⽤⽩盒测试和灰盒测试,测试⼈员主要⽤⽩盒测试和⿊盒测试。对于测试⼈员来说,相较于⽩盒测试,⿊盒测试⽤的更多⼀些
四、按照测试阶段分类
1 单元测试
到底怎么才算“最⼩单元”呢,最⼩单元实际是认为定义的,⼀个⽅法,⼀个类都可以理解为“最⼩
单元”。
• 测试阶段:编码后或者编码前(TDD)
• 测试对象:最⼩模块
• 测试⼈员:⽩盒测试⼯程师或开发⼯程师
• 测试依据:代码和注释+详细设计⽂档
• 测试⽅法:⽩盒测试
• 测试内容:模块接⼝测试、局部数据结构测试、路径测试、错误处理测试、边界测试
2 集成测试
3 系统测试
3.1 冒烟测试
3.2 回归测试
4 验收测试
五、按照是否手工测试
1 ⼿⼯测试(Manual testing)
2 ⾃动化测试(Automation Testing)
3 ⾃动化测试和⼿⼯测试优缺点
六、按照实施组织划分
1 α测试(Alpha Testing)
2 β测试(Beta Testing)
3 第三方测试
七、按照测试地域划分
1 国际化测试
2 本地测试

被折叠的 条评论
为什么被折叠?



