测试基本概念
常用术语
* 测试用例(test case) :为特定目的而设计的一组执行条件、测试输入和预期输出。
* 黑盒测试: 对功能
* 白盒测试: 对代码运行逻辑
* 回归测试:运行曾经测试通过的用例,来判断是否仍然生效
* 冒烟测试:基本功能
测试不仅仅找错误,还要对应产品功能需求是否满足
* 测试拓扑:描述各种设备用传输介质互连的物理布局。
* DUT: device under test,测试样机,测试对象
* testbed:执行特定测试项的物理实体,是所需要的设备电脑工具软件等集合而成的平台
* CMP:对比 样机
* SUT:system under test,也就是测试的系统条件(网卡,操作系统的等等)
* BVT: build verification test,基本测试验证
bug类型
* 实现遗漏
* 实现错误
* 需求遗漏
尽可能让区域1234扩大
测试流程
早期,测试与调试混为一谈,debug
对测试生命周期的描述:
对于我们系统测试工程师来说,我们主要专注于集成测试、系统测试、验收测试这几个部分的内容。
单元测试一般是研发的工程师在进行代码编写的时候同步进行。
我们主要对应的是黑盒测试,需要对产品的相关知识进行了解,这对我们的全面知识有了一定的要求,会不会也存在难以在技术上有所深入的挖掘;
着力于构建测试思维?建立测试体系?
在白盒测试中应该能够对应在理论上知晓我们进行测试的用例的规模数量,进一步我们可以计算得到测试的一个覆盖度,通过将已测试的用例除以我们整个的用例数量,我们可以得到 **覆盖度** 这么一个概念。
公司测试
* 测试环境的构建可以通过我们公司的多个实验室来实现
* 有对应的专业软件和专业设备:测试射频参数的IQView、NI、WCTS,模拟无线客户端行为的VeriWave,模拟流量的TestCenter,模拟上层应用的Avalanche。
* 测试用例管理:testlink系统
* 自动化测试:根据用例撰写脚本,我司有Pysat框架等
* Bug管理:bugzilla系统
* 测试流程管理:TM系统
测试覆盖
测试覆盖可以这么理解,选择执行的测试点/测试点的总数。
如何通过以更小比例的测试点来满足我们对产品功能的测试。
概述
* 测试功能模型的分析
* 测试条件的分析
* 逻辑测试用例
* 物理测试用例
等价类覆盖
对输入条件进行分类,满足一定区间范围的为一类,不同类进行测试
* 有效等价类:输入合理,有意义
* 无效等价类:不合理或者无意义
边界类覆盖
测试工作的经验,在边界值容易发生系统行为的改变
所以对于边界值,我们可以选正好等于,刚刚大于,或者刚刚小于的值作为测试数据。
判定点覆盖
条件判断组合 and or 等