【软件测试】5.测试用例

news2024/9/20 21:40:28

目录

1.测试用例

1.1概念

1.2测试的要素

2.测试用例的万能公式

2.1常规思考+逆向思维+发散性思维

2.2万能公式

2.2.1功能测试

2.2.2界面测试

2.2.3性能测试

2.2.4兼容性测试

2.2.5易用性测试

2.2.6安全测试

2.3弱网测试


1.测试用例

1.1概念

什么是测试用例?

测试用例是为了实施测试而向被测试的系统提供的一组集合,这组集合包含:测试环境、操作步骤、测试数据、预期结果等要素。

设计测试用例原则一:

测试用例中一个必须部分是对预期输出或结果进行定义。

1.2测试的要素

什么是要素?我们在编写测试用例的时候,每个用例需要给出这些要素对应的信息。

用例编号test-01
标题成功注册网易邮箱
测试方式手工测试
功能模块注册登录
重要性重要
测试前提系统运行正常,邮件服务器已开启
测试环境win10 Chrome版本103.0.5060.66(正式版本)(64位)
测试数据

邮箱地址:996402440@qq.com

密码:123456

手机号:12312341234

测试步骤

1.打开谷歌浏览器,输入网易注册地址:https://mail.163.com/register/index.html

2.输入邮箱地址,密码,手机号,获取验证码并输入正确的验证码,勾选协议

3.点击注册类型

期望结果展现注册成功的结果页,并且使用刚注册的账号可以正常登录并进入邮箱首页

为什么需要测试用例呢?不写测试用例可以进行测试吗?

测试中可能会遇到很多问题,诸如:

  • 不知道是否较全面的测试了解所有功能
  • 测试的覆盖率无法衡量
  • 对新版本的重复测试很难实施(即回归测试无法通过人工测试的方式进行历史功能的回归)
  • 存在大量冗余测试影响测试效率

2.测试用例的万能公式

2.1常规思考+逆向思维+发散性思维

正确设计测试用例的思想:常规思考+逆向思维+发散性思维

设计测试用例的原则二:

  1. 测试用例的编写不仅应当根据有效和预料到的输入情况,而且也应该根据无效和未预料到的输入情况。
  2. 检查程序是否“未做其应该做的”仅是成功的一半,测试的另一半是检查程序是否“做了其不应该做的”(是上一条原则的必然结果)
  3. 计划测试工作时不应默许假定不会发现错误。
2.2万能公式

设计测试用例的万能公式:功能测试+界面测试+性能测试+兼容性测试+易用性测试+安全测试

2.2.1功能测试

功能测试是一个试图发现程序与其外部规格说明之间存在不一致的过程。外部规格说明是一份从最终用户的角度对程序行为的精确描述。功能测试通常是一项黑盒操作。在进行功能测试时,需要对规格说明并进行分析以提炼测试用例。

然而,不仅在工作中还是面试中,可能还会存在需求不明确的功能?这种情况下该如何进行功能测试呢?

  • 查找其他相关文档,来帮助理解所要测试的产品需要完成的目标。
  • 尽量多参加项目组内的会议,比如需求讨论、设计讨论、计划讨论等,能够加深对产品的理解。
  • 召集相关人员,对你整理的结果进行讨论,通过评审后,这份文档就可以作为依据来设计你的case了。
  • 如果是一款已经上线的产品,可以多使用该产品,不懂得问产品经理。
  • 也可以去看历史bug,可以了解到一些需要关注的东西。
2.2.2界面测试

对软件界面上所有的内容都需要进行测试

要求:

  • 整体界面测试界面的实现和设计图要求一致。
  • 界面元素测试。
  • 控件操作验证
2.2.3性能测试

性能测试和功能测试的区别是:功能测试检查软件是否做了,而性能测试测试软件做的好不好。

2.2.4兼容性测试

软件是部署在硬件系统之上,并依赖所需要的软件环境。如QQ可以在PC端打开,也可以在移动端打开;移动端又分为IOS系统和Android系统,且市面上手机又有不同的品牌、不同的机型、不同的版本。软件是否能够在不同的环境下正确运行需要测试人员进行验证。

问题:既然市面上有众多版本的机器,那么在执行兼容性测试时难道所有的机型都需要全面覆盖吗?

选取标准:

  • 优先选择使用当前产品top级别的机型进行测试。实际在企业中,后台是可以获取到使用产品的机型,并以报表的形式统计在后台,供产品人员或其他人员制定策略参考。
  • 选择主流的浏览器/机型进行测试。
2.2.5易用性测试

易用性测试的标准是检查产品是否具备简单易上手的属性。假如测试人员从来没有安装或使用过该产品,作为一个新用户,对当前产品是否能够快速使用产品的使用流程。

2.2.6安全测试

安全测试和性能测试一样都是比较大的领域。常见的安全问题如:

  • 隐私数据明文显示。
  • 参数未强校验导致SQL注入。
  • 越权:普通用户也可以执行管理员权限的操作。
2.3弱网测试

除了万能公式之外,还有一个比较常用的测试:弱网测试、安装卸载测试。

弱网测试的目的就是尽可能保证用户体验,关注的关键点包括:

  • 页面响应时间是否可以接受,关注包括热启动、冷启动时间,页面切换,前后台切换,首字时间,首屏时间等。
  • 页面呈现是否完成一致。
  • 超时文案是否符合定义,异常信息是否显示异常。
  • 是否有超时重连。
  • 安全角度:是否会发生dns劫持,登录IP更换频繁,单点登录异常等。
  • 大流量事件风险:是否会在弱网下进行更新apk包、下载文件等大流量动作。

安装和卸载测试

针对需要进行部署的软件,除了软件功能外,我们还需要关注软件的能够成功安装和卸载。

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

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

相关文章

梳理 JavaScript 中空数组调用 every方法返回true 带来惊讶的问题

前言 人生总是在意外之中. 情况大概是这样的. 前两天版本上线以后, 无意中发现了一个bug, 虽然不是很大, 为了不让用户使用时感觉到问题. 还是对着一个小小的bug进行了修复, 并重新在上线一次, 虽然问题不大, 但带来的时间成本还是存在的. 以及上线后用户体验并不是很好. 问题…

ArrayList与LinkedList

内存 内存缓存 预先将数据写到容器等数据存储单元中,就是软件内存缓存。 内存缓存淘汰机制 FIFO(First in ,First Out)(先进先出) LFU (Least Frequently Used) (频繁的最后淘汰) LRU(Least Recently Used) &#…

Lumines推出RGBL彩色混合LED

Luminus Devices倾心打造了一款崭新的4合1 RGBL(红绿蓝绿石灰)LED系列,专为舞台与建筑照明领域量身打造,满足对高显色指数(CRI)与高输出颜色混合的苛刻需求。这一创新之举,无疑是照明技术的一次…

K8S认证|CKA题库+答案| 7. 调度 pod 到指定节点

7、调度 pod 到指定节点 您必须在以下Clusterd/Node上完成此考题: Cluster Master node Worker node hk8s master …

DFA 算法

为什么要学习这个算法 前一段时间遇到了瓶颈,因为词库太多了导致会有一些速度过慢,而且一个正则表达式已经放不下了,需要进行拆分正则才可以。 正好我以前看过有关 dfa 的介绍,但是并没有深入的进行研究,所以就趁着周…

ubuntu22.04下 easyconnect+输入法安装

先使用对应ubuntu版本的easyconnect安装 sudo dpkg -i EasyConnect_x64_7_6_7_3.deb 下载压缩包servicePack,并解压缩 cd 下载路径/servicePack sudo cp * /usr/share/sangfor/EasyConnect/ 打开easyConnect /usr/share/sangfor/EasyConnect/EasyConnect 此处…

docker 安装 SonarQube

文章目录 docker 安装 SonarQube一、修改句柄二、创建挂载文件夹三、拉取镜像四、修改 PG 库4.1、创建用户4.2、创建库 五、启动和挂载六、访问七、安装插件 docker 安装 SonarQube 版本:8.9 对 JDK 8 最大支持为 8.9 版本 一、修改句柄 #修改文件句柄数量&#…

投骰子——(随机游戏的控制)

精华点在于&#xff1a;利用封装&#xff0c;函数之间的良好调用&#xff0c;从而清晰明了的解决问题。 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> # include<stdlib.h> # include<time.h> # include"math.h" # define ARR_LEN 10 # d…

YoloV9改进策略:注意力改进|HCANet全局与局部的注意力模块CAFM|二次创新|即插即用

摘要 本文是在CAFM的基础上做了一些修改&#xff0c;算是二次创新吧&#xff01;修改后的模块对比原来的模型有了很大的提升。我用改进后的模型来改进YoloV9&#xff0c;精度得到了大幅度的提升&#xff0c;即插即用&#xff0c;简单易懂。为了方便大家写论文&#xff0c;我现…

十年磨一剑“2024成都电子信息展会”推动电子产业全球发展

2024成都电子展&#xff0c;招商工作已接近尾声&#xff0c;这场盛大的展会不仅是电子信息行业的一次盛会&#xff0c;更是中国西部电子信息产业发展的重要里程碑。自2013年起&#xff0c;中国&#xff08;西部&#xff09;电子信息博览会便选择成都作为其永久的举办地&#xf…

pod容器基础概念

一 Pod基础概念&#xff1a; ①Pod是kubernetes中最小的资源管理组件&#xff0c;Pod也是最小化运行容器化应用的资源对象。一个 Pod代表着集群中运行的一个进程。 ②kubernetes中其他大多数组件都是围绕着Pod来进行支撑和扩展Pod功能的&#xff0c; 例如&#xff0c;用于管…

2024年5月22日19:57:32第一部分

家庭财务管理系统 1.逻辑上相邻 2.单链表适应动态变化 1.定义函数 2.定义结构体 sturcrt{stu[100]; phoen[100]; }stu; 3.完善主函数

笔记-iOS消息转发机制和使用

消息转发机制的回顾以及涉及的几个方法 一、OC消息发送原理 消息转发机制 1、由于OC的动态特性&#xff0c;只有当程序运行起来之后&#xff0c;才知道要真正执行哪个函数&#xff08;动态绑定&#xff09;。在编译过程向类发送了其无法理解的消息并不会报错&#xff0c;因为…

基于双向长短期记忆BiLSTM对消费者投诉进行多类分类

前言 系列专栏:【深度学习:算法项目实战】✨︎ 涉及医疗健康、财经金融、商业零售、食品饮料、运动健身、交通运输、环境科学、社交媒体以及文本和图像处理等诸多领域,讨论了各种复杂的深度神经网络思想,如卷积神经网络、循环神经网络、生成对抗网络、门控循环单元、长短期记…

FTP如何端口映射?

FTP&#xff08;File Transfer Protocol&#xff09;是一种用于在网络上进行文件传输的协议。在FTP协议中&#xff0c;客户端和服务器通过不同的端口进行通信&#xff0c;其中控制连接使用端口号21&#xff0c;数据连接使用端口号20。由于网络环境的限制&#xff0c;一些情况下…

协变(List泛型作为方法参数时的父类子类问题)

有段时间没搞.net的项目了&#xff08;没办法&#xff0c;谁让国内JAVA流行是事实&#xff09;。最近又回归.net&#xff08;哪里需要哪里搬~&#xff09;。 接收到需求后&#xff0c;一顿输出&#xff0c;结果…咦?编译失败??? 错误信息&#xff1a; CS1503:参数1:无法…

Django介绍:探索Python最受欢迎的Web框架

文章目录 Django是什么Django的核心特性1. MTV架构2. 自带的Admin后台管理系统3. ORM&#xff08;对象关系映射&#xff09;4. 强大的表单处理5. 完善的文档和活跃的社区 快速入门&#xff1a;使用Django创建一个简单的Web应用步骤1&#xff1a;安装Django步骤2&#xff1a;创建…

lambdastream

lambda 匿名函数 为了简化java的匿名内部类 事件监听ActionListener 接口&#xff08;外部类&#xff09; 内部类 类在其他地方用不到&#xff0c;索性就把这个类定义在类的内部使用 好处&#xff1a;1.内部可以使用外部类成员 2.其他地方发现不了 往往内部类只用一次&…

电力巡检穿戴式智能手环:让巡检不孤立无援

电力巡检穿戴式智能手环:让巡检不孤立无援 在电力巡检的广袤天地里中&#xff0c;电力工作人员他们身着工装&#xff0c;头戴安全帽&#xff0c;手持仪器&#xff0c;穿梭在高压线路与铁塔之间。他们的健康状态&#xff0c;直接关系到电力作业的安全与效率。如今&#xff0c;电…

【投稿资讯】区块链会议CCF A -- SP 2025 截止6.6、11.14 附录用率

会议名称&#xff1a;46th IEEE Symposium on Security and Privacy( S&P&#xff09; CCF等级&#xff1a;CCF A类学术会议 类别&#xff1a;网络与信息安全 录用率&#xff1a;2023年 195/1147&#xff0c;2024年录用了17篇和区块链相关的论文 Topics of interest inc…