51Testing软件测试论坛
标题:
测试概论
[打印本页]
作者:
chenguanzheng
时间:
2019-11-28 20:00
标题:
测试概论
1、软件生命周期各个阶段及其工作内容。
计划阶段
需求分析
系统设计
编码
测试
运行和维护
2、常见软件生命周期模型
瀑布模型、迭代模型、增量模型、原模型、螺旋模型
瀑布模型:一次性把所有活动都计划好,依次按照需求分析、系统设计、开发、测试、运行维护的阶段进行,当上一个阶段完成后,才可以进行下一个阶段。
优点:
分工明确
每步都有产出物
项目把控能力强
软件质量高
前期可以发现缺陷
缺点:
若项目复杂,对人员要求较高
阶段分明,信息不能同步
人员投入过于集中,造成闲置
迭代模型:前期实现系统的核心功能、一次按照需求分析、系统设计、开发、测试各个阶段进行,每完成一个周期都得到一个可以交付的原型,然后不断迭代,在原型基础上添加新的功能。
优点:前期投入少、快速响应
缺点:对项目需求清晰度要求较高
增量模型:基本过程和迭代模型一致,不同的是,在需求分析阶段,将需求按照模块划分,以模块递增的方式逐步完善。
优点:前期投入少、快速响应
缺点:要非常熟悉各个模块之间的联系,避免后续增量不兼容
螺旋模型:结合了原型模型、瀑布模型、迭代模型,增加了风险评估,以风险驱动的方式完善。
优点:设计灵活、每个阶段都有用户参加,确保最终实现不偏离用户的真正需求。
缺点:对风险评估经验要求高,只适合规模大、风险高的项目
---------------------------------------------------------------------------------------------------
软件测试定义:使用人工手段、或自动手段、运行某个系统,目的在于发现系统在性能、功能、安全等方面的缺陷,预测系统的能力和局限,为决策提供信息。
软件测试人员工作内容:在需求分析阶段参与需求评审,设计阶段给出建议、开发阶段协助开发人员调试接口、测试执行阶段:搭建测试环境、按计划和方案执行测试、做好缺陷回归和管理、测试报告;运行维护阶段做好回归测试。
测试的基本原则:测试可以证明存在缺陷,但是不能证明不存在缺陷;穷尽的测试是不可能的,资源有限,应该按优先级划分,优先测试核心功能模块。测试应该今早介入,在需求分析阶段就介入,可以节省时间成本。
缺陷的群集效应,大部分的缺陷会集中在小部分模块中。杀虫剂悖论,测试用例执行多次以后,就很难发现新的缺陷,需要不断更新维护测试用例。测试活动依赖于测试环境。不存在缺陷的谬论
---------------------------------------------------------------------------------------------------
软件测试的分类:按系统透明度划分为黑盒测试、灰盒测试、白盒测试
黑盒测试:不考虑系统内部代码结构,只考虑外部表现是否满足需求规格说明书。常见功能、性能、兼容性测试都是黑盒测试
白盒测试:在代码级别上进行测试,单元测试
灰盒测试:介于黑盒和白盒之间,多在集成测试这个阶段,不仅关注输入输出的正确,同时也关注代码内部逻辑结构。
按是否运行划分为静态测试和动态测试。
静态测试:不运行程序
动态测试:运行程序
按工作阶段进行划分:单元测试、集成测试、系统测试、验收测试
单元测试:测试函数,参考详细设计说明书(LLD),检测与LLD的符合度,考察逻辑覆盖率,以白盒测试为主。
集成测试:将测试好的单元集成进行接口测试,参考概要设计说明书(HLD),检测与HLD的符合度,考察接口覆盖率,以灰盒测试为主。
系统测试:将组装好的软件系统结合硬件进行完整的测试,参考需求规格说明书(SRS),检测与SRS的符合度,考察需求覆盖率。以黑盒测试为主
验收测试:用户参与验收,查看和用户原始需求的符合度
冒烟测试:测试软件系统的核心业务
回归测试:修复缺陷后进行验证,分为全面回归测试和问题回归测试。全面测试将所有功能用例全部执行一遍,问题回归测试执行出现问题的测试用例。
ALPHA测试:内侧,模拟用户实际操作环境进行测试。
BETA测试:公测,在真实的用户环境进行测试。
缺陷分类:
遗漏:需求规格说明书里的需求没有实现
错误:实现的功能与需求不一致
额外的实现:实现了需求规格说明书以外的需求
作者:
chenjianlin
时间:
2019-11-29 00:04
不错挺用心的
作者:
chenguanzheng
时间:
2019-11-29 13:51
chenjianlin 发表于 2019-11-29 00:04
不错挺用心的
心中有热爱,眼中有光芒,谢谢你!
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2