《软件测试-基础理论》- 输入处理和输出

简介: 《软件测试-基础理论》- 输入处理和输出


欢迎来学习本系列,基础理论比较枯燥,这也是为什么现在很少人掌握的主要原因。热饭尽量用浅显易懂 生动的例子 来帮助大家学习基础理论,所以请耐心看完此系列。

Part1前言


上节课我们明白了三大概念,功能-非功能-接口,本节课我们就要先从【功能】这个大概念上继续细分。


那么这个【功能】,和你现在脑子里理解的功能测试 是一回事么?


首先,我们要明白一个基础道理,就是:


测试理论和流程,不是线性顺下来的,而是一个多维的立体网状结构。


为什么要这么说呢?大家都是做过测试的,一定记得一个基本理论:【测试阶段分为:单元测试-集成测试-系统测试】 这个理论,和我们讲的这个 【功非接】它们就不是一条线串联的,而是融合在一起的,没有谁先谁后。


比如,在集成测试阶段,同样包含功能-非功能等测试点。而在【功能】中,同样可以分为单元测试、集成测试、系统测试三个阶段应用。


再比如,众所周知的判定表和等价类和正交,他们之间也是错综复杂的关系,你很难说清某个用例是属于等价类的,还是判定表的。


这样,测试基本理论的复杂度就瞬间升,这也是为什么不同公司,不同部门的测试流程都不一样,每个领导都有自己的一套打法的原因。因为测试理论本就不是一套固化思维的死理论,它千变万化,非融会贯通之人,是无法理解的。


不过大家不用担心,也不用现在就着急弄明白这些复杂的穿插结构,我会在之后的篇章中一点点细讲。本节你只要明白:


功能 = 多个阶段 ✖️(输入+处理+输出)

即可。


Part2输入处理和输出


输入处理和输出,指任何功能的实现的三个过程。这三个过程,都要进行测试。

比如:登录功能


这是面试中最常见的题,但是却可以考几乎所有的知识点,看似简单,却博大精深,就像书法里的“永”字一样,人家一看你写个永字,就知道你的书法水准了,所以才有著名的“永字八法”。


在我们测试面试中,登录功能 就是这个 【永】 字。


拿过来套上【输入处理输出】这三个过程来看。


【输入过程】:就是你输入用户名,密码,验证码,点击登录按钮 的过程。这个过程你必须进行测试,这没错。


【处理过程】:就是服务器的部分了,涉及具体的后台函数,中间件等测试。


【输出过程】:就是最终用户看到的界面反馈,是登录成功还是失败,失败提示,页面跳转等测试。


几乎任何复杂的功能,拆分后,每一个最小功能单位,都包含这么三部分。这么看,感觉测试还是挺简单的,很好理解。但是我还没有说完。


这三个过程,如果你只考虑上面我说的部分,那就是测试不全面了。当然你可以发散思维,说输入过程,还有测试一下接口的入参啊等等。但是无论你怎么去想新的测试点,在没有一个标准分类下,都太脆弱和不可靠了。


所以我们接下来要学习新的一个小理论:【界面可见/不可见

这个就是所谓的三个过程的继续细分的俩种情况。


Part3界面可见/不可见


在上面每个过程中,尤其是输入和输出部分,所有的测试点都可以用可见和不可见来区分成俩大情况。


还是接着上面的登录功能来讲解。


1【输入过程】:


【界面可见】:输入的用户名,密码,验证码,是否勾选协议,登录按钮等。


【界面不可见】:登录时候的时间日期,地址ip,安全环境监测,物理设备号,从客户端本地配置文件/缓存拿的数据如头像等等。


无论是可见还是不可见,我们要通过测试确保,这些参数字段成功的生成了请求体,组成了正确的接口请求,才算ok。


2【处理过程】:


【可见】:服务端的函数代码,具体的算法等测试,此时可以应用到白盒测试手段。


【不可见】:其他外链引用,其他服务函数调用,第三方组件代码,第三方服务等,我们直接看不到的处理过程。


3【输出过程】:


【界面可见】:用户看到的登录成功动作(跳转到个人信息页,看到自己的昵称等),登录失败提示框,登录失败动作(比如密码输入框自动清空,验证码重置等),页面跳转等可见情况。


【界面不可见】:接口返回的一切参数比如错误码等。缓存,数据库中存储的各个数据字段,客户端本地的配置/缓存文件上的信息等等。


当我们把一切可见不可见的的都测试过,这个功能的测试点才会真正达到完全覆盖。

好了。我们今天的内容就到此为止了。

相关文章
竞赛详解(编程基础之输入输出)
竞赛详解(编程基础之输入输出)
带你读《计算思维导论实验 与习题指导》之一:初识计算思维
本书围绕《计算思维导论》主教材,设计了13个实验,并针对前8章内容设计了习题,包括单选题、多选题、填空题、判断题等。通过实验和习题,能帮助学生:了解计算思维的概念和计算机发展简史;理解进制转换、字符编码和中文编码等相关知识,掌握数制转换的方法和口诀;了解计算机硬件并学会配置与组装计算机,同时能够对简单故障进行判断和排除;掌握上网浏览、查询资料、收发电子邮件等信息时代的必备知识,同时学会局域网的搭建、WWW和FTP服务器的构建;掌握利用Access创建数据库的方法,并能初步设计与管理数据库;掌握命题符号化方法,以及基本的推理理论,并能利用真值表、等值演算等方法进行简单的逻辑推理等能力。
|
3月前
|
人工智能
AI软件开发大模型,最简单的相关构思,有提问的输入框,有返回答案的答案框
AI软件开发大模型,最简单的相关构思,有提问的输入框,有返回答案的答案框
|
5月前
|
安全 网络协议 网络安全
【答案】2023年国赛信息安全管理与评估正式赛答案-模块3 理论技能
【答案】2023年国赛信息安全管理与评估正式赛答案-模块3 理论技能
|
5月前
|
存储 Python
命令参数:编程输入之道
命令参数:编程输入之道
|
5月前
|
安全 网络协议 网络安全
【答案】2023年国赛信息安全管理与评估理论技能答案三阶段
【答案】2023年国赛信息安全管理与评估理论技能答案三阶段
|
10月前
|
存储 人工智能 测试技术
软件测试/人工智能|教你轻松掌握Python输入与输出
软件测试/人工智能|教你轻松掌握Python输入与输出
52 0
|
测试技术
软件测试用例经典方法 | 因果图法及案例
典型的黑盒测试用例设计方法包括等价类划分法、边界值分析法、决策表法、因果图法等。 如果程序的输入条件之间相互存在联系,那么就会使情况变得复杂,因为要检查输入条件的组合情况并不是一件容易的事情,即使把所有输入条件划分为等价类,它们之间的组合情况也相当多,难以分析。因此,必须考虑采用因果图法,这种方法可以针对多种条件组合、产生多个动作的情况来设计测试用例。
520 0
软件测试用例经典方法 | 因果图法及案例
|
自然语言处理 程序员 编译器
Python编程基础:实验4——组合数据的综合实验
Python编程基础:实验4——组合数据的综合实验代码练习
409 0
Python编程基础:实验4——组合数据的综合实验
|
Perl
马知恩周义仓编常微分方程定性与稳定性方法部分习题参考解答
第一章    基本定理   1设有 $$\bex \frac{\rd \bbx}{\rd t}=\bbf(t,\bbx),\quad \bbx(t_0)=\bbx^0,\quad (t_0,\bbx^0)\in \bbR\times \bbR^n.
4872 0

相关实验场景

更多