软件质量基础知识

一、目录

软件质量模型

测试技术类型

测试流程规范

研发质量规范

问题交流

二、软件质量模型

1、好的架构

2、充分了解了用户需求

3、尽量少的bug

4、性能好

软件质量模型

功能性
可靠性
可移植性
易用性
维护性
效率


测试技术类型

1、功能测试

单元测试

集成测试

系统测试

验收测试

测试计划

测试用例

测试执行

缺陷跟踪

修改建议

测试报告

2、性能测试

压力测试

负载测试

疲劳测试

POC测试

性能问题分析诊断

性能问题分析诊断

数据库优化、SQL优化

中间件优化、操作系统优化

3、安全测试

等级保护

物理安全

网络安全

主机安全

应用安全

数据安全

SQL注入

DOS攻击

XSS跨站脚本攻击

工具扫描

人工扫描

4、自动化测试

自动化设计

自动化脚本开发

中断处理

调度执行

结果分析

5、用户体验测试

易用性测试

可用性测试

全面CE

A/B测试

6、云测试

云服务测试

云平台测试

云安全测试

核心模块POC测试

7、移动互联网、手机API测试

App功能测试

APP性能测试

APP兼容性测试

APP安全测试

APP用户体验测试

APP自动化测试

8、API测试

API功能测试

API性能测试

9、兼容性测试

浏览器兼容性

操作系统兼容性

数据库兼容性

移动客户端兼容性

国产化兼容性测试

四、测试流程规范

1、研发测试流程:

2、研发任务单撰写要求:

任务名称

为该任务的名称,建议名称简洁,并能体现任务包解决的问题。(必填)

任务描述:对任务包解决问题或者功能的详细描述。

所属组件:为该任务所属组件。一个任务只能属于一个组件。(必填)

菜单路径:修改的问题涉及到的具体菜单,提供此信息可以方便测试人员测试。

需求/TD号:填写任务包修改的问题与TD或者已有的需求管理系统中得对应编号。

优先级:根据任务包的紧急程序分为高、中、低三级,根据实际情况填写。

部署说明:为该任务包生成后的构建包在运行环境中的部署方式说明。如果部署说明比较长,建议整理成文档添加在附件中。

有无sql任务包中有升级sql,则填写有,否则为无。该字段没有实际的意义,主要用来提醒测试人员和发布人员。

依赖的任务:该任务包依赖的其他任务包。如果该任务包依赖其他的任务包,在构建和测试时,会有提示必须先构建和测试依赖的任务包。

计划完成时间:该任务包的计划完成时间。目前这个时间不做预警。

测试结果:测试人员填写该任务包的测试结果。

实际完成时间:该任务包的实际完成时间。

3、缺陷管理-缺陷严重程度

致命关键:

造成系统崩溃或引起严重数据错误的问题、可能导致敏感数据泄露的安全问题

严重:

主要业务流程无法跑通或严重影响软件使用的问题,且无其它的替代方式

一般(平均):

不影响主要业务流程,但会影响软件使用的一般问题

较轻:

对软件使用影响较小,轻微的程序问题

建议:

针对非主要功能易用性或用户潜在需求提出建议性问题

4、缺陷原因分类


序号


一级分类


二级分类


1


程序技术


脚本错误


对象获取错误


逻辑判断


错误的方法


java异常


浏览器兼容性


字符集


2


SQL类


SQL语法错误


SQL兼容性


访问资源不存在


SQL性能


SQL注入


3


业务逻辑


需求未完全实现


需求实现错误


需求遗漏


流转环节有误


计算与精度


SQL设计错误


序号


一级分类


二级分类


4


部署问题


应用系统配置


环境遗留


源文件不正确


5


易用性


校验与提示


页面问题


用户体验


6


自测不足


直接拷贝


资源不存在


拼写错误


方法无实现


7


第三方软件


楼上平台


平台使用错误


第三方插件


8


其它


其它

5、缺陷生命周期


状态


具体含义


授予的角色


New


新的缺陷,并未得到确认。


测试人员


Open


缺陷经过确认,研发人员必须修改


项目经理


Fixed


缺陷经过修改


开发人员


Closed


缺陷关闭,跟踪结束


测试人员


Reopen


缺陷重新打开,该缺陷仍然存在


测试人员


Rejected


缺陷被拒绝修改


项目经理\开发人员


Delete


缺陷录入重复时选择此项,表明此缺陷已被录入


测试人员


Confirm


缺陷确认,测试人员对被拒绝的缺陷与项目经理及开发人员进行确认


测试人员


Delay


延迟修改


开发人员

6、缺陷管理流程

五、研发质量评价

1、统一的软件质量指标


指标类别


指标名称


计算公式


研发质量


缺陷检出率


=检出缺陷数/(检出缺陷数+反馈缺陷数)*100%


严重缺陷占比


=检出严重缺陷数/检出缺陷总数*100%


反馈缺陷密度


=客户反馈缺陷数/产品研发规模(人月)


缺陷密度


=检出缺陷数/产品研发规模(人天)

2、常用研发人员工作评价


序号


质量指标


指标公式


指标说明


为建立、改进质量指标拟采取的质量活动


1


一次通过率


一次测试就通过的被测包数/提交测试包数


评价研发人员开发质量

    1. 对日常变更包测试进行管理,统计一次测试就通过的变更包数和提交测试包数
    2. 对于通过率低的开发人员进行原因分析,是组织问题还是个人问题,并进行改进

2


平均每包缺陷数


测试发现缺陷数/已测包数


评价研发人员的开发质量

    1. 测试人员对变更包进行测试
    2. 统计每个研发人员被测试包检出缺陷数和已测试包数
    3. 可用于定义组织的基线和目标,对产品质量进行整体改进
    4. 对平均每包缺陷数高的人员进行原因分析和质量改进

3


平均每包研发时长


每个任务包在研发阶段的时间求平均


评价研发人员研发效率

    1. 使用工具跟踪每包研发时长
    2. 统计平均每包研发时长
    3. 对存在问题进行分析制定改进计划

序号


质量指标


指标公式


指标说明


为建立、改进质量指标拟采取的质量活动


4


缺陷修复率


经验证已正确修复的缺陷数/确认缺陷数


评价研发人员修复效率

    1. 对测试出的缺陷进行状态跟踪
    2. 统计已经正确修复的closed状态的缺陷数和已经研发经理确认的open的缺陷数
    3. 横向比较研发人员的缺陷修复效率
    4. 对修复较慢的人员进行督促改进

5


代码审查缺陷数


代码审查出问题数


评价研发人员静态代码质量

    1. 在研发过程中加入代码审查环节
    2. 统计研发人员代码审查出问题数
    3. 对常见代码问题进行原因分析
    4. 对常见代码问题及解决方式进行培训

3、常用测试人员工作评价指标


序号


质量指标


指标公式


指标说明


为建立、改进质量指标拟采取的质量活动


1


平均每天Bug数


测试出的有效bug数(个)/工作量(天)


评价测试质量和效率

    1. 对测试出的缺陷进行记录
    2. 统计测试工作量
    3. 月度指标排名
      1. 遗漏缺陷原因分析
      2. 增加功能测试用例

2


测试规范


每月抽查测试用例规范和BUG规范与部门标准比较


评价测试质量

    1. 测试执行之前撰写测试用例
    2. 发现缺陷,按规范录入
    3. 测试经理进行抽查
    4. 发现问题进行改进

3


缺陷根因分析


对关键、严重的问题进行代码级别的原因分析;与部门标准比较


评价测试质量

    1. 建立缺陷根因分析规范
    2. 抽查分析情况
    3. 发现问题进行改进

4


工作量饱和度


实际工作量(天)/正常工作量


评价测试工作饱和度

    1. 报工系统
    2. 月度统计揭示指标
    3. 作为组织绩效指标
时间: 2024-10-18 01:16:44

软件质量基础知识的相关文章

如何成为一名黑客(网络安全从业者)——计算机基础知识篇

大家好,我是Mr.Quark,大家可以叫我夸克,欢迎大家在微信公众号(Quark网络安全)上给我留言,如果有时间我一定会一一回复大家的.今天我将和大家一起学习"如何成为一名黑客"或者说"如何成为一名网络安全专家". 在进入正题之前,我们先来给黑客下一个定义,毕竟如果连黑客的含义都不了解,成为黑客更是无从谈起. "黑客"称呼的变迁 在很久很久以前(别问我有多久,不要在意这些细节),"黑客"指的是喜爱钻研技术.精通计算机技术的程序

考试备战系列--软考--02基础知识复习

这部分主要是计算机基础知识的概念介绍,相关系列文章如下所示. 考试备战系列--软考--01基础架构概念 考试备战系列--软考--02基础知识复习 考试备战系列--软考--03综合知识复习 考试备战系列--软考--04考题收集 考试备战系列--软考--05案例收集 考试备战系列--软考--06论文准备 操作系统时计算机系统的核心系统软件,其他软件均建立在其上,其分类包括:单用户操作系统和批处理操作系统.分时操作系统和实时操作系统.网络操作系统和分布式操作系统.嵌入式操作系统.其4大特征为并发性.共

测试基础知识(白盒测试,黑盒测试,测试用例,功能测试等等)

测试基础知识 找实习工作的过程中总结了下测试基础知识,编程能力重要,测试基础同样重要,希望对大家有帮助 软件测试方法:静态测试和动态测试                     白盒测试和黑盒测试                     传统测试与面向对象测试 软件测试过程:单元测试,集成测试,系统测试,验收测试 按测试类型:功能.性能.界面.易用性测试.兼容性测试.安全性测试.安装测试 (单元测试:在编码过程中,对每个小程序单元测试) (集成测试:将单元集成在一起后,可称为组件) 回归测试.冒

软件测试基础知识

软件测试基础知识 1.  软件质量与软件测试 软件测试:在规定条件下对程序进行操作,以发现错误,对软件质量进行评估,包括对软件形成过程的文档.数据以及程序进行测试 软件质量:软件特性的总和,软件满足规定或潜在用户需求的能力 2.  软件测试与质量保证 软件测试只是质量保证工作中的一个环节,软件质量保证与软件测试是软件质量工程的两个不同层面的工作: 质量保证:通过预防.检查与改进来保证软件质量,采用全面质量管理和过程改进的原理来开展质量保证工作,主要关注软件质量的检查与测试,主要着眼于软件开发活动

软件测试基础知识(摘)

一.软件测试基本概念 1.软件=程序+文档,软件测试=程序测试+测试文档. "软件"是指能够实现某种功能的指令集合,"文档"是指软件在开发.使用和维护过程中产生的图文集合. 2.软件分类 按功能分:系统软件.应用软件 按技术架构分:单机版软件.C/S结构软件.B/S结构软件(B指浏览器) 按使用的用户分:产品软件.项目软件 按规模分:小型.中型.大型 3.BUG的定义 软件的BUG指软件(包括程序和文档)中不符合客户需求的问题.常见三类BUG:完全没有实现的功能:基

MySQL数据库基础知识

day02 MySQL数据库基础知识 一.基础知识概述: 基础决定你这门课程的学习成败!只有学习好这些基础知识以后,你才能真正的运用自如.才能够对数据库有更深入的了解,道路才会越走越远. 二.基础知识: 1.数据库(database):数据库就好比是一个物理的文档柜,一个容器,把我们整理好的数据表等等归纳起来. 创建数据库命令:        create database 数据库名; 2.查看数据库         show databases; 3.打开指定的数据库         use 

linux入门基础知识及简单命令介绍

linux入门基础知识介绍 1.计算机硬件组成介绍 计算机主要由cpu(运算器.控制器),内存,I/O,外部存储等构成. cpu主要是用来对二进制数据进行运算操作,它从内存中取出数据,然后进行相应的运算操作.不能从硬盘中直接取数据. 内存从外部存储中取出数据供cpu运存.内存的最小单位是字节(byte) 备注:由于32的cpu逻辑寻址能力最大为32内存单元.因此32位cpu可以访问的最大内存空间为:4GB,算法如下: 2^32=2^10*2^10*2^10*2^2 =1024*1024*1024

BroadcastReceive基础知识总结

BroadcastReceive基础知识总结 1.BroadcastReceive简介 BroadcastReceive也就是"广播接收者"的意思,顾名思义,就是用来接收来自系统和应用中的广播 在Android系统中,广播体现在方方面面,例如当开机完成后系统会产生一条广播,接收到这条广播就能实现开机启动服务的功能,当网络状态改变时,系统会产生一条广播,接收到这条广播,就能及时的做出提示和保存数据等操作,当电池的电量改变的时候,系统会产生一条广播,接收到这条广播就能在电量低的时候告知用户

基础知识--:before伪元素和:after伪元素

http://book.51cto.com/art/201108/285688.htm 3.7  替换指定位置 大家都知道before和after是前.后的意思.但是奇怪的是,CSS中的:before伪元素和:after伪元素是为源文档中不存在的内容设置样式的. 没有内容怎么设置样式呢?别急!它们有一个content属性,一起使用就可以为某个选择器前.后的内容设置样式了. 下面就来了解一下:before伪元素和:after伪元素的用法. 视频教学:光盘/视频/3/3.7  替换指定位置.avi