面试问题,如何保证你的测试用例能够覆盖完全!?

回答·22
最热
最新
  • 这个问题其实考察的是测试者的思路,至于能否覆盖全这个要看测试者的经验沉淀以及具体是什么领域的业务 如果拿到一个比较大的功能需求,我会按照以下顺序去写测试用例以及执行 1、功能的连通性,即冒烟测试,正常的流程是否走的通 2、页面元素的检验,即检查页面字段内容、格式、边界值、数据类型、特殊字符、样式、布局等等跟业务没关系的检查,适用所有系统 3、接口测试,通过工具传参看接口能否正常响应,包括输入一些异常的数据,看接口是否有校验 4、业务逻辑检查,这个需要充分解读需求文档上的每一句话,逻辑判断控制,以及有耦合关系的模块,前置、后置等相关联的业务模块是否都正常,而不只是检查当前的功能模块没问题就可以了 5、数据库表检查,即前台提交的表单是否在对应的每一个表字段都正确的写入。例如前台支付成功以后,数据库可能会更新很多张表,商品表、订单表、统计表、日志表等等,不是支付成功就表示这个功能就没问题了 6、异常类测试,例如系统在弱网或者断网情况下页面是都有提示或者相关的判断,或者是一些交易类的功能可能会回调超时,超时代码是否有重发机制等等,具体要看你测的是什么领域的业务,都有一些特殊的场景或者异常操作,往往这些就是测试的盲点 7、兼容性测试,即你的系统或者是 App 等是否能在不同的浏览器、系统版本、手机、pad 等各种终端都能够正常运行,一般关注主流的即可 8、性能测试,本次功能根据实际用户体量是否有并发的场景,或者有批量上传、下载、大量查询等,这些都有可能引起 Cpu、内存、I/O、带宽、数据库等性能问题,这个是需要提前预判的,因为一般出了性能问题都是大问题,如果用户体量很小,可以暂时忽略 8、安全测试,一般是用专业的工具对系统进行扫描,检查系统权限、网络、端口、敏感字、加密信息、配置管理等是否有安全隐患 9、易用性测试,即开发的产品是否通俗易懂,容易操作,如果你的产品学习成本很高,业务逻辑很复杂,一个大学本科生看了半天都不会用,搞不明白,那么没人用的产品就是最大的 bug 10、回归测试,以上测试都完成之后,bug 修复完,需要对系统进行一个全量的测试,至少相关的功能点都要去执行一下。 以上就是写测试用例或者是界定测试范围的的思路,基本适用于更多场景。当然这样也不能保证 100%覆盖,这能说,做到以上几点,基本覆盖的差不多了,如果还有 bug 就是你认知以外的东西,你都想不到那当然会遗漏了。
  • 没办法保证。 对一个陌生的系统,需要有需求文档,概要设计,详细设计,界面设计,接口文档等一系列文档,才能充分了解系统,进而设计测试案例。大多数情况下,这些文档都不全。 即使文档齐全,还需要对项目所在的行业有所了解,知道业务规则,业务流程,有些会写在技术文档里,相当一部分不会,只能通过学习、培训或熟悉,慢慢了解 还有客户的特殊要求,这个没法预测 再之后,需求会变更,界面会改版,项目本身就处于变化之中 结论,测试案例只能不断维护,尽可能的扩大覆盖率,不可能保证覆盖完全
  • 首先,在项目开始前,我们会先熟悉需求,画好流程图,保证整个流程都覆盖全面,小组之间每个人都要根据各自的流程图,各个功能点有哪些限制条件,来讲解一下自己对测试点的理解,防止之后编写测试用例时出现遗漏;用例编写完之后,再进行用例的评审,看看测试点有没有用遗漏,对需求理解有没有错误,测试场景是否覆盖完全。
  • 先问一下面试官,是否给无限资源?给,根据功能,非功能需求的优先级顺序,利用各种方法覆盖全部需求;不给,直接告诉面试官做不到,也没必要,只需要覆盖高优先级需求。
  • 我一直感觉这个问题没什么意义
  • 1.对需求的正确理解 2.对开发结构、涉及模块有清晰的了解 3.对测试过程中要用的方法、数据、接口要有清晰的认知 4.根据需求、结合不同的场景、测试数据,编写测试用例 5.开展测试用例审评,让产品、开发、测试同时参与,确认是否有偏差缺漏,若有则修改完善。 以上步骤后基本都已能保证用例的完全覆盖了。
  • 解题思路:用例覆盖涉及哪些。 从需求到计划到实施,最后回顾复盘。每个阶段说一两个点,实施多说点。 其他回答也说了,不可能客观完全覆盖。说的是自己主观上作法。 加分项。 主客观区分。主观力求完善,客观及时调整。 分主次。如果有问题,控制在不严重的范围,影响可控。 测试话不能说太满(你说保证没问题,不符合客观规律),又不能不说(要你何用),**大成若缺**。
  • 没人能保证。这个就是数学上的求极限问题,永远在逼近用例全覆盖状态。
  • 覆盖率考核的标准主要有两方面: 一个是功能层面,一个是代码层面。功能层面的话,就是罗列测试用例,比对需求功能点看有无遗漏的。然后再拉上开发产品组织测试用例评审,看有没有遗漏的测试点。代码层面的覆盖率主要考量的是单元测试用例,可以通过自动化来跑,再通过 jacoco 技术计算代码覆盖率。
  • 面试的时候肯定不可能全面的说出来,也不可能保证我的测试用例覆盖全面,但是这时需要体现出来你的经验,你的思路自己对待这个产品的理解能力。如果你的思路经验不错,说的方向也很准确。一般面试官不会太为难你。