测试基础-温故知新

软件测试基础笔记

测试对象

一款软件从无到有,需要不同的过程,不同的阶段都有对应的测试对象
1.需求分析阶段:需求说明书
2.软件架构设计:API接口文档
3.编码实现阶段:源代码(白盒测试、单元测试)
4.系统功能使用:软件功能主体

测试级别

软件开发都会依据相应的开发模型,则测试级别指的就是在这个模型中人为定义的测试步骤,常用的一种级别分类是:
1.单元测试(UT:unit test):在软件测试中单元是指组成软件最小的低层代码结构,一般就是类、函数、组件(当下的软件测试行业,不会要求测试人员对源代码进行测试,一般由开发自测)
2.集成测试(IT:Integration Test):将多个单元模块组合在一起,然后验证它们之间沟通的桥梁是否能正常工作(接口测试)
3.系统测试(ST:system test):当前行业做的最多的测试。由测试人员充当用户角色,对软件功能主体进行测试。
4.验收测试:让真实的用户、使用者为系统“买单”,此阶段实际上不想让用户发现bug

  • α测试:内测,内部测试
  • β测试:公测,让别人测试,鼓励别人提bug
  • UAT(user acceptance test)测试:由甲方派出对于业务精通的人进行功能测试

系统测试分类

1.功能测试:验证当前软件主体功能是否可用
2.兼容性测试:验证当前软件在不同环境下是否还可以使用
3.安全测试:验证软件是否只是对授权用户提供功能使用
4.性能测试:相对于软件消耗的资源,它的产出能力

常见的系统测试方法

一、按测试对象进行分类
1.白盒测试:测试主体是软件底层代码,不在意外在界面,只要底层代码功能实现,同时逻辑正确。
2.黑盒测试:测试主体是软件外在主体功能是否可用
3.灰盒测试:介于两者之间(1.保证功能可用 2.接口测试进行模块化测试)

二、按测试对象是否执行
1.静态测试:测试不执行,一般用于文档、UI设计稿测试
2.动态测试:将软件运行在真实的使用环境中

三、按测试手段分类
1.手工测试:由测试人员手工被测对象进行验证,优点是灵活改变测试操作及环境
2.自动化测试:分为两种,一种是自己写测试脚本,一种是通过第三方工具对被测对象进行测试,优点是高效率执行人工无法实现的操作,比如高并发、批量操作

软件质量

描述当前软件是否好用,在当前的软件行业里我们所采用的一套标准是机遇ISO组织制定的,软件质量的六大特性:
1.功能性:软件需要满足用户显式隐式的功能
2.易用性:软件易于学习和上手使用
3.可靠性:软件必须实现需求当中指明的具体功能
4.效率性:类似于软件的性能
5.可维护性:要求软件具有将某个功能修复后能继续使用的能力
6.可移植性:当前软件可以从一个平台移植到另一个平台上使用

软件测试流程

1.需求分析

  • 当前阶段核心目的是梳理清楚测试点
  • 需求的来源:需求规格说明书、API文档、竞品分析、个人经验

2.设计用例

  • 用例就是用户为了测试软件的某个功能而执行的操作过程

3.评审用例

  • 对用例进行添加或删除

4.配置环境

  • 环境:当前被测对象运行的环境,作为测试人员需要具备配环境的能力。(一般情况下都会使用一键安装的集成环境)
  • 环境分类:操作系统+服务器软件+数据库+软件底层代码的执行环境

5.执行用例

  • 用例执行之前我们会做一个冒烟测试。快速对当前软件的核心功能或主体进行验证,如果冒烟测试阶段有问题,则可以将此版本返回给开发。
  • 如果冒烟测试通过,那么才会开展全面的测试

6.回归测试及缺陷跟踪

  • 将bug提给开发,开发修复后,需要再次对齐测试---回归测试
  • 缺陷跟踪,从测试人员发现缺陷到缺陷被关闭,需要一直对其状态进行跟踪。

7.输出测试报告

  • 将当前测试过程产生的数据进行可视化输出,方便其他人去查看

8.测试结束

  • 整个测试过程中产生的文档、测试数据进行整理、归档,方便后续使用。

常用软件架构

用来指导我们软件开发的一种思想。目前最常见的两种架构模式就是B/S、C/S。
B-brower 浏览器
C-client 客户端
S-server 服务端

两种架构的比较

1.标准:相对于C/S架构来说,B/S架构的两端都在使用现成的成熟产品,所以BS会显示得标准一些。
2.效率:相对于BS架构来说CS中的客户端可以分担一些数据的处理,因此执行效率会高一些
3.安全:BS架构当中的数据传输都是以HTTP协议进行传输的,而HTTP协议又是明文传输,相对于CS架构显得不安全。
4.升级:BS架构只需要在服务器端将数据进行更新,前端只需要刷新就完成升级。而CS架构必须要两端都进行更新。
5.开发成本:BS的浏览器和服务器不需要自己开发。CS的客户端需要自己开发,成本较高些。

浏览器

本质是一款软件,安装在操作系统上,给用户提供浏览网页的服务。目前人为的将所有的浏览器总结出所谓的五大厂商,对于浏览器来说,最核心的技术就是内核。

五大浏览器生产厂商
1.IE(微软) ---trident
2.Chrome(谷歌)---blink
3.Firefox(火狐)---gecko
4.Opera(欧朋)---webkit
5.Safiri(苹果)---presto 现在已经放弃自己的产品,完全向Chrome

常见的图片类型

1.jpg /jpeg :可以高度保留图片色彩信息的格式
2.png : 可以实现透明背景
3.gif :图片所占体积小
4.psd:分层图片

你可能感兴趣的:(测试基础-温故知新)