软件和测试的关系

软件和测试

1.软件的基本组成

软件:用于控制硬件工作的工具。

软件分为:应用软件系统软件

软件应用都是由三个主体构成

页面客户端->代码服务器->数据服务器->代码服务器->页面客户端

->:请求 ->:响应

软件产生的过程

需求方+产品经理->需求产生

产品经理->需求文档

UI设计师->设计效果图

研发人员->产品开发

测试人员->产品测试

最后由开发人员进行上线部署

2.软件测试的原理

软件测试就是使用技术手段验证软件是否满足使用需求

目的:为了保证软件质量,减少软件的缺陷。

2.1测试的分类

软件测试技能

1.功能测试:主要是为了验证软件功能是否满足需求。

2.自动化测试:使用工具或代码代替手工,来进行测试。

3.接口测试:使用工具或者代码对服务端提供的接口进行测试。

4.性能测试:使用工具或代码模拟吞吐率来查找服务器的缺陷。

软件测试阶段分类

1.单元测试:针对程序的源代码进行测试。

2.集成测试:又称为接口测试,针对模块与模块之间访问地址进行测试。

3.系统测试:对整个系统进行测试包括功能、兼容、文档等进行测试。

4.验收测试:主要分为内测、公测、用于不同的人群来发掘项目缺陷。

按代码可见度划分

1.黑盒测试:只针对软件的功能或者UI进行测试。

2.白盒测试:源代码透明,单元测试。

3.灰盒测试:看部分源代码,集成测试。

2.2质量模型

衡量一个优秀软件的维度。

  • 功能性
  • 性能
  • 兼容性
  • 易用性
  • 可靠性
  • 安全性
  • 可维护性
  • 可移植性

例:

1.开发一款游戏,要求有10个主功能

2.游戏支持网页端、App端

3.游戏上线后预计每日,20W用户在线。

使用8种分类来分析这个例子。

功能性:需求(10个功能,功能详情)、测试(功能数量10个、功能正确处理、错误处理情况)

性能:需求(20W用户在线)、测试(服务器每秒处理请求数、服务器配置是否满足)

兼容性:需求(支持网页端、App端)、测试(浏览器的兼容、操作系统、手机分辨率、品牌、系统、网络)

易用性:需求(用户体验感)、测试(简洁、友好、流畅、美观)

可靠性:需求(可响应、可使用,卡顿情况,死机)、测试(可响应、可使用,卡顿情况,死机)

安全性:需求(对隐私数据进行保密)、测试(网络传输保密、数据存储保密)

可移植性:需求(数据可迁移)、测试(网站数据迁移、软件数据迁移)

可维护性:需求(保证数据可维护)、测试(出现问题容易查找)

2.3测试流程

需求评审->计划编写->用例设计->用例执行->缺陷管理->测试报告

1.确保各部门对需求理解一致

2.测什么?怎么测?谁来测?

3.验证项目是否符合要求的操作文档

4.项目模块开发完毕开始执行设计好的测试用例

5.在测试过程中出现的缺陷进行管理追踪

6.测试过程中的结果记录文档

3.测试用例设计

1.等价类法

将测试数据中具有某种共同特征的数据集合,对这个集合进行划分。

2.边界值法

选取正好等于、刚好大于、刚好小于边界的值作为测试数据。

3.判定表法

是一种以表格形式表达多条件逻辑判断的工具。

4.场景法

也称为流程图法,是使用流程图描述用户的使用场景、然后通过覆盖流程路径来设计测试用例。

5.错误推断法

根据以往的测试经验推测系统可能出现的问题。

根据经验列举出可能出现问题的清单,根据清单推测问题,发现缺陷。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值