软件测试用例(3)
按照测试对象划分:
一)界面测试:
1)软件只是一种工具,软件和人的信息交流是通过界面来进行的,界面是软件和用户交流的最直接的一层,界面的设计决定了用户对于我们设计软件的第一映像,界面如同人的面孔,具有最吸引用户的直接优势,设计合理的界面必然可以给用户心仪的感受;
2)界面测试又称之为UI测试,指按照界面的需求(一般是UI设计稿)和界面的设计规则,对我们软件界面所展示的全部内容进行测试和检查:
界面测试包括以下三个方面:
1)验证界面内容展示的完整性,一致性,准确性,友好性,比如说界面对于屏幕大小的一个自适应,换行和内容是否全部清晰的展示,当用户打开这个界面第一感觉队友用户是否有好,操作是否有好,展示是否有好;
2)验证整个页面布局或者是排版是否合理,不同的板块,字体的设计,图片的展示包括颜色大小尺寸高度是否符合需求,布局要合理,各个模块的位置要符合大众的使用习惯,或者有合适的引导;
3)对界面不同控件进行测试,比如说对话框,文本框,滑动条,选项展示按钮是否可以正常使用,颜色大小尺寸高度,确认登陆按钮有效和无效的状态是否设计合理;
4)当前的页面的颜色和步调是否符合当下时事的发展,给用户视觉的友好;
5)文字是否有错别字,文字折叠,病句测试;
cookies/session测试
cookies/session通常用来存储用户信息,Cookie通过在客户端记录信息确定用户身份,session通过在服务器端记录信息确定用户身份。
cookies/session测试同理,测试的内容可包括:
1)打开WEB系统后,在浏览器默认存储cookies的目录下看此cookies目录是否存在
2)已知cookies的保存时间,测试时间范围之内和之外的cookies文件是否正常
3)将浏览器下的所有cookies文件全部删除,再次登录web系统,会怎么处理
二)可靠性测试
1)可靠性指的是可用性,一般是表示系统正常的运行的能力或者程度,一般向用户提供软件服务的时间占总时间的百分比表示
2)可靠性=正常运行时间/正常运行时间+非正常运行时间
3)系统非正常运行的时间可能是由于硬件,软件,网络故障或任何其他因素(如断电)造成的,这些因素能让系统停止工作,或者连接中断不能被访问,或者性能急剧降低导致不能使用软件现有的服务等
三)容错性测试:
容错性测试指的是指系统能够处理异常,用户的错误操作而不至于系统崩溃,从而能够提高系统的可用性,系统内部对于处理这些突发情况的表现;
容错性测试包含以下方面:
1)输入异常数据或进行异常操作,以检验系统的保护性,如果系统的容错性好,系统只给出提示或内部消化掉,而不会导致系统出错甚至崩溃;
2)灾难恢复性测试,通过各种手段,让软件强制性地发生故障,然后验证系统已保存的用户数据是否丢失,系统和数据是否能尽快恢复四)文档测试:
通常是说在需求评审的时候测试人员需要进行需求分析,这就是文档测试
文档测试的关注点:
1)文档的术语
2)文档的正确性
3)文档的易用性,完整性
五)兼容性测试
5.1)浏览器的兼容性,Chrome浏览器,Firefox浏览器,edge浏览器,后面要加上版本以及多少位;
5.2)系统的兼容性:linux,windows,Mac,鸿蒙,安卓,苹果,后面也要加上版本以及多少位;
5.3)终端:PC端还是移动端
5.4)自身版本的兼容性
5.5)其他软件的兼容性:百度APP有直播,小说,贴吧,好看视频里面都有小说的入口,通过矩阵产品来进行引流;
5.6)数据的兼容性,百度APP的账号是否可以正常登录百度网盘的账号
6)易用性测试
软件是否具备简单易上手的特性
易用性:需要具备便捷,简单易上手的属性
假设我是一个从来都没有使用过这个产品的用户,我首次使用是否可以尽快上手,是否符合用户的使用习惯,一个页面登录注册是否摆在了合适的位置,主功能的一些入口;
7)安装和卸载测试:
1)软件不同的安装和卸载方式,PC端下载,手机端
2)应用是否可以在不同的环系统,版本下安装(安装兼容性)
3)安装或者卸载过程中是否可以手动暂停,或者取消
4)安装空间不足的时候系统是否有提示
5)是否可以正常的卸载,以及应用软件的各种卸载方式
6)卸载和安装过程中出现环境问题,软件是否可以正常并且合理的应对,比如死机,断电,断网等
安全测试:
1)针对于软件功能来说,看看软件功能是否崩溃,SQL注入问题,XSS漏洞,黑客传入JS脚本,到直接页面没法使用;
2)垂直越权,下级员工可以看到上级员工的才看到的隐私数据;
3)水平越权,平级成员之间不允许互相访问的私有数据也可以看到了;
4)SQL注入:
比如说咱们平时写的一些项目,涉及SQL的增删改查,比如说有一个搜索界面,需要用户传入一个id,然后后端通过这个id拼接到查询的SQL语句中进行查询
SQL:select * from data where id=${id} 127.0.0.1:8080/Java100?id= 4 or 1=1
结果就会全表数据返回
select * from user where userID=20; select * from user where userID=20 or 1=1;
造成用户信息泄露,太过于信任用户没有对用户输入的参数进行严格的校验
5)伪造Cookie中的SessionID让其登陆成功;
性能测试:
1)资源泄露:
1.1)文件资源泄露导致内存不够从而使系统崩溃
1.2)还有创建对象释放内存
1.3)创建线程来提高程序执行的性能的时候,线程没有结束
2)资源瓶颈:CPU资源,内存资源,网络资源带宽,可以对比一下哪些进程占用的资源更多,哪些进程占用的资源更少,采长补短;
3)用户响时间,事务平均响应时间;
性能测试执行:
1)刷新页面,软件响应时间,页面加载时间和按钮反应时间,用户大量增多
2)同时几千万人同时访问接口,看看页面访问时间,页面是否可正常展现
比如说对于这个登陆注册的接口,设计千万个注册登录的接口,看是否页面可以正确的展现,造成服务器负载压力过大;
2)按照是否查看代码划分:
1)黑盒测试:把代码看作是一个黑匣子,不关心内部结构和内部特性,只是关心功能是否符合产品规格说明书的要求,我们可以构造非常多非常多的一个输入条件,在根据输入条件对应的一个输出来检测是否符合预期,又被称之为数据驱动测试或者是功能测试;
黑盒测试就是在完全不考虑程序逻辑和内部结构的情况下,检查系统功能是否按照需求规格说明书的规定正常使用,是否能适当的接收输入数据而输出正确的结果,满足规范需求
黑盒测试用到的测试方法有:等价类,边界值,判定表,正交法,场景法,错误猜测法等
2)白盒测试:又被称之为结果测试或者是逻辑驱动测试,检查程序内部的实现以及程序内部的执行状态是否符合预期,要从代码角度来发现问题;
3)灰盒测试:基于白盒测试和黑盒测试之间,既要关心输入和输出,又要关心程序内部的逻辑结构和内部结构
问题)已经有了灰盒测试,那么为什么还要进行使用白盒测试和黑盒测试呢?
1)灰盒测试没有白盒测试详细,完整
2)灰黑测试还没有黑盒测试产品覆盖范围那么广,因为黑盒测试是覆盖产品功能范围最广的测试,所以说灰盒测试是不能取代黑盒测试和白盒测试的
相关文章:

软件测试用例(3)
按照测试对象划分: 一)界面测试: 1)软件只是一种工具,软件和人的信息交流是通过界面来进行的,界面是软件和用户交流的最直接的一层,界面的设计决定了用户对于我们设计软件的第一映像,界面如同人的面孔,具有最吸引用户的…...

Spring——Bean管理-注解方式进行属性注入
Spring针对Bean管理中创建对象提供的注解有哪些?Component:普通Service:业务逻辑层Controller:controller层Repository:dao层用注解的方式是为什么?简化xml方式开发,只需要注解就可以完成在配置…...
【设计模式之美 设计原则与思想:设计原则】20 | 理论六:我为何说KISS、YAGNI原则看似简单,却经常被用错?
上几节课中,我们学习了经典的 SOLID 原则。今天,我们讲两个设计原则:KISS 原则和 YAGNI 原则。其中,KISS 原则比较经典,耳熟能详,但 YAGNI 你可能没怎么听过,不过它理解起来也不难。 理解这两个…...
Java代码弱点与修复之——Copy-paste error(复制粘贴错误)
弱点描述 Copy-paste error,复制粘贴错误。 是指在复制和粘贴代码时产生的错误。这种错误通常是由于程序员在复制代码时未正确编辑所复制的代码或编辑复制后的代码时忘记更改一些值或参数而导致的。复制粘贴错误可能会导致程序逻辑错误、编译错误或运行时错误。 示例代码 …...

Editor.md 的使用方法及图片处理
目录1. 资源下载2. 生成页面2.1 编辑和预览页面2.2 文本渲染页面3. 图片上传3.1 前端配置3.2 后端接口4. 图片粘贴[^2]1. 资源下载 官网下载 gitee 下载 2. 生成页面 2.1 编辑和预览页面 将资源(精简后 Editor.md 资源1)导入项目: 按照官…...
剑指 Offer II 018. 有效的回文
题目链接 剑指 Offer II 018. 有效的回文 easy 题目描述 给定一个字符串 s,验证 s是否是 回文串 ,只考虑字母和数字字符,可以忽略字母的大小写。 本题中,将空字符串定义为有效的 回文串 。 示例 1: 输入: s “A man, a plan, …...
Elasticsearch分析器(Analyzer)
Elasticsearch分析器(Analyzer) 文章目录Elasticsearch分析器(Analyzer)分析器概念内置分析器(8.6版本)自定义分析器elasticsearch-analysis-ik(简称ik,💕14.8kÿ…...
P6入门:了解P6 Professional 工具栏及地图分享
目录 引言 相关分享 引言 凭借更大的灵活性和增强的自定义功能,最新版本的 Oracle Primavera P6 Professional 的界面比早期版本有了巨大改进。对于有经验的伙伴来说,它仍然是熟悉的领域,几乎所有预期的功能都显示在前面。该界面可以更好地…...

习题30 if elif else 语句
people 30#变量people赋值30 cars 40#变量cars赋值40 buses 15#变量buses赋值 if cars > people:#如果出租车比人多print("We should take the cars")#我们坐出租车 elif cars < people:#elif后面必须跟条件,print("We should not take the…...

32 openEuler使用LVM管理硬盘-管理卷组
文章目录32 openEuler使用LVM管理硬盘-管理卷组32.1 创建卷组32.2 查看卷组32.3 修改卷组属性32.4 扩展卷组32.5 收缩卷组32.6 删除卷组32 openEuler使用LVM管理硬盘-管理卷组 32.1 创建卷组 可在root权限下通过vgcreate命令创建卷组。 vgcreate [option] vgname pvname ...…...

Jackson CVE-2017-17485 反序列化漏洞
0x00 前言 同CVE-2017-15095一样,是CVE-2017-7525黑名单绕过的漏洞,主要还是看一下绕过的调用链利用方式。 可以先看: Jackson 反序列化漏洞原理 或者直接看总结也可以: Jackson总结 涉及版本:2.8.10和2.9.x至2.…...

十大排序(C++版)
测试排序的题目: 912. 排序数组 - 力扣(LeetCode) 堕落的做法: class Solution { public:vector<int> sortArray(vector<int>& nums) {sort(nums.begin(),nums.end());return nums;} };视频推荐: …...

SpringMVC中的常用注解
Java知识点总结:想看的可以从这里进入 目录3.2、常用的注解3.2、常用的注解 Controller:代表此类是一个控制器,需要配置包的扫描。Spring MVC 是通过组件扫描机制查找应用中的控制器类的 在Spring6.0之后要求控制层必须添加该注解才会被识别成…...

English Learning - L2-3 英音地道语音语调 小元音 [ʌ] [ɒ] [ʊ] [ɪ] [ə] [e] 2023.02.27 周一
English Learning - L2-3 英音地道语音语调 小元音 [ʌ] [ɒ] [ʊ] [ɪ] [ə] [e] 2023.02.27 周一课前活动练习方法大小元音总结小元音准备工作[ʌ] 中元音发音技巧对应单词的发音对应句子的发音常见的字母组合[ɒ] 后元音发音技巧对应单词的发音对应句子的发音常见的字母组合…...

fastadmin后台登录页修改
直接替换就行 <!DOCTYPE html> <html lang"{$config.language}"> <head>{include file"common/meta" /}<style type"text/css">body {color: #999;background-color: #f1f4fd;background-size: cover;}a {color: #444;…...
Java 面向对象(OOP)的三大特性
封装 所谓封装,意思就是隐藏内部细节,在编程中,指利用抽象数据类型将数据和基于数据的操作封装在一起,使其构成一个不可分割的独立实体,并尽可能地隐藏内部的细节,只保留一些对外接口使之与外部发生联系。…...
Java:openjdk: error: Student is abstract; cannot be instantiated;java编译环境
文章目录编译环境jdkopenjdk错误代码小心javac -verbos编译环境 jdk 需要安装的javac 在java-devel 包里 [root10 ~]# rpm -qf /usr/bin/javac file /usr/bin/javac is not owned by any package [root10 ~]# ll /usr/bin/javac lrwxrwxrwx. 1 root root 23 Jun 15 09:52 /us…...
28个案例问题分析---019---临时解决方案和最终解决方案--思想
临时解决方案与最终解决方案一:背景介绍二:临时解决方案?最终解决方案?概念如何选择三:总结一:背景介绍 项目中,出现了一个线上问题。 用户登陆之后看不到课程。重新登陆就可以看到课程。出现这…...

计算机网络的166个概念你知道几个 第四部分
HTML:HTML 称为超文本标记语言,是一种标识性的语言。它包括一系列标签.通过这些标签可以将网络上的文档格式统一,使分散的 Internet 资源连接为一个逻辑整体。HTML 文本是由 HTML 命令组成的描述性文本,HTML 命令可以说…...

Lenovo 联想-IdeaPad-Y530电脑 Hackintosh 黑苹果efi引导文件
原文来源于黑果魏叔官网,转载需注明出处。硬件型号驱动情况主板联想-IdeaPad-Y530处理器Intel 酷睿2双核 T9400已驱动内存2GB已驱动硬盘2TB HP EX950 PCI-E Gen3 x4 NVMe SSD已驱动显卡NVIDIA GeForce 9300M GS无法驱动声卡Realtek ALC888无法驱动网卡RTL8168H Giga…...

铭豹扩展坞 USB转网口 突然无法识别解决方法
当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…...
MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例
一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...

Android15默认授权浮窗权限
我们经常有那种需求,客户需要定制的apk集成在ROM中,并且默认授予其【显示在其他应用的上层】权限,也就是我们常说的浮窗权限,那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...
【学习笔记】深入理解Java虚拟机学习笔记——第4章 虚拟机性能监控,故障处理工具
第2章 虚拟机性能监控,故障处理工具 4.1 概述 略 4.2 基础故障处理工具 4.2.1 jps:虚拟机进程状况工具 命令:jps [options] [hostid] 功能:本地虚拟机进程显示进程ID(与ps相同),可同时显示主类&#x…...

LINUX 69 FTP 客服管理系统 man 5 /etc/vsftpd/vsftpd.conf
FTP 客服管理系统 实现kefu123登录,不允许匿名访问,kefu只能访问/data/kefu目录,不能查看其他目录 创建账号密码 useradd kefu echo 123|passwd -stdin kefu [rootcode caozx26420]# echo 123|passwd --stdin kefu 更改用户 kefu 的密码…...

在Mathematica中实现Newton-Raphson迭代的收敛时间算法(一般三次多项式)
考察一般的三次多项式,以r为参数: p[z_, r_] : z^3 (r - 1) z - r; roots[r_] : z /. Solve[p[z, r] 0, z]; 此多项式的根为: 尽管看起来这个多项式是特殊的,其实一般的三次多项式都是可以通过线性变换化为这个形式…...
【SpringBoot自动化部署】
SpringBoot自动化部署方法 使用Jenkins进行持续集成与部署 Jenkins是最常用的自动化部署工具之一,能够实现代码拉取、构建、测试和部署的全流程自动化。 配置Jenkins任务时,需要添加Git仓库地址和凭证,设置构建触发器(如GitHub…...

Matlab实现任意伪彩色图像可视化显示
Matlab实现任意伪彩色图像可视化显示 1、灰度原始图像2、RGB彩色原始图像 在科研研究中,如何展示好看的实验结果图像非常重要!!! 1、灰度原始图像 灰度图像每个像素点只有一个数值,代表该点的亮度(或…...

归并排序:分治思想的高效排序
目录 基本原理 流程图解 实现方法 递归实现 非递归实现 演示过程 时间复杂度 基本原理 归并排序(Merge Sort)是一种基于分治思想的排序算法,由约翰冯诺伊曼在1945年提出。其核心思想包括: 分割(Divide):将待排序数组递归地分成两个子…...
算法刷题-回溯
今天给大家分享的还是一道关于dfs回溯的问题,对于这类问题大家还是要多刷和总结,总体难度还是偏大。 对于回溯问题有几个关键点: 1.首先对于这类回溯可以节点可以随机选择的问题,要做mian函数中循环调用dfs(i&#x…...