HIT软件构造 软件测试 测试优先的编程
测试基本概念
测试等级
单元测试
集成测试
系统测试
验收测试
各部分测试内容见下图
Static vs. Dynamic testing
静态测试:用眼睛看,评审、走查、检查等
动态测试:使用测试用例集进行测试
测试套件
每个测试集的目标和说明
测试运行的配置说明
使用这些测试的前置条件
单元测试(unit test)
含义:针对软件的 最小单元模型开展测试,隔离各个模块,容易定位错误和调试
单元测试需要考虑的问题:模块接口、本地数据结构 、保证模块中的所有语句都被测试覆盖到、测试边界条件
junit使用
使用入门,点这里
覆盖度分析
含义
字面意思
测试内容
函数覆盖、语句覆盖、分支覆盖、条件覆盖、路径覆盖
测试效果和难度
测试效果:路径覆盖 > 分支覆盖 > 语句覆盖
测试难度:路径覆盖 > 分支覆盖 > 语句覆盖
代码覆盖度测试工具
EclEmma,点这里
黑盒测试 vs. 白盒测试
白盒测试
定义
对程序内部代码结构的测试
根据程序的执行路径进行设计测试
白盒测试一般比较早进行
构造测试用例的方法
确保模块中所有独立路径至少被执行过一次
关于结果进行逻辑判断
在大多数情况下,循环执行少数此就可以了
在边界条件下,一定要执行所有的循环
测试内部数据结构
黑盒测试
定义
对程序外部表现出来的行为的测试
测试目的
不正确的或者是遗失的功能
接口错误
数据结构或者是外部数据库访问的错误
行为或者性能错误
初始化或者终止错误
构造测试用例的标准
测试用例来自于外部的对软件的描述
佣金坑鞥少的测试用例,尽快运行,并尽可能大的发现程序的错误
构造测试用例的方法
- 等价类划分
将被测函数的输入域划分为等价类,从等价类中导出测试用例
针对每个输入数据需要满足的约束条件,划分等价类(自反、传递、对称) - 边界值分析
大量的错误发生在边界而不是中央
这是对等价划分方法的一个补充,将边界作为等价类之一进行考虑
通常边界值的左右也是需要进行考虑的 - 两种比较极端的情况
笛卡尔积,全覆盖策略:多个划分维度上的多个取值,要组合起来,每个组合要有一个测试用例(测试代价高)
Cover each part 策略:每个维度上的每个取值,只要被覆盖过一次即可(测试代价低)
集成测试(integration testing)
测试的内容是多个模块之间的协作和整个程序
回归测试(regression testing)
一旦程序被修改,重新执行之前的所有测试
一旦发现bug,立即编写一个可重现此bug的测试用例,并将其加入测试库
记录测试策略
在代码评审过程中,其让人可以理解你的测试,并评判你的测试是否充分
欢迎关注公众号BBIT
让我们共同学习共同进步!
HIT软件构造 软件测试 测试优先的编程相关推荐
- HIT 软件构造期末复习二 软件测试与测试优先的编程
文章目录 1.软件测试 2.测试用例 3.测试优先的编程 4. Unit Testing 单元测试 5. JUnit 自动测试单元 6.黑盒测试 6.1 等价类划分 6.2 边界分析 7.白盒测试 8 ...
- 6-5 软件测试与测试优先的编程
本节目标: 本节大纲: 1.软件测试 软件测试是提高软件质量的主要手段,能够确定软件是否达到可用级别,评估系统的某一侧面的质量特性. 测试的目标是证明软件存在错误,但再好的测试也无法证明系统不存在错误 ...
- HIT软件构造Lab1--过程分析
HIT 软件构造Lab1–过程分析 由于实验中要求代码必须是个人完成,所以这里仅提供方法和部分代码. 文章目录 HIT 软件构造Lab1--过程分析 1 实验目标概述 2 实验环境配置 3.1 Mag ...
- HIT 软件构造 Lab1
2022年春季学期 计算学部<软件构造>课程 Lab 1实验报告 姓名 艾浩林 学号 120L021917 班号 2003006 电子邮件 2017869860@qq.com 手机号码 1 ...
- HIT 软件构造 lab3实验报告
2020年春季学期 计算机学院<软件构造>课程 Lab 3实验报告 姓名 赵旭东 学号 1180300223 班号 1803002 电子邮件 1264887178@qq.com 手机号码 ...
- HIT软件构造lab1
目录 1 实验目标概述 1 2 实验环境配置 1 3 实验过程 1 3.1 Magic Squares 1 3.1.1 isLegalMagicSquare() 1 3.1.2 generateMag ...
- HIT 软件构造 lab2实验报告
2020年春季学期 计算机学院<软件构造>课程 Lab 2实验报告 学号 1180300223 班号 1803002 目录 1 实验目标概述 1 2 实验环境配置 1 3 实验过程 1 3 ...
- 哈尔滨工业大学hit软件构造实验lab1
文章目录 1 实验目标概述 2 实验环境配置 3 实验过程 3.1 Magic Squares 3.1.1 isLegalMagicSquare() 3.1.2 generateMagicSquare ...
- HIT 软件构造LAB2
2022年春季学期 计算学部<软件构造>课程 Lab 2实验报告 姓名 薄文 学号 120L020513 班号 2003004 电子邮件 604094538@qq.com 手机号码 181 ...
最新文章
- Android 抽屉效果的导航菜单实现
- 【计算几何】多边形点集排序
- ASP.NET Core中的OWASP Top 10 十大风险-SQL注入
- 【Linux】linux下查看目录所在分区
- 进程/线程间的同步方式
- java border边框_简单实用的css边框属性border
- Lucene实践之Query
- JAVA 实现《warcraft java版》游戏
- Java 拾遗补阙 ----- 继承私有属性
- 博主的EMNLP2021合作工作已公开:TransPrompt——基于Prompt和迁移学习的小样本文本分类,欢迎阅读与引用
- mysql统计出每个姓氏的人数_Python 之 MySql 每日一练 130——同名同性学生名单,并统计人数...
- 斐波那契数列类 python实现
- 【历史上的今天】2 月 15 日:Pascal 之父出生;YouTube 成立;Kotlin 语言问世
- 方正ES2007快速开发平台 Java版本
- 2020.10.23--AI--小熊制作、太极制作、微信图标制作
- json stm8s103 解析_基于STM8的ADC读取---STM8-第四章
- 一, Habse 概述,安装和快速上手
- 项目管理——如何做好跨部门沟通
- lodop页面直接打印 水印 分页 套打
- Ubuntu 磁盘扩容(有图、亲测)
热门文章
- java的renameTo函数的两个用法,这个看不懂算我输
- Nodepad++安装和使用教程【看码写码神器】
- 第七章 输入与输出 ——python导引编译之八
- Office2010安装流程
- Android距离感应器P-Sensor浅析
- 基于java8的捕鱼达人小游戏
- PAGER set to stdout_今早10点有好货,to*my原单男士两面穿棉衣,碧入优衣库原单格子衬衫,C*加厚大毛领毛呢大衣,L*E原单童装卫裤,三*原单马甲...
- 华为OD机试真题:欢乐的周末
- windows7系统下派克斯(PacketiX)产品使用教程
- 时针 分针 一天内重合问题