缺陷之灵魂操作bug

       

一、前言

        正常来说,我们在测试缺陷的时候都是按照case来测试的,但是有些场景,例如说发散思维这种场景,就会找到一些比较不太正常、不好复现的缺陷,然后如果要辅助研发修复,就会极为痛苦。

二、场景描述

        大概我遇到这样的问题是一年多以前吧,当时是测试某个输入法APP的物理键盘的功能,安装输入法APP后,连接物理键盘,在持续输入一段中英文混合字符后回车停止输入,就发现候选词展示后,字符不断自己重复输入,直到死循环。

三、缺陷比喻

        在发现缺陷的瞬间,看到的现象就是手离开键盘了,程序还在自己打字,并且都是重复不停的字,就好像透明人在有思维打字。

四、场景复现

        想到了几个场景复现的办法,描述如下:

1. 根据字符

        前面提到了,其实输入的字符就是中英文混合的字符,那么输入一段中文,输入一段英文,混合输入应该就可以复现,然而并无!

2.根据候选词栏/候选词列表展示

        简要描述一下候选词栏,就是例如你输入'nihao',如果选择的是中文输入法,就会展示一系列候选词如'你好',‘你好吗’,‘你号’

点击候选词栏的展开(小箭头按钮)就是候选词列表。

于是尝试了候选词栏和候选词列表两种方式没有复现。

3.根据行为习惯

        不知道大家能否感受到,每个人打字都会有自己的习惯,例如有的人会打一个词直接上屏,有的人会三五个字回车,有的人会一句话一个逗号,在上面符合常理的推断后,开始自闭,然后就尝试无意识按照人的行为习惯来推测问题,比如说 我有意识模仿行为,这个缺陷出现的概率就会比较低,因为是按照特定思维,特定步骤来的,特定的东西会局限住开拓性。然后无意识的打字,反而复现的概率较高,,但是无意识的行为又不能准确复现。

4.结合行为习惯固定复现操作

        既然无意识的行为习惯可以复现,我就开始按照之前的打字习惯,重复总结,尝试记录每次我都做了什么,后来发现我会中英文穿插去选择候选词,并且每到一句话完成就会回车,综合每次的行为就准确复现了上述问题。

五、总结

其实我相信,每个测试或者编程的同行业者,都有一些自己的行为习惯,可能会令我们工作上获得益处或者头痛,大家都理性看待就好,人生是旷野而非轨道,无需每个人都只有一面。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/130790.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android 13.0 根据app包名授予app监听系统通知权限

1.概述 在13.0的系统rom产品定制化开发中,在一些产品rom定制化开发中,系统内置的第三方app需要开启系统通知权限,然后可以在app中,监听系统所有通知,来做个通知中心的功能,所以需要授权获取系统通知的权限,然后来顺利的监听系统通知。来做系统通知的功能,接下来来实现…

【多媒体文件格式】AMR

AMR 自适应多速率音频压缩(Adaptive multi-Rate compression,简称AMR)是一个使语音编码最优化的专利。AMR被标准语音编码 3GPP在1998年10月选用,现在广泛在GSM和UMTS中使用。它使用1-8个不同的比特率编码。 AMR 也是一个文件格式…

jmeter接口测试项目实战详解,零基础也能学,源码框架都给你

1.什么是jmeter? JMeter是100%完全由Java语言编写的,免费的开源软件,是非常优秀的性能测试和接口测试工具,支持主流协议的测试 2.jmeter能做什么? 1.JMeter是100%完全由Java语言编写的软件性能测试的GUI的测试工具&a…

C++二分查找算法的应用:最小好进制

本文涉及的基础知识点 二分查找 题目 以字符串的形式给出 n , 以字符串的形式返回 n 的最小 好进制 。 如果 n 的 k(k>2) 进制数的所有数位全为1,则称 k(k>2) 是 n 的一个 好进制 。 示例 1: 输入:n “13” 输出:“3” …

估计量的评价指标

评价估计量优劣的指标有无偏性、有效性和一致性 我们观察世界,是对观察到的事物在大脑中形成的估计值;我们用仪器测量某个参数,是通过仪器获得该参数的估计值。那么,估计值的优劣如何来评价? 无偏性 估计值的样本均…

[SSD综述1.3] SSD及固态存储技术30年简史

依公知及经验整理,原创保护,禁止转载。 专栏 《SSD入门到精通系列》 <<<< 返回总目录 <<<< 前言 在我们今天看来,SSD已不再是个新鲜事物。这多亏了存储行业的前辈们摸爬滚打了将近半个世纪,才有了SSD的繁荣,可惜很多前辈都没有机会看到这。所有…

ActiveMQ、RabbitMQ、RocketMQ、Kafka介绍

一、消息中间件的使用场景 消息中间件的使用场景总结就是六个字&#xff1a;解耦、异步、削峰 1.解耦 如果我方系统A要与三方B系统进行数据对接&#xff0c;推送系统人员信息&#xff0c;通常我们会使用接口开发来进行。但是如果运维期间B系统进行了调整&#xff0c;或者推送过…

(04)Mycat实现分库

1、如何选择分库表 #客户表 rows:20万 CREATE TABLE customer(id INT AUTO_INCREMENT,NAME VARCHAR(200),PRIMARY KEY(id) );#订单表 rows:600万 CREATE TABLE orders(id INT AUTO_INCREMENT,order_type INT,customer_id INT,amount DECIMAL(10,2),PRIMARY KEY(id) ); #…

@Configuration 注解的 Full 模式和 Lite 模式!

Configuration 注解相信各位小伙伴经常会用到&#xff0c;但是大家知道吗&#xff0c;这个注解有两种不同的模式&#xff0c;一种叫做 Full 模式&#xff0c;另外一种则叫做 Lite 模式。 准确来说&#xff0c;Full 模式和 Lite 模式其实 1. 概念梳理 首先我们先来看一下 Spr…

深入理解Java中的ThreadLocal

简介&#xff1a; 在多线程编程中&#xff0c;线程安全是一个关键问题。而ThreadLocal提供了一种轻量级的方式来实现线程级别的共享变量&#xff0c;每个线程都拥有独立的副本。本文将通过示例&#xff0c;详细解释ThreadLocal的使用方法和原理。 使用示例&#xff1a; 下面是…

PTA: h0116. 波兰表达式

波兰表达式 题目输入格式输出格式 提示输入样例输出样例 代码 题目 &#xff08;PTA题目描述有误&#xff0c;应该是波兰表达式&#xff09;逆波兰表达式是一种把运算符前置的算术表达式&#xff0c;例如普通的表达式2 3的逆波兰表示法为 2 3。逆波兰表达式的优点是运算符之间…

YOLO算法改进6【中阶改进篇】:depthwise separable convolution轻量化C3

常规卷积操作 对于一张55像素、三通道&#xff08;shape为553&#xff09;&#xff0c;经过33卷积核的卷积层&#xff08;假设输出通道数为4&#xff0c;则卷积核shape为3334&#xff0c;最终输出4个Feature Map&#xff0c;如果有same padding则尺寸与输入层相同&#xff08;…

网易按照作者批量采集新闻资讯软件说明文档

大家好&#xff0c;我是淘小白~ 今天给大家介绍的爬虫软件是网易按照作者采集的软件 1、软件语言&#xff1a; Python 2、使用到的工具 Python selenium库、谷歌浏览器、谷歌浏览器驱动 3、文件说明&#xff1a; 4、配置文件说明&#xff1a; 5、环境配置 安装Python&am…

Docker compose容器编排

Docker compose容器编排 1、Docker compose简介 docker-compose是docker的编排工具&#xff0c;用于定义和运行一个项目&#xff0c;该项目包含多个docker容器&#xff0c;在如今的微服务时代&#xff0c;一个项目会存在多个服务&#xff0c;使用docker一个个部署操作的话就会…

[动态规划] (五) 路径问题: LeetCode 62.不同路径

[动态规划] (五) 路径问题: LeetCode 62.不同路径 文章目录 [动态规划] (五) 路径问题: LeetCode 62.不同路径题目解析解题思路状态表示状态转移方程初始化和填表返回值 代码实现总结 62. 不同路径 题目解析 (1) 机器人从左上角到右下角有多少方法 (2) 机器人只能向左或者向右…

Screens for Mac 中文版 远程桌面连接控制工具

Screens Mac 版是Mac os平台上的一款Mac VNC 客户终端,能够自由访问远程计算机设备&#xff0c; Screens Mac 版支持各种强大的远程控制辅助工具&#xff0c;例如剪切板共享、快捷方式自定义、安全连接、多屏幕支持、快速扫描连接等。 Screens 4 for mac支持多种远程桌面协议&…

2023年上半年网络工程师试题

2023年上半年网络工程师试题 【试题一】 阅读以下说明&#xff0c;回答问题1至问题4将解答填入答题纸对应的解答栏内。 【说明】 某企业办公楼网络拓扑如图1-1所示。该网络中交换机Switch1-Switch4均是二层设备&#xff0c;分布在办公楼的各层&#xff0c;上联采用千兆光纤…

Jupyter Notebook交互式开源笔记本工具

1、官网 http://jupyter.org/ 2、什么是Jupyter Notebook Jupyter Notebook一个交互式的开源笔记本工具&#xff0c;可以用于编写、运行、和共享代码、文本、图形等内容。 如下文本、代码、图形 支持多种编程语言&#xff0c;包括python、R和Julia等&#xff0c;可以走一个…

vtk粗配置及其变换

开发环境&#xff1a; Windows 11 家庭中文版Microsoft Visual Studio Community 2019VTK-9.3.0.rc0vtk-example参考代码目的&#xff1a;学习与总结 demo解决问题&#xff1a;基于标记点&#xff0c;两个点集在配准后的平均距离最小&#xff0c;要求输入两个点数必须相等&…

C语言编译过程总结

开发C程序有四个步骤&#xff1a;预处理、编译、汇编和链接。任何一个体系结构处理器上都可以使用C语言程序&#xff0c;只要该体系结构处理器有相应的C语言编译器和库&#xff0c;那么C源代码就可以编译并连接到目标二进制文件上运行。 我们创建一个test.c为例来讲解程序编译的…