在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
设计功能测试用例是软件测试人员的一基本功。然而很多新手测试工程师对基本的测试概念、思路以及技术没有充分的认知,甚至在设计测试用例的时候大部分时间通过直觉与经验执行。因此这部分新手测试工程师的测试用例设计既不全面也不可学 。那对于新手而言应该如何设计功能测试用例呢?

一、显式功能性需求:指的是需求中明确规定且用户可以感知到的需求,比如“访客用户访问管理员页面时会跳转到登录页”。常用方法有三种:
1、等价类划分法
我们如果想测试一个功能的最傻的办法就是穷举。比如说一个密码验证功能,我们把所有的可能的密码都尝试一遍,自然就可以覆盖掉到所有的问题与可能。但是这种穷举的方法明显是做不到的。因此我们要用到等价类划分法。等价类划分法就是说我们将所有可能的输入数据或操作分为多组不同的子集,每个子集中的数据与操作对发现程序中的潜在错误都有同等的效应。这样我们就将一个子集称为一个等价类。
2、边界值分析法
在我们在测试合理与不合理的数据的时候,往往最容易出现问题的就是合理与不合理的边界,这时我们就需要使用边界值分析法了。边界值分析法,就是对恰好大于、小于和等于边界的值进行测试,来验证程序是否做到了合适的处理。边界值分析法一般是作为等价类的补充,来加强测试功能实现的程度与健壮性保障的程度,是否符合规格。
3、错误推测法
在测试的时候就算我们使用了等价类划分法和边界值分析法,也很可能会遗漏一些需求中没有清晰提出,技术上比较隐蔽的错误。这种错误就需要测试人员通过已有的经验、对功能实现可能的方法的理解或直觉,来推测出软件中可能存在的各种错误与场景,然后编写测试用例来进行验证,这就叫做错误推测法。比如,登录超时后,某个需要权限操作的功能在使用的时候,是否跳到了登录页,还是直接报错,甚至说依旧可以操作。这种错误是需要测试人员一定的经验、技术积累与直觉的。
二、非功能性需求:指的是用户无法直接体验到的,非具体功能性的需求,但这种非功能性需求在做功能性测试的时候也会涉及到,因为很多非功能性的需求会影响到功能的可用性与用户体验,比如性能测试。
1、兼容性测试
兼容性指的是开发的软件是否在各种平台都可以使用。比如我们开发一个网站,我们的用户可能会用到各种不同的浏览器访问我们的网站。这样我们在测试的时候,就不能只考虑到某一种浏览器。我们需要考虑到多种浏览器的兼容性。
2、安全性测试
我们的测试人员还需要关注到开发软件的安全性。这涉及到:用户隐私信息是否加密;需要权限的资源是否有没有权限也可以被拿到的风险;会不会受到跨站脚本的攻击;会不会受到sql注入攻击等等。
3、压力测试
测试人员也需要考虑的软件是否能够承载其需求所需的压力,例如:软件是否能在合理的时间内响应用户行为;软件是否可能承载足够的请求;软件在处理大数据量时会不会产生资源锁死。
在软件测试过程中,如果测试用例设计不全面,就会导致测试结果出现严重的偏差,甚至影响整个产品的研发周期。因此作为软件测试工程师一定要注重测试用例的设计。尤其对于新手,刚开始做测试工作时一定要注重积累和学习。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
软件测试功能接口性能测试课程学习哪里好?
性能测试是软件测试中非常重要的一个环节,其中功能接口测试是对测试系统组件间接口的一种测试。其测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系。因此功能接口测试非常的重要。那想学习软件测试中的功能接口性能测试课程哪里好呢?
8746
2019-07-24 17:56:03
百度cookie使用方法分析
百度cookie使用方法分析,cookie是网站给你的已登陆证书,理论上拥有BDUSS这个COOKIE可以在任何位置跳过百度登录认证访问账号。
11609
2020-01-07 11:08:07
在线学习软件测试靠谱吗?
在线学习软件测试靠谱吗?效果如何?有不少人选择在线看视频自学或者报名参加培训班,软件测试不仅是功能测试及一些专业技能的学习,现在流行的自动化测试、GUI测试,接口测试和性能测试开发等内容,自学的同学往往会发现花钱买了一堆软件测试相关的书,不一定能达到企业要求的水平。
7299
2020-06-26 14:29:40
软件测试工程师待遇怎么样?
软件测试工程师待遇怎么样?针对不同地域经济发展情况,软件测试工程师薪资待遇都呈现差异化,根据个人能力水平不同薪资水平呈现阶梯化,小编根据招聘网站的信息,站在薪资角度来分析测试工程师的待遇。
6193
2020-07-07 10:50:19
自动化测试是什么?应用在哪儿?
软件测试是一个涉及很广的领域,本质是质量保障,所以不是要求你去专研某一个知识而是去专研其实用性,如何更可能的节省测试成本和保证测试质量。想要做好软件测需要对系统业务、编程、系统框架搭建有所专研,更需要在测试流程与平台建设方面有所认识。
7322
2021-03-19 11:11:36
