• 0
  • 0
分享
  • 4大类75项BUG场景大盘点!测试人必看!——软件测试圈
  • 橙子 2024-08-08 11:55:15 字数 4077 阅读 1517 收藏 0

  本文主要针对填写BUG时,bug分类共分为多少项,每一项内容都有哪些场景,并结合具体错误案例进行简单分析。

  一 UI表示层

  在软件测试和开发中,当提到“用户UI”类型的bug时,通常是指与用户界面(User Interface)相关的问题。用户界面是用户与软件交互的部分,它包括视觉元素、布局、导航以及用户可以与之交互的所有组件。

1-1.png

  以下是一些常见的用户UI类型的bug:

  1.布局问题:UI元素未正确对齐,或者在不同分辨率或屏幕尺寸下显示不正确。

  2.样式问题:颜色、字体大小或样式不符合设计规范,或者在不同的操作系统或浏览器上显示不一致。

  3.导航问题:用户无法通过预期的方式在应用的不同部分之间导航。

  4.响应性问题:用户的操作没有得到适当的反馈,或者响应时间超出了用户的预期。

  5.可访问性问题:UI元素对残障用户不友好,例如,颜色对比度不足,无法满足色盲用户的需要。

  6.功能错误:UI元素(如按钮、链接、输入框)不按预期工作。

  7.兼容性问题:在不同的浏览器、操作系统或设备上UI显示或行为不一致。

  8.本地化问题:在不同的语言或地区设置下,UI元素显示不正确,如文本截断、格式错误等。

  9.用户输入问题:UI未能正确处理用户输入,如无法接受特定格式的数据。

  10.图形和动画问题:图形渲染不正确,或者动画效果不符合设计要求。

  11.触摸屏或手势问题:在触摸屏设备上,UI元素对触摸或手势响应不正确。

  12.表单和数据验证问题:表单未能正确验证用户输入,或者在提交表单时出现错误。

  13.多任务和上下文切换问题:在多任务环境中,切换到其他应用再返回时UI状态不正确。

  14.安全性问题:UI可能暴露敏感信息,或者未能正确提示安全警告。

  15.性能问题:UI元素加载缓慢,或者在用户操作时出现卡顿。

  常见UI问题

1-2.png

  案例1

  【xxx模块】同比/环比页面,操作下移除字段旁多出...

1-3.png

  【分析】

  这个问题影响了用户的视觉体验,UI类型的bug通常涉及布局、显示或用户界面的其他视觉方面。如果字段旁边不应该出现 "..." 或其他元素,这可能表明布局算法或UI渲染存在问题。

  二 功能错误

  功能类型的bug通常指的是那些影响软件或应用程序预期功能的问题。这些问题通常与软件的业务逻辑、处理流程或特定功能实现有关。以下是一些常见的功能类型bug的示例:

  1.逻辑错误:软件的业务逻辑没有按预期执行,导致错误的结果或行为。

  2.数据验证失败:软件未能正确验证输入数据,允许非法或不完整的数据通过。

  3.处理异常不当:软件在遇到异常情况或错误输入时没有正确处理,导致崩溃或产生不正确的结果。

  4.功能缺失:软件缺少需求文档中指定的功能或特性。

  5.功能实现错误:软件实现了某个功能,但实现方式与需求不符。

  6.性能问题:软件的某个功能在特定条件下运行缓慢或无法在合理的时间内完成。

  7.资源管理不当:软件未能正确管理资源,如内存泄漏、未释放的数据库连接等。

  8.并发问题:在多线程或多用户环境中,软件未能正确处理并发访问,导致数据不一致或竞态条件。

  9.安全漏洞:软件未能正确实施安全措施,导致数据泄露或未授权访问。

  10.兼容性问题:软件在特定的操作系统、数据库或与其他应用程序集成时功能不正常。

  11.国际化和本地化问题:软件未能正确处理不同语言、日期格式、货币单位等国际化需求。

  12.持久化数据错误:软件在存储或检索持久化数据时出现错误,如数据库读写错误。

  13.用户权限问题:软件未能正确实施用户访问控制,导致权限问题。

  14.依赖服务问题:软件依赖的外部服务(如API、Web服务)未能正确交互。

  15.配置问题:软件配置错误,导致功能不正常。

  16.恢复和备份问题:软件未能正确处理数据恢复或备份,导致数据丢失。

  17.用户界面与功能不匹配:虽然用户界面上显示某个功能可用,但实际功能并未实现或存在问题。

  18.错误的结果展示:软件计算结果或展示信息错误,与预期不符。

  19.导航流程问题:在软件的导航流程中,存在无法到达的页面或状态,或者导航逻辑错误。

  20.测试数据问题:自动化测试中使用的数据未能正确模拟真实使用场景,导致功能测试不准确

  案例2

  【xxx模块】水设置日报警规则,规则触发后,报警记录下无记录。

1-4.png

  【分析】功能实现问题:bug描述中提到的“水设置日报警规则”表明存在一个预期的功能,即系统应该能够根据设定的规则进行报警。如果规则触发后没有产生报警记录,这表明报警功能没有按预期工作。

  三 设计缺陷

  设计缺陷类型的bug指的是在软件或系统的设计阶段就存在的问题,这些问题通常是由于设计考虑不周或遗漏导致的。设计缺陷可能会在软件的整个生命周期中产生广泛的影响,因为它们关系到软件的结构和组件如何协同工作。以下是一些常见的设计缺陷bug的类型:

  1.架构缺陷:软件架构未能满足系统的非功能性需求,如可扩展性、性能、安全性和可维护性。

  2.模块耦合:软件组件之间的耦合度过高,导致代码难以理解和维护。

  3.代码冗余:存在重复的代码段,这不仅增加了软件的大小,还可能导致维护问题。

  4.数据管理不当:数据模型设计不合理,导致数据不一致或存储效率低下。

  5.接口设计问题:API或系统接口设计不清晰或不充分,使得与其他系统的集成困难。

  6.错误处理不足:软件缺乏有效的错误处理机制,导致异常情况下的不明确行为。

  7.性能瓶颈:设计未能预见到性能要求,导致在高负载下系统响应缓慢。

  8.安全性漏洞:设计没有充分考虑安全威胁和风险,留下了安全漏洞。

  9.可扩展性差:系统设计不支持未来的扩展或升级。

  10.维护性问题:软件设计复杂,难以添加新功能或修复现有问题。

  11.用户界面设计缺陷:界面设计不符合用户习惯,导致用户体验差。

  12.依赖管理问题:对外部库或服务的依赖管理不当,导致软件难以维护或升级。

  13.资源使用不当:如内存泄漏、不充分的资源回收或不恰当的并发控制。

  14.测试覆盖不足:设计阶段未考虑足够的测试场景,导致测试无法覆盖所有功能点。

  15.配置管理缺陷:缺乏有效的配置管理策略,使得软件在不同环境下部署困难。

  16.国际化和本地化问题:设计未能考虑多语言和多地区的需求。

  17.恢复和备份机制缺失:系统设计中没有包含数据恢复和备份机制。

  18.不符合行业标准:设计不符合相关的行业标准或最佳实践。

  19.技术债务积累:为了快速发布而采取的短期解决方案,长期累积成为设计上的债务。

  20.可访问性问题:设计未能考虑到残障用户的需要。

  案例3

  【xxx模块】同一数据不同页面小数位数未统一。

1-5.png

  【分析】功能实现问题:在软件或系统的规划和设计阶段,没有充分考虑到数据展示的一致性。

  1. 缺乏统一的数据展示标准

  在设计阶段,没有制定或应用统一的数据展示标准,导致不同页面在呈现相同数据时采用了不同的小数位数。

  2. 跨组件/模块的通信不足

  在大型项目中,不同的组件或模块由不同的团队负责。如果缺乏有效的沟通和协调,可能会导致不同团队对同一数据的展示方式存在差异。

  四 数据缺陷

  数据缺陷类型的bug通常涉及软件中数据处理的不当或错误,这些问题可能源于数据存储、数据传输、数据验证、数据展示或数据逻辑等方面。以下是一些常见的数据缺陷bug的类型:

  1.数据丢失:在数据的存储、传输或处理过程中,数据意外丢失。

  2.数据不一致:系统中的数据在不同时间点或不同组件之间出现不一致。

  3.数据重复:由于数据处理逻辑错误,导致数据库中出现重复记录。

  4.数据泄露:敏感数据未经适当保护而被泄露,违反了隐私和安全规定。

  5.数据验证失败:软件未能正确验证输入数据的有效性,允许非法或不合规的数据被处理。

  6.数据类型错误:错误地处理了数据类型,如将字符串错误地解释为数字。

  7.数据溢出:数据超出了存储它的容器(如变量、数据库字段)的容量。

  8.数据精度缺失:数值计算或数据处理时丢失了重要的精度。

  9.数据格式错误:数据未按预期格式展示或处理,如日期、电话号码等。

  10.数据迁移问题:在数据迁移过程中出现数据丢失、转换错误或结构不匹配。

  11.数据索引问题:数据库索引设计不当,导致查询性能下降。

  12.数据备份问题:备份的数据不完整或无法恢复。

  13.数据加密问题:加密数据的处理不当,导致安全性降低。

  14.数据排序问题:数据展示时未能按照预期的顺序排列。

  15.数据搜索问题:搜索功能无法正确地检索或返回数据。

  16.数据权限问题:未能正确实施数据访问权限,导致未授权访问或数据隔离失败。

  17.数据同步问题:在分布式系统中,数据未能在各个节点间正确同步。

  18.数据更新问题:数据更新未能正确反映在系统中,或更新操作导致数据状态不一致。

  19.数据展示错误:数据在用户界面上的展示与实际值不符。

  20.数据导入/导出问题:导入或导出数据时出现格式错误、数据丢失或转换错误。

  案例4

  【xxxx】电tab 页面,尖峰电量数据显示错误。

1-6.png

  【分析】这个问题在于它涉及到数据的准确性和一致性问题。在数据的采集、处理、存储或展示环节中存在缺陷,导致用户界面上显示的电量数据与实际或预期值不符。解决这类错误需要检查数据流的每个步骤,从源头确保数据的准确性,并通过适当的错误处理和验证机制来维护数据的完整性。

  五 总结

  通过bug分类,可以确保不同类型的问题都得到适当的关注,为测试报告编写提供准确的数据来源,长期进行bug分类和分析可以揭示软件开发和测试过程中的模式和趋势,有助于持续改进开发流程和产品质量。


作者:M&T.    

来源:http://www.51testing.com/html/48/n-7801848.html

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   为什么是 Fiddler?  理由很简单:因为大多数测试同学都是用 Fiddler。虽然不同的抓包工具功能都大同小异,但就像开发者统一开发工具能够提高团队协作的效率一样,开发和测试之间统一工具也能提高大家的沟通效率。如果测试同学在使用 Fiddler 抓包时遇到了什么问题,比如说某个请求抓不到,你给的答复却是:我用 whistle/charles 没问题啊,这肯定会让测试同学抓狂。  前置准备  下载 Fiddler Everywhere  下载地址:https://www.telerik.com/download/fiddler-everywhere  使用这个版本的原因是作为...
            0 0 6775
            分享
          •  最常见的XSS检测代码:<script>alert(1)</script> // 调用JavaScript语句 <img src=x onerror=alert(1)> // src是错误的 就会调用error函数 <a href=javascript:alert(1)> // 点击a即可触发  实际应用中web程序往往会通过一些过滤规则来防止代有恶意代码的用户输入被显示。当上述代码被注入到输入框或者URL参数中时,可能会成功也可能会失败,如果失...
            0 0 879
            分享
          •   摘要:全链路生产压测,指的是模拟真实场景、使用多样化的流量请求进行全流程、全链路压力测试。传统的性能测试,测试环境资源数量、各链路硬件资源配置、配比与生产环境存在差异,且系统性能会受其他关联方的影响,单交易压测结果无法反映系统真实性能情况。而全链路生产压测可以找到系统的瓶颈点、发现系统潜在风险;有效评估系统的实际承载能力,指导调配服务资源、调整限流策略。  笔者结合自身参与的银行系统全链路生产压测实践经验,针对全链路生产压测的适用场景、风险及难点和解决方案进行了简述及分析,为全链路生产压测的解决方案提供参考。  1、全链路生产压测适用场景  全链路生产压测适用场景广泛,主要适用于以下四种场...
            15 15 2587
            分享
          • 为什么要进行自动化测试?开始正文前,我们必须先统一认知,充分认识到自动化测试的必要性,随着被测系统越来越大,逻辑越来越复杂,测试的工作量也会倍增,这必然会暴露出测试资源与测试生命周期的冲突,因此为了更快、有效、可靠的对被测系统进行测试,需要引入自动化测试。 加我VX:atstudy-js 回复“测试”,进入 自动化测试学习交流群,内含直播课+实战+面试资料~~而另一方面,当下测试开发岗位是目前软件测试的主趋势,也是升职加薪的必要手段,因此自动化测试必须要尽快实施。分层做自动化选择做自动化,首先要明确目标,自动化是分层的,目前主流认为,自动化测试主要分为UI、SERVICE、JUNIT 三层。所...
            1 1 1199
            分享
      • 51testing软件测试圈微信