2-软件测试与测试优先编程

软件构造课程笔记02 软件测试与测试优先编程

确保程序正确性/健壮性的最普遍的手段:测试
1设计测试用例

2用JUnit写测试程序

3自动化测试过程

1.软件测试 Software Testing

1.1什么是测试

测试是提高软件质量重要手段,是确定是否达到用户需求,且关注系统某一侧面质量特性

即使最好的测试也没法100%无误,但可以降低残留缺陷率

1.2测试的特点

测试的目标:破坏,证错

好的测试的标准:能发现错误、不溶于、“最佳特性”、介于简单与复杂之间

1.3测试层级(与软件编程顺序相对应)

在这里插入图片描述

单元测试:核实代码某个特定部分的功能,居于功能层面

集成测试:联合执行2个或更多的类,包,部分,子系统

系统测试:测试一个完整的集成系统,核实系统在它的最终布局中执行程序且满足了需求

1.4 其他测试
安装测试、兼容性测试、烟雾和健康测试、回归测试、验收测试、α测试/β测试、性能/负载/可扩展性、可用性测试、可访问性测试、安全测试

1.5静态测试,动态测试

静态测试:不需要执行,通过看代码。一次可以发现很多错误,发现错误立刻定位

动态测试:运行代码

1.6测试与debug
在这里插入图片描述

1.7白盒黑盒测试(必须两者皆执行)

白盒测试:针对内部代码结构测试

黑盒测试:针对程序外在表现行为测试

1.8软件测试难处

无法穷举,不能偶然测试,不能进行统计抽样测试

无统计分布规律,在离散输入空间差异巨大

2.测试用例 Test Case

测试用例=输入+执行条件+期望结果

3.测试优先的编程/测试驱动开发 Test-First Programming / Test-Driven Development (TDD)

=>分析需求,先写测试用例,再写代码

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值