软件测试用例(一)
目录
- 测试用例
- 概念
- 测试用例设计
- 设计用例公式
- 功能测试
- 界面测试
- 性能测试
- 兼容性测试
- 易用性测试
- 安全测试
- 弱网测试
感谢各位大佬对我的支持,如果我的文章对你有用,欢迎点击以下链接
🐒🐒🐒 个人主页
🥸🥸🥸 C语言
🐿️🐿️🐿️ C语言例题
🐣🐣🐣 python
🐓🐓🐓 数据结构C语言
🐔🐔🐔 C++
🐿️🐿️🐿️ 文章链接目录
🏀🏀🏀 笔试练习题
🐯🐯🐯 Git
😎😎😎 软件测试
测试用例
概念
测试用例是为了实施测试而向被测试的系统提供的一组集合,这组集合包含:测试环境、操作步骤、测试数据、预期结果等要素 ,如下图
以我实习为例,我在测试的时候都是跟着我的导师给我的测试用例去测的,这个测试用例有每个测试功能的分类,也就是将一个大的功能进行细分,直到不能再分为止,在测试的时候测试用例上都有详细的测试过程,有些虽然没有详细的测试过程,但是上面会有一个文件路径,那个路径里会有一个文档,跟着文档操作步骤去测就行了,在测完后需要我去填写实际结果,然后和预期的结果进行比对,分析他们的差别
为什么需要测试用例呢,不写测试用例可以进行测试吗
测试中可能会遇到很多问题,如:
不知道是否较全面的测试了所有功能(可以想象成任务清单,如果每天事情特别多会出现忘记做某件事,而任务清单就是提醒你需要做哪些事情)
测试的覆盖率无法衡量(将测试用例写出来并分类能够比较直观的看出测试的场景覆盖的怎么样)
对新版本的重复测试很难实施(回归测试无法仅通过人工测试的方式进行历史功能的回归)
存在大量冗余测试影响测试效率
测试用例的出现就是解决这些问题。另外,测试用例的作用还可以避免测人员被迫背锅
测试用例设计
设计用例公式
设计测试用例的思路,举个例子
说出家里的电器,通常我们会直接说出想到的电器,但是这样很有可能说了几个后就想不起还有哪些电器了
但如果我们先进行分类,比如一个家有厨房 客厅 卧室 卫生间…
然后我们在说电器的时候我们先将厨房的电器说出来,比如厨房有…,然后再客厅…这样就可以将大多数家具都说出来
设计测试用例的万能公式:功能测试+界面测试+性能测试+兼容性测试+易用性测试+安全测试。
功能测试
功能测试是一个试图发现程序与其外部规格说明之间存在不一致的过程。外部规格说明是一份从最终用户的角度对程序行为的精确描述。功能测试通常是一项黑盒操作,在进行功能测试时,需要对规格说明进⾏分析以提炼测试用例
简单的来说功能测试就是对一个产品的功能进行测试,具体要测哪些呢
举个例子,我们要测试一个水杯的功能,我们要测试一些这个水杯是不是能够装水或者饮料…我们不需要关注水杯内部是怎么实现的,也就是说水杯能装水它的功能就是正常的
界面测试
对软件界面上所有的内容都需要进行测试。
要求:
整体界面测试界面的实现与设计图要求一致。
界面元素测试
控件操作验证
简答来说界面测试就是看界面有没有哪些东西忘记设计了,或者说界面点击没反应…
性能测试
性能测试和功能测试的区别是:功能测试检查软件是否做了,而性能测试测试软件做的好不好。
性能测试是很关键的,比如一款手机,他的功能可以正常用,那么功能测试是没有问题的,但是手机的价格有高有低,其中一个重要的因素就是性能,比如打游戏不卡,手机切换应用非常丝滑…这些都是性能的体现
兼容性测试
软件是部署在硬件系统之上,并依赖所需要的软件环境。如QQ可以在PC端打开,也可以在移动端打开;移动端又分为IOS系统和Android系统,且市面上手机又有不同的品牌、不同的机型、不同的版本。软件是否能够在不同的环境下正确运行需要测试人员进行验证。
但是这样就会有一个问题:既然市面上有众多版本的机器,那么在执行兼容性测试时难道所有的机型都需要全面覆盖吗
选取标准:
优先选择使用当前产品top级别的机型进行测试实际在企业中,后台是可以获取到使用产品的机型,并以报表的形式统计在后台,供产品人员或其他人员制定策略参考。选择主流的浏览器/机型进⾏测试
易用性测试
易用性测试的标准是检查产品是否具备简单易上手的属性。假如测试人员从来没有安装或使用过
该产品,作为一个新用户,对当前产品是否能够快速适用产品的使用流程。
这里可以举一个例子,我喜欢玩永劫无间端游,之前听说永劫要出手游时我还去看了下,其中手游的抖音官号发了一个视频,视频内容就是叫了几个老奶奶去玩永劫无间手游,然后练习游戏中的连招…
这个视频其实就是在告诉我们玩家,这个游戏很容易上手,不会像端游那样操作复杂
安全测试
安全测试和性能测试⼀样都是比较大的领域。常见的安全问题如:
隐私数据明文显示。
参数未强校验导致SQL注入。
越权:普通用户也可以执行管理员权限的操作。
弱网测试
除了上面的测试外还有弱网测试
弱网测试的目的就是尽可能保证用户体验,关注的关键点包括:
页面响应时间是否可以接受,关注包括热启动、冷启动时间、页面切换、前后台切换、首字时间,
首屏时间等。
页面呈现是否完成一致。
超时文案是否符合定义,异常信息是否显示正常。
是否有超时重连。
安全角度:是否会发生dns劫持、登陆ip更换频繁、单点登陆异常等。
大流量事件风险:是否会在弱网下进行更新apk包、下载文件等大流量动作。
弱⽹需要借助工具来构造弱网,这里使用的是fiddler
1)fiddler配置代理
2)fiddler进行抓包(桌面/移动端)
3)fiddler如何构造弱网条件