240328w5ST

第三章 软件测试基本方法

有敏捷开发就有敏捷测试。

基于直觉的测试

  • 把自己当成客户。
  • 错误猜测法。

基于输入域的方法

等价类划分

在这里插入图片描述
总共十个等价类

边界测试

在这里插入图片描述
我的答案:(不一定正确)
测试用例:
Username
1、jdksjf2_-
2、空
3、dsj1_- 8
4、8888
5、dkjK8
Password
1、空
2、7kfj7 五个字符
3、2eiw898 七个字符
4、2Eiw898

基于组合及其优化的方法

判定表方法

因为此方法测试用例比较多,一般不用人力去测。

因果图

一般也是有自动化测试工具,不要自己画,很容易错!

组合测试

Pairwise

基于逻辑覆盖的方法

语句覆盖比较浅

判定覆盖/分支覆盖

条件覆盖

分支覆盖和判定覆盖不一定同时满足。

判定-条件覆盖

基本路径覆盖

在这里插入图片描述
最后用8个左右的用例就可以满足所有覆盖。
1、A=-11,B=6 A=-(A+B)=5
2、A=,B=6 A=-(A+B)=12
1、A=-11,B=-1
2、A=-11,B=-1
1、A=-11,B=-1
2、A=-11,B=-1
1、A=-11,B=-1
2、A=-11,B=-1
1、A=-11,B=-1
2、A=-11,B=-1

基于模型的测试

MBT(基于模型的测试)

  • 有限状态机
  • 符号执行
  • 定理证明
  • 模型检验
  • 随机/半随机模型
  • 其他方法

模糊测试方法

  • American fuzzy lop方法
  • 变异测试(这是一个研究课题,是基于历史上容易犯错的地方,然后做微小改变),是用来测试测试用例的覆盖性的。

形式化方法(点到为止,现在很少有人做到)

基于数学的方法(数学表示、精确的数学语义)来描述目标软件系统属性的一种技术。

形式化的具体方法

Z语言、B语言(比较老了)
Hoare逻辑

形式化验证

形式化验证的具体方法

有限状态机或者扩展有限状态机

基于场景的测试方法

例如交通。

第四章 软件测试流程和规范

测试左移和测试右移

传统的软件测试过程

基于软件的生命周期,就是每一个过程找到缺陷。

敏捷测试过程

软件测试流派

  • 分析流派
  • 标准流派
  • 质量流派
  • 上下文驱动流派
  • 敏捷流派

软件测试改进

CTP

软件测试标准与规范(这一点很重要)

CQM是我国做测试比较认的。
推荐去看GBT 15532-2008 《计算机软件测试规范》

第五章 单元测试与集成测试

代码评审与分析

国内有个阿里java规范。
GitEE是很快的。github有时候访问比较慢。

代码静态分析工具

首推sonarlint,几乎支持所有流行的语言和IDE
FindBugs虽然官方不开发了,但是有其他人开发去研究。
SourceMonitor检测代码复杂度

单元测试

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值