陈同学与测试

陈同学与测试的目录

要找工作了,学了点东西

一、计算机的组成

硬件系统
硬件主要分为主机和外设两部分,都是指构成计算机的物理实体,主要有电子器件和机电装置组成。
运算器,控制器统称中央处理器:负责数据的算数运算和逻辑运算,即数据的加工处理。是整个计算机的中枢神经,分析程序规定的控制信息,并根据程序要求进行控制,协调计算机各部分组件工作及内存与外设的访问。
存储器:实现记忆功能的部件,用来存储程序、数据和各种信号、命令等信息,并在需要时提供这些信息,内存(rom只读存储器;ram随机存储器;断电数据会消失)外存(硬盘、软盘AB、光盘)
输入设备:实现将程序、原始数据、文字、字符、控制命令或者现场采集的数据等信息输入到计算机。
输出设备:实现将计算机处理生成的中间结果或最后结果(各种数据符号及文字各种控制信号等信息)输出出来。
软件系统
操作系统分类
操作系统的主要作用是管理还硬件设备
1、桌面操作系统
Windiws系列:用户群体大
macOS: 适合开发人员
Linux: 应用软件少
2、服务器操作系统
Linux: 安全稳定免费、占有率高
windows server:付费、占有率低
3、嵌入式操作系统
4、移动设备操作系统:ios、安卓
B/S架构与C/S架构
B/S:
Browser-Server,浏览器和服务器架构。包含客户端浏览器、web应用服务器、数据库服务器的软件系统。用户只需要一个浏览器就可以访问服务,系统更新时更新服务端,不需要更新浏览器(淘宝、百度)
C/S:
Client-Server,客户机与服务器结构。这种结构与B/S最显著的区别是需要安装客户端,通过客户端访问系统,更新时,客户端服务端都需要更新(微信、QQ音乐)
B/S与C/S的区别
1、硬件环境不同:c/s
2、安全要求不同
3、系统维护不同
4、处理问题不同
二进制
1、用0和1两个数码表示的数,基数是2,逢二进一。计算机内信息表示的形式是二进制数字编码,各类信息必须转换成二进制才能在计算机内处理
2、逻辑电路通常只有两个状态0和1
常见的存储单位
1B=8b
1kb=1024B
1MB=1024kb
1G=1024MB
1TB=1024GB
1PB=1024TB
计算机指令系统
是一种指令集的体系,这种指令通常称为机器码,机器语言,是CPU可以直接读的数据;就是计算机程序是cpu处理的二进制数
计算机语言
机器语言:0和1组成的二进制数
汇编语言:
高级语言:C++、java等
计算机网络七层模型
1、应用层:所有应用程序的网络在此展开
2、表示层:表示数据形式、完成对传输数据的转化(数据加密解密)
3、会话层:负责建立、维护、拆除会话(session缓存)
4、传输层:负责建立一个可靠的端到端的链接
5、网络层:负责路由寻址和广播
6、数据链路层:负责将上层数据封装成帧
7、物理层:负责01二进制比特流
TCP/IP协议
定义:网络通讯协议
1、应用层:应用层需之间的相互沟通层
2、传输层:提供数据送达,应用程序之间的通信服务
3、网络互连层:负责提供基本的数据封包传送功能,让每一块数据包都能送达主机
4、网络接口层:接收数据并进行传输
IP地址
ip地址是指互联网协议地址,ip地址是ip协议提供的一种统一的地址格式,他为互联网每一个网络每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。
ipv4地址:4段数字组成(已经使用枯竭)
ipv6地址:6段数字组成(沙子都能分配)
1、A类 第一组数是1到126
2、B类第一组数是128到191
3、C类 第一组数是192到223
常用dos命令
win+r打开运行窗口,输入cmd打开命令窗口
1、ipconfig/all 回车
物理地址
2、arp-a 注意2个空格再回车
ip地址和物理地址(MAC)的对应关系
3、ping www.itcast.cn 回车
查看目标主机连通状态TTL
4、cls清屏
5、切换盘符:盘符:
6、进入文件夹:cd 文件夹名字
7、返回上级目录:cd…
8、返回根目录:cd/
9、建立文件夹:md 名字
10、显示文件目录: dir
11、删除目录:rd名字 不能删除有内容的文件夹
12、复制文件:copy 要复制的路径文件名 目标路径
13、删除文件:del文件路径名字 注意:如果只写目录会删除该目录所有文件
14、删除文件夹所有文件:del*.*
15、格式化:format:盘符
**网站上线条件:**网页代码、域名、服务器
网址、域名
域名就是我们常见的网址,就像家的门牌号
中国著名域名提供商:
万网:www.net.cn
新网:www.xinnet.com
西部数码:www.west.263.com

二、测试基础

1.什么是软件测试/strong>
在规定的条件下对软件进行操作,从而发现错误,对软件质量进行评估的一个过程。
软件测试定义:用人工和自动手段运行程序,目的在于检验是否满足需求
2、软件测试的目的
想以最小的人力物力和时间找出软件中潜在的各种错误和缺陷,通过修正各种错误和缺陷提高软件质量,回避软件发布后潜在的软件缺陷和·错误造成的隐患以及带来的商业风险。
3、软件测试的原则
1)所有的测试都应追溯到用户需求
2)应当把尽早和不断测试当座右铭
3)测试工作应有独立的专业测试机构来完成
4)Pareto原则,测试发现的错误中80%很可能来自20%的模块
6)设计测试用例时应考虑各种情况
7)制定严格的测试计划
8)完全测试是不可能的,测试需要终止
9)注意回归测试的关联性
10)妥善保存一切测试文档
4、软件质量模型(ISO/IEC)
软件产品质量模型对产品设计时需要考虑的地方进行高度概括
六大特性:
1)功能性:是指软件产品在指定的条件下使用时,提供满足明确隐含要求的功能的能力
2)可靠性:是指在特定条件下使用时,软件产品维持规定的性能级别能力;第一层:设备最好不要出现故障;第二层:设备出现了故障不要影响主要的功能和业务;第三层:如果影响了主要的功能和业务,系统可以尽快的定位并恢复
3)易用性:是指用户在规定的条件下使用软件产品时,产品被用户理解、使用、吸引用户的能力
4)效率:是指在规定的条件下,相对于所有资源的数量,软件产品课提供适量的性能能力
5)可维持性:是指产品的修改能力,这里的修改是指纠正改进软件产品和软件产品对环境、功能规格的变化的适应性
6)可移植性:是指软件产品从一个环境到另一个环境的能力,环境是指硬件软件或组织等
5、软件质量模型保证(SQA)
软件质量保证是建立一套有计划、有系统的方法,来向管理层保证拟定出的标准、步骤、实践和方法能够正确地被所有项目给采用,软件质量保证的目的是是软件过程对管理人员是可见的。。它通过对软件产品和活动进行评审和审计来验证软件是合乎标准的。软件质量保证组在项目一开始就参与建立计划,标准和过程,这使软件项目满足机构方针的要求。
软件质量模型保证基本目标
1)软件质量保证工作是由计划进行的
2)客观验证软件项目产品和工作是否遵循恰当的标准、步骤和需求
3)将软件质量保证工作及结果通知给相关组别和个人
4) 高级管理层接触到在项目内部不能结局的不符合类问题
5)软件质量需要全面的测试工作来保证
QC:检验产品的质量
QA:审计过程的质量
QC:进行质量控制,向管理层反馈质量信息
6、软件测试流程
1)需求分析
2) 编写测试用例、
3)评审测试用例
4)搭建测试环境
5)等待开发提交测试包‘
6)部署测试包
7)冒烟测试(对软件基本功能进行进本测试)
8)执行测试用例
9)BUG个跟踪处理(提交及回归BUG)
10) N论之后符合要求
11)测试结束

web前端小知识

Web前端标准
web前端技术不是指某一项技术,而是一系列技术集合,主要包括:
html–结构标准,负责网页结构的搭建
css–样式标准/表现标准,负责网页美化工作
js–行为标准,负责网页行为动作

www:万维网
URL:统一资源定位器(网络地址)

测试理论

**按测试阶段分类:**单元测试、集成测试、系统测试、验收测试
**按是否覆盖源代码测试:**白盒测试、黑盒测试、灰盒测试
按是否运行进行测试:静态测试、动态测试
按是否自动化测试;人工和自动化测试
还有:冒烟测试、随机测试、回归测试、探索测试
单元测试:
又叫模块测试,针对软件设计的最小单元-程序模块,进行正确性检查的测试工作,单元测试需要从程序内部出发设计测试用例。多个模块可以平行的进行单元测试,单元是指C中的一个函数
集成测试
又叫组装测试,在单元测试的基础上,将所有程序模块进行有序地,递增的测试,重点测试不同模块的接口部分
系统测试
是指将整个软件系统看为一个整体进行测试,测试的依据是软件需求书明书
验收测试
检验软件是否符合客户需求的测试
α测试
β测试
γ测试
**按是否覆盖源代码测试:**白盒测试、黑盒测试、灰盒测试
黑盒测试
又称数据驱动测试,完全不考虑程序内部结构和内部特性,注重软件测试的功能需求,只关心软件的输入数据和输出数据
白盒测试
灰盒测试
介于白盒测试与黑盒测试之间的一种测试,灰盒测试多用于集成阶段测试,不仅关注输出输入的正确性,同时也关注程序内部情况

冒烟测试就是对系统进行最基本功能的测试保证基本的功能和流程能走通
回归测试:修复完一个bug后,把之前的测试用例在新的代码下进行再次测试’
随机测试:随机测试主要是对被测软件的一些主要功能进行复测,也包括那些当前的测试用例没有覆盖到的部分
探索性测试:探索性测试意味着同时设计测试和执行测试,测试人员通过测试来不断学习被测系统
软件质量模型
软件质量,就是软件与明确的隐含的定义得需求相一致得程度
ISO 9126软件质量模型是评价软件质量的国际标准,这个模型是软件质量标准的核心,对于大部分软件,都可以考虑从这6个特性和27个子特性去测试,评价一下软件

软件开发过程模型

软件开发过程模型用来描述和表示一个复杂的过程
1、瀑布模型
2、快速原型模型
3、螺旋模型
瀑布模型
需求分析->概要设计->详细设计->编码->软件测试->软件维护
特点:1)是线性模型的一种,在所有模型中占有重要地位,是所有其他模型的一个基础。2)每个阶段执行一次,文档驱动,按线性顺序进行软件开发
优点:1)开发的各个阶段比较清晰。2)当前一个阶段完成后,只需关注后续阶段
快速原型模型
快速分析-需求说明-构造原型-原型-运行原型-评价原型-修改意见
特点:1)快速构建软件原型,2)支持用户参与
优点:克服瀑布模型的缺点,更好地满足用户需求并减少软件需求不明带来的的项目开发风险
缺点:不适合大型系统开发
螺旋模型
特点:引进了风险分析活动
优点:很大程度上是一种风险驱动的方法体系
缺点:采用螺旋模型需要有相当丰富的风险评估经验和专门知识

测试过程模型

1、V模型
需求分析->概要设计->详细设计->编码->单元测试->集成测试->系统测试->验收测试
优点:测试V模型既包含了底层测试,又包含了高层测试
缺点:当需求变更时将会导致阶段反复,返工量非常大,模型灵活地降低
2、W模型
需求分析-概要设计-详细设计-编码-集成-实施-交互
验收系统设计-集成测试设计-单元测试设计-单元测试-集成测试-系统测试-验收测试
优点:1)强调测试伴随着整个软件开发的周期,而且测试的对象不仅仅是程序,需求和概要设计同样要测试。2)更早的介入测试,可以发现开发初期的缺陷,那么可以用更低的成本进行缺陷修复
缺点:使用起来技术复杂度高,对于需求和设计的测试要求高,实践起来困难

测试用例

测试用例定义:测试用例是为特定的目的而设计的一组测试输入、执行条件和预期结果的文档
**测试用例八大要素:**用例编号、用例标题、测试项目、用例级别、预置条件、测试输入·、执行步骤、预期结果

测试用例设计分方法

等价类划分法:
概念:在所有测试的数据中,具有某种共同特征的数据子集
分为有效等价类(满足需求的)和无效等价类(不满足需求的)
等价类操作步骤:
1、明确需求
2、确定有效和无效等价类
3、编写测试用例
边界值分析法
边界范围:
1、确定边界情况(输入或输出等价类的边界)
2、选取正好等于、刚刚好大于或刚刚好小于边界值作为测试数据
3、上点:边界上的点正好等于;离点;距离上点最近的点;内点:范围内的点
边界值划分法:
上点:处于边界上的点
离点:离上点最近的点
内点:范围内的点
开区间、闭区间
[开始值,结束值]-闭区间包含开始值包含结束值
(开始值,结束值)-开区间不包含开始值不包含结束值
边界值分析法测试用例设计步骤:
1、明确需求
2、确定有效和无效等价类
3、确定边界值
4、编写测试用例
判定表法
判定表的四个组成部分:
条件桩:列出了系统的所有输入,列出的输入次序无关紧要
动作桩:列出了系统可能采取的操作,这些操作的排列顺序没有约束
条件项:列出对他左列输入的取值,在所有可能情况下的真假值
动作项:列出输入项的各种取值情况的动作
判定表中贯穿条件项的一列就是一条规则
判定表设计步骤:
1、明确需求
2、画出判定表。1)明确条件桩、动作桩;2)填写条件项,对条件进行全组合;3)明确每个条件组合对应的动作项
3、生成测试用例,判定每条规则对应的测试用例
因果图法
因果图法的核心:
因果图的”因“—输入条件
因果图的”果“—输出结果
什么是因果图br> 用图解的方法表示输入的各种关系,写出判定表,从而设计相应的测试用例
适用范围:适用于分析程序输入条件的各种组合情况,以及输入与输出之间的依赖关系
因果图中C表示原因,E表示结果
因果图法基本步骤:
1、明确需求
2、画出因果图
3、将因果图转化为判定表
正交法
定义:正交排列法就是能够使最小的测试过程集合获得最大的测试覆盖率
适用于:输入数据或输入数据组合很大的情况
特点:均匀分散、齐整可比
概念:一种特制的表,一般的正交表记为$ L_n(m^k) $
n表示行数,k表示列数,m是列的取值个数
$ L_9(3^4) $ 4个列。每个列有3个取值,9为列的组合数、叫4因素3水平
设计步骤:
1、明确需求
2、画出正交表
1)确定需求中因素数(所有的输入)与对应的水平数(输入的取值)
2)根据因素数水平数选取正交表
3)用需求中的文字代表正交表中的字母
3、写出测试用例
场景法
定义:场景法是用流程图描述用户的使用场景,然后通过覆盖流程路径来设计测试用例
意义:用户角度:用户平时使用不是单功能的,而是多个功能组合在一起的
测试人员角度:平时测试都是单个功能测试,容易忽略多个功能组合测试
场景法设计测试用例步骤:
1、明确需求
2、画出流程图
3、编写测试用例
错误推断法
错误推断法是指利用直觉和经验猜测出出错的可能类型,有针对的列举出程序中所有可能出现的错误和容易发生错误的情况,他是测试经验丰富的测试人员喜欢使用的测试用例设计方法
适用范围:1)项目紧急任务、时间不够,这时就不按部就班,可以根据之前的经验,找到之前错过的类似模块进行重点测试。2)所有正常测试结束后,通过错误推断法再测试一些之前出现过的类似问题的模块

软件缺陷

软件缺陷的定义:软件或程序中存在的各种各样的问题
软件缺陷判定标准:
1、软件未达到需求规格说明书标明的功能
2、软件出现了需求规格说明书指明不会出现错误的地方
3、软件的功能超出了需求规格说明书指明的范围
4、软件出现了需求规格说明书虽未指明,而应达到的目标
5、软件测试人员认为软件难以理解,不易使用,运行速度慢,或者最终用户体验 不好
软件缺陷产生的原因:
1、需求解释,记录或者定义错误
2、设计文档说明存在错误或者拼写错误
3、编码说明、程序代码有误
4、硬件或者软件系统上存在错误
软件缺陷产生的根源:
需求变更、交流不充分、软件的复杂性、进度压力
缺陷信息:
缺陷编号
缺陷状态:new-新建 ,open-打开, reopen-关闭的缺陷重新打开,fixed-修复closed-关闭,rejected-拒绝,postpone-拖延
缺陷标题
严重程度:5-critical-最高优先级,4-veryhight-非常高优先级,3-hight-高,2-medium-中,1-low
优先级:5-urgent-最高,4-veryhight-非常高,3-hight-高,2-medium-中,1-low
所属模块
缺陷的详细秒速
缺陷报告注意事项
缺陷报告不能有缺陷
表述和描述简洁,准确
一个缺陷一个报告
缺陷一定是可以重现的
避免出现模糊词汇
不能由个人感情色彩
出现bug过程一定要详细
缺陷跟踪流程
new新建状态
提交一个缺陷,首先就是新建状态
open打开状态
确认缺陷有效后,为打开状态
fixed修复状态
由于缺陷处理人,把缺陷处理完后设置为修复状态
closed关闭状态
验证缺陷确实修复成功,一般由缺陷发起人设置状态为关闭
reopen重新打开状态
一个已经关闭的缺陷再次出现,就要设置为重新打开状态
缺陷分析需要注意点
哪个模块问题最多
那个工程师测试的问题最多
各类缺陷数量占比
开发是否可以及时修复缺陷
开发人员一次修复缺陷占比
软件是否可以正常发布

文章知识点与官方知识档案匹配,可进一步学习相关知识Python入门技能树首页概览210415 人正在系统学习中

来源:J J C

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年8月12日
下一篇 2022年8月12日

相关推荐