软件测试菜鸟还是大神,一道测试用例设计笔试题就能测出!
Posted 程序员小濠
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了软件测试菜鸟还是大神,一道测试用例设计笔试题就能测出!相关的知识,希望对你有一定的参考价值。
软件测试菜鸟还是大神,一道测试用例设计笔试题就能测出!为什么这么说呢?是因为你们的思路有着天壤之别,来看吧:
相信不少朋友在笔试的时候都遇到过测试用例设计的笔试题。通常是一个登陆页面,上面有用户名,密码的输入框,再多一点的有个验证码。
测试用例设计笔试题:
在一个Web测试页面上,有一个输入框,一个计数器(count)按钮,用于计算一个文本字符串中字母a出现的个数。这里的问题是,请设计一系列测试用例来测试这个Web页面。
很多朋友可能拿到这道题的时候已经开始写下1.2.3.了,不过根据经验上来说,追求数量而非质量的倾向,是一种低效的工作方式。
特别在有面试官在旁边看到你答题的时候,请保持沉思者状保持10-15秒。
能够针对题目提出一些问题来的候选者会被认为更有潜质来做测试人员,比如大写还是小写?只是英语吗?计算完成后文本会被清除吗?多次按下按钮会发生什么事情?诸如此类。
通常说来,我们考虑一个测试对象的时候至少从以下六方面来考虑:
1、功能性
2、易用性
3、可靠性
4、性能
5、安全
6、兼容性
如果你是一个测试菜鸟,从功能性出发,你可能会列出以下一个典型的列表:
“banana”:3(一个合法的英文字)。
“A” 和“a”:1(一个简单有正常结果的合法输入)。
“”:0(一个简单的结果为0的合法输入)。
Null:0(简单的错误输入)。
“AA” 和“aa”:2(个数大于1并且所有字符都为a/A的输入)。
“b”:0(一个简单的非空合法输入,结果为0)。
“aba”:2(目标字符出现在开头和结尾,以寻找循环边界错误)。
“bab”:1(目标字符出现在中间)。
space/tabs:N(空白字符与N个a的混合)。
不包含a的长字符串:N(N大于0)。
包含a的长字符串:N(N是a的倍数,试试龙妈的名字)。
更优秀的软件测试工程师,会开始考虑后面五个方面,设计以下用例:
质疑界面的外观、调色板和对比度(这与相关应用风格一致么?)
文本框太小了,建议加长以便显示更长的输入字符串
这个应用能否在同一台服务器上运行多个实例,多个用户同时使用是否会有问题。
是否会根据用户的输入自动匹配内容?
建议使用真实的数据,如从词典或书中选择输入内容。
提出疑问:“输入的数据是否会被保存”,输入字符串可能包含地址或其他身份信息。
尝试复制/粘贴字符串。
提出疑问:“计算足够快么?在大并发下使用”。
提出疑问:“用户怎么找到该页面?”
提出疑问:“有快捷键的设置么?比如输完字符后敲入回车键而不是点击提交按钮”
还有一些软件测试点,是只有经验丰富的测试工程师才会想到:
意识到计算会通过URL-encodedHTTP GET请求传递到服务器,字符串可能会在网络传输时被截断,因此,无法保证支持多长的URL。
建议将此功能参数化,为什么只对字母a计算呢?
考虑计算其它语言中的a(α,Alpha)。
考虑到该应用是否应该国际化。
考虑到输入法全角输入和半角输入是否相同。
考虑编写脚本或者手工采样来探知字符串长度的上限,然后确保在此区间内功能正常。
考虑背后的实现和代码。也许已经有一个计数器遍历该字符串。
提出疑问:“HTTP POST方法和参数会被黑掉码?也许有安全漏洞?”
用脚本创建各种有趣的排列组合和字符串特性,如长度、a的个数等,自动生成测试输入和验证。
相信很多看完上面列表的朋友,内心是这样的:
绵薄之力
做为一名自动化软件测试,接下来我想分享一下这些年来,我对于技术一些归纳和总结,和自己对作为一名高级测试者需要掌握那些技能的笔记分享,希望能帮助到有心在技术这条道路上一路走到黑的朋友!
下面分享我整理的这份2021年可能是最全的软件测试工程师发展方向知识架构体系图。
一、Linux必备知识
linux作为现在最流行的软件环境系统,一定需要掌握,目前的招聘要求都需要有linux能力。
二、Shell脚本
掌握shell脚本,包括shell基础与应用、shell逻辑控制、shell逻辑函数等。
三、互联网程序原理
自动化必由之路:前端开发基础知识以及互联网网络必备知识。
四、mysql数据库
软件测试工程师必备Mysql数据库知识,不仅仅停留在基本的“增删改查”。
五、抓包工具
Fiddler、Wireshark、Sniffer、Tcpdump各种抓包工具适用于各种项目,总有一款适合你。
六、接口测试工具
接口测试神器,你绕不开的强大工具:Jmeter。小巧灵活:Postman。
七、Web自动化测试Java&Pyhton
了解自动化的目的,熟练掌握testng&unittest自动化框架,以及断言与日志处理。
八、接口与手机自动化
专业接口调用、测试解决方案。组建完整的web和接口自动化框架,Appium整体使用。
九、敏捷测试&TestOps构建
揭开TestOps的神秘面纱,持续集成Jenkins框架烂熟于心。
十、性能测试&安全测试
软件测试的彼岸:性能测试和安全测试,选对方向,努力爬坑吧!
上面就是我为大家整理出来的一份软件测试工程师发展方向知识架构体系图。希望大家能照着这个体系在3-4个月完成这样一个体系的构建。可以说,这个过程会让你痛不欲生,但只要你熬过去了。以后的生活就轻松很多。正所谓万事开头难,只要迈出了第一步,你就已经成功了一半,等到完成之后再回顾这一段路程的时候,你肯定会感慨良多。
看完这篇内容后,相信以下两件事,也会对你的个人提升有所帮助:
1、 点赞,让更多人能看到这篇文章,同时你的认可也会鼓励我创作更多优质内容。
2、 让自己变得更强:想一想,如果你想在测试这个行业一直做下去,你的经验和测试技术是远远不够的,你需要进阶,你需要丰富你的技术栈!还等什么!
最后:【可能给予你助力的教程】
这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。
关注我的微信公众号:【程序员小濠】就可以免费获取了~
我的学习交流群:175317069一起交流分享~
如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!
以上是关于软件测试菜鸟还是大神,一道测试用例设计笔试题就能测出!的主要内容,如果未能解决你的问题,请参考以下文章