如何保证黑盒测试的覆盖率(转)

简介: 1、  首先测试需求分析要全面 测试需求分析分两步:   1,测试需求的获取   需求的来源:   显式需求:     (1)原始需求说明书     (2)产品规格书     (3)软件需求文档     (4)有无继承性文档     (5)经验库     (6)通用的协议规范 ...

1、  首先测试需求分析要全面

测试需求分析分两步:

  1,测试需求的获取

  需求的来源:

  显式需求:

    (1)原始需求说明书

    (2)产品规格书

    (3)软件需求文档

    (4)有无继承性文档

    (5)经验库

    (6)通用的协议规范

  隐式需求:用户的主观感受,市场的主流观点,专业人士的评价分析


2,需求的分析 ,产生测试需求文档

将不同的需求来源划分成一个个需求点,针对每一点进行测试分析:

    (1)界定测试范围

    (2)利用各种测试设计的方法产生测试点

在测试方法方面,可做如下注意:

  其一,分析出口入口。从入口分析,将可能出现的环境,条件,操作等内容分类组合,然后根据各位测试达人的方法进行整合,逐一验证。从出口分析,将可能出现的结果进行统计,根据结果的不同追根溯源,再找到不同的操作以及条件等内容,统计成文档,逐一验证。

其二,多种测试手法的学习和使用。大家可能更多的关心测试方法,但是具体操作的手法也是需要注意的。毕竟测试方法比较容易找到,各位达人都很熟悉。如果将每个人不同的测试手法总结出来并在自己的测试实施中加以使用,可能会收到意想不到的成果。

  在测试流程方面,可作如下注意:

  其一,初期要做好需求分析。将需求逐渐细化到小功能点,针对每个功能点进行测试设计。对于完成的测试设计文档,经过项目相关人员的检查评审,做成所需要的初稿。

  其二,在测试过程中,根据需求变更和具体测试执行过程中遇到的问题完善测试设计文档。

  其三,测试执行结束后,对于出现的问题进行总结。其中包含自己本身发现的问题,也可能会有客户提出的问题。将总结出来的结果融合到测试设计当中去,进一步完善测试设计文档。

  对于一次测试,是不可能有覆盖度全面的测试的。需要多次去总结积累,才会使测试越来越全面。

  在测试流思维方面,可作如下注意:

  其一,测试全面不等于全面测试。不同阶段对于软件测试有不同的要求,比如在0.8版本以前,对于不重要的画面问题或是细小的功能问题就不需要关心。但是在验收阶段,这些内容可能更需要注意。

  其二,学无止境,只有不断的去学习不断的去思考,才能使自己测试的能力更强,测试对象的全面性也更完整。

 

2、  当测试需求分析完成,并且形成文档后,要进行测试需求评审,保证需求的准确性以及完整性。

 

3、  测试需求完成以后,可以根据测试需求设计测试用例。

要保证测试用例能够全面覆盖测试需求,要包含所有的情况。

测试用例设计上划分为单功能测试用例测试场景设计,单功能测试覆盖的需求中的功能点,测试场景覆盖需求中的业务逻辑。

在设计测试用例的时候,可以使用多种测试用例设计方法。

  l  首先进行等价类划分,包括输入条件和输出条件的等价类划分,合理设置有效等价类和无效等价类,这是减少工作量和提高测试效率最有效的方法。

  l  必须使用边界值分析,经验表明,这种方法设计出的用例能发现很多程序错误。

  l  可以使用错误推测法追加一些测试用例,这需要依靠您的智慧和经验。

  l  对照程序逻辑检查已设计出的测试用例的逻辑覆盖度,如果没有达到覆盖标准应当再补充足够的测试用例。

  l  如果程序的功能说明中含有输入条件的组合情况,一开始就可选因果图和判定表驱动法。

  l  对于参数配置类的软件,要用正交试验法选择较少的组合方式达到最佳效果。

  l  对于业务流清晰的系统,可以利用场景法贯穿整个测试方案过程,在案例中综合使用各种测试方法。

当测试用例设计完成后,要组织测试用例的评审,这样可以吸取别人的意见,减少遗漏,补全测试用例。

 

4、  测试用例编写完成后,就是测试执行,

  l  测试用例执行100%覆盖。

  l  在测试执行过程中,要继续对测试用例补充完善,确保提高测试覆盖率。

5、  在整个测试过程中,需求都是不可能不变的,所以要及时的更新测试需求、测试用例。

6、  要将测试需求、测试用例以及发现的bug关联起来,便于管理和跟踪,同时也便于查看覆盖率。

 

 

目录
相关文章
|
机器学习/深度学习 运维 算法
梯度&散度&旋度&峰度&偏度你分得清楚吗?驻点&鞍点你分得清楚吗?曲率&斜率你分得清楚吗?
本文介绍了四种常见的物理量:加速度,速度,位移和力学功。详细介绍了它们的定义、计算以及在物理学和工程学领域中的应用。此外,本文还介绍了四种与物理量相关的概念:向量、标量、质量和密度。 数学,物理,机器学习领域常见概念区分
2822 0
|
8月前
|
机器学习/深度学习 人工智能 运维
使用AI进行系统调优:给系统装上“智能大脑”
使用AI进行系统调优:给系统装上“智能大脑”
381 10
|
人工智能 Oracle 关系型数据库
全球CRM系统市场份额分析:领导者与挑战者
随着全球企业对CRM系统的依赖性增加,CRM市场正经历快速增长和激烈竞争。本文分析了全球CRM市场的份额,介绍了市场领导者如Salesforce、Oracle、SAP、纷享销客等,以及挑战者如HubSpot CRM、Zoho CRM等,并预测了未来市场趋势,包括云计算的普及、人工智能的融合和本土化需求的增加。
|
人工智能 自然语言处理 自动驾驶
阿里云入选Gartner® AI代码助手魔力象限挑战者象限
Gartner发布业界首个AI代码助手魔力象限,全球共12家企业入围,阿里云,成为唯一进入挑战者象限的中国科技公司。对阿里云而言,此次入选代表了其通义灵码在产品功能和市场应用等方面的优秀表现。
|
10月前
|
存储 缓存 Java
程序员必懂!上下文切换到底是怎么回事?
大家好,我是小米,一个喜欢分享技术的程序员。今天聊聊社招面试中的高频考点——上下文切换。它指CPU在多个任务间切换时保存和恢复状态的过程,常见于进程、线程切换及中断处理。上下文切换有CPU时间开销、缓存失效、内存开销等代价。优化方法包括减少线程数量、选择合适的并发模型、优化锁使用等。理解这些不仅能提升面试表现,还能写出更高效的代码。欢迎关注我的微信公众号“软件求生”,获取更多技术干货!
408 6
|
10月前
|
SQL 运维 关系型数据库
数据库自治服务DAS:云数据库高效运维的最佳拍档
数据库自治服务DAS是阿里云推出的高效运维解决方案,旨在简化复杂数据库管理。DAS基于机器学习和专家经验,提供自修复、自防护、自优化功能,涵盖多源数据库支持、丰富的应用场景及端到端运维能力。其企业版引入AI技术,实现智能诊断与优化,显著提升数据库稳定性、安全性和性能。通过自动化处理常见问题,如SQL优化、容量规划等,DAS大幅降低人工干预需求,缩短故障恢复时间,助力企业实现高效、智能化的数据库运维管理。
443 2
|
11月前
|
自然语言处理 搜索推荐
真•开放式游戏,谷歌造出首个无限人生模拟游戏Unbounded
Unbounded是一款由谷歌和北卡罗来纳大学教堂山分校合作开发的无限人生模拟游戏,利用生成模型突破传统游戏界限,提供个性化角色、动态世界生成、开放性互动和实时生成等特色,为玩家带来前所未有的游戏体验。
257 12
|
11月前
|
存储 人工智能 Serverless
方案测评 | 10分钟上手主动式智能导购AI助手构建
本文介绍了一种基于Multi-Agent架构的智能导购系统方案,利用百炼的Assistant API快速构建,旨在10分钟内完成搭建并实现精准的商品推荐。通过详细的操作指南,展示了从获取API Key、创建函数计算应用、部署示例网站、验证导购效果到集成商品检索应用等全过程,最后提出了关于文档完善、功能优化等方面的体验反馈。
|
11月前
|
SQL 存储 缓存
MySQL进阶突击系列(02)一条更新SQL执行过程 | 讲透undoLog、redoLog、binLog日志三宝
本文详细介绍了MySQL中update SQL执行过程涉及的undoLog、redoLog和binLog三种日志的作用及其工作原理,包括它们如何确保数据的一致性和完整性,以及在事务提交过程中各自的角色。同时,文章还探讨了这些日志在故障恢复中的重要性,强调了合理配置相关参数对于提高系统稳定性的必要性。
Cursor + qwen2.5-coder 32b 的配置方式
安装Cursor后,进入设置修改OpenAI基础URL为阿里云的DashScope接口,并添加Qwen2.5-Coder 32B模型。需先访问阿里云百灵控制台申请免费Key。配置完成后,即可使用该模型进行开发和测试。
8543 2