Python 就业方向之测试基础

Python 就业方向之测试基础

python 发展方向
	​	1.人工智能
	
	​	2.科学计算+数据处理+爬虫
	
	​	3.python自动化:自动化运维,自动化测试
	
	​	4.web开发
什么是自动化
	python自动化就是使用python语言来编写脚本或者平台(自动化测试平台->devops),实现公司中重复业务的自动化流程 大体方向分为
	
	​	python自动化测试
	
	​	python自动化运维
为什么自动化选择了python
	​	python的强大的第三方库 为很多自动化流程提供的快捷方式
	
	​	python 强大的兼容性获得了开发者的青睐
	
	​	python简洁的语法喝简便的编码使得快速开发和迭代成为可能
	
	​	python的科学计算和文本处理能力,解脱公司的繁琐重复的劳动力

2.软件测试概述

1.软件测试与需求

定义:
1.软件测试定义:
	在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程
	(1)规定的条件
	(2)目的:发现程序错误。衡量软件质量
2.通俗定义
	软件测试是一种实际输出与预期输出之间的审核或者比较过程
	设计过程当中:预期结果 --  实际输出
	
需求
	测试是保证实际输出与预期输出之间的审核或比较过程,及时发现软件bug与缺陷 ,避免项目上线由于bug给公司带来损失

开发与测试

在开发的过程中,开发人员会对自己开发的功能进行简单的测试,但不会让开发完成对软件的整个测试,可能有几方面的原因
	思维定式
	测试力度不够
	关注度不足
2.软件分类

根据应用场景分类:

工具类软件,游戏型软件,媒体型软件,电商型软件等

根据软件架构分类

单机版软件,分布式软件

单机版软件

office,红警等

分布式软件

客户端需安装专门软件,如QQ 微信等

C/S架构软件

客户端需安装专门软件 如qq  微信等

B/S架构软件

客户端为浏览器,如百度,hao123等

CS架构

c -->client
s -->server

3.软件开发模型与生命周期

软件开发模型
	1.瀑布模型

​	2.快速原型模型

​	3.螺旋模型

​	注意:软件测试与软件的开发模式有着紧密的联系,作为一名测试人员,应该充分理解软件的开发模式,以便找准自己在其中的位置,从而发挥自身的价值
瀑布模型

瀑布模型的特点

1.是线性模型的一种,每一个阶段只执行一次
2.文档驱动
可行性研发报告  需求规格说明书   概要设计文档  详细设计文档      程序        测试报告
可研与计划   > 需求分析       >概要设计     >详细设计>编码   >软件测试    >运行维护
瀑布模型的优缺点
优点:

​开发的各个阶段比较清晰,当前阶段完成后,只需关注后续阶段

​不响应需求的文化

​风险往往延至后期才显露,失去及早纠正的机会
快速原型模型
在开发真实系统之前,构造一个原型,在该原型的基础上,逐渐完成整个系统的开发工作
特点:
	快速的构建软件的原型
	支持用户参与
	
优点:
	优点:克服瀑布模型的缺点,减少由于软件需求不明确等来的项目开发风险
缺点:不适合大型系统的开发(适合开发小型的、灵活性高的系统)
螺旋模型
螺旋模型
特点:引进了风险分析活动
优缺点:
	优点:螺旋模型很大程度上是一种风险驱动的方法体系
	缺点:采用螺旋模型需要具有相当丰富的风险评估经验和专门知识
	

测试模型

v 模型
w(双V模型)
v模型
v模型介绍:
	v模型是最具有代表意义的测试模型,最早是有Paul Rook在20世纪80年代后期提出,由英国国家计算机中心文献中发布,旨在改进软件开发的效率和效果
	v 模型本身是软件开发中瀑布模型的变种,它反映了测试活动与分析和设计的关系
	v模型标明了测试过程中本身存在的不同阶段,从左到右,描述了开发过程和测试过程间的阶段对应关系
v模型的优缺点:
	优点:测试v模型既包含了底层测试又包含了高层测试;
	缺点:当需求变更时将会导致返工量非常大,模型灵活性比较低
	
	
	
	
需求分析                           		验收测试
	   
	   概要设计					系统测试
			 
             详细设计    集成测试
					
					编码 单元测试
w模型
w模型介绍:
	测试伴随着整个软件开发周期 并且测试的对象不仅仅是程序  需求和设计同样要测试

w模型的优缺点
	优点:1.强调测试伴随着整个软件开发周期,而且测试的对象不仅仅是程序 还包括需求和设计
		2.更早地介入测试 能尽早得发现缺陷进行修复
	缺点:对于测试技术要求高,实践起来困难
质量模型
软件质量 就是软件与明确地和隐含地定义的需求相一致的程度
ISO 9126软件质量模型是评价软件质量的国际标准,这个模型是软件质量标准的核心,对于大部分的软件, 都可以考虑从这这6个特性和27个子特性去测试、评价一个软件。

软件测试分类

按测试阶段划分为 :单元测试 、集成测试、系统测试、验收测试
按是否覆盖源代码分为:黑盒测试、白盒测试、灰盒测试
按是否运行分为:静态测试、动态测试
按是否自动化分为:人工测试、自动测试
按其他分为:冒烟测试、回归测试、随机测试、探索测试

按测试阶段划分

单元测试:
	又称模块测试,针对软件设计中的最小单位-程序模块,进行正确性检查的测试工作,单元测试需要从程序内部结构出发设计测试用例。多个模块可以平行地独立进行单元测试
	单元定义:c中指一个函数,java中指一个类

继承测试

又叫组装测试,通常在单元测试的基础上,将所有程序模块进行 有序的。递增的测试

系统测试

系统测试,指的是将整个软件系统看为一个整体进行测试,测试的依据是软件需求说明书

验收测试

验收测试,用来校验软件是否符合用户需求的测试
验收测试又细分为以下分类:
	α测试:
	Alpha 是内测版本 
	通常只在软件开发者内部交流 
	一般而言, 该版本软件的bug较多,普通用户最好不要安装
	β测试:
    	Beta是公测版本,是对所有用户开放的测试版本 
	这一版本通常由软件公司免费发布, 用户可从相关的站点下载 
	通过一些专业爱好者的测试, 将结果反馈给开发者, 开发者们再进行有针对性的修改
	γ测试:
	   Gamma版本,指的是软件版本正式发行的候选版。该版本已经相当成熟了, 与即将发行的正式版相差无几, 成为正式发布的候选版本

黑盒测试

又称数据驱动测试,完全不考虑程序内部结构和内部特征,注重于测试软件的功能需求,只关心软件的输入数据和输出数据

白盒测试

白盒测试指的是把盒子打开,去研究里面的源代码和程序结构

灰盒测试

灰盒测试,是介于白盒与黑盒测试之间的一种测试。不仅关注输出。输入的正确性。同时也关注程序内部的情况

静态测试

指不实际运行被测软件,而只是静态地检查程序代码。界面或文档中可能存在的错误过程

动态测试

指实际运行被测程序,输入相应的测试数据,检查实际输出结果和预期结果是否相符的过程。

人工测试

也叫手工测试,测试人员手动去进行的测试

自动化测试

利用代码或工具帮助人工进行测试
冒烟测试:冒烟测试就是对系统进行最基本功能的测试,保证基本的功能和流程能走通
回归测试:当修复一个BUG后,把之前的测试用例在新的代码下进行再次测试
随机测试:随机测试主要是对被测软件的一些重要功能进行复测,也包括测试那些当前的测试用例没有覆盖到的部分
探索性测试:探索性测试意味着同时设计测试和执行测试,测试人员通过测试来不断学习被测系统
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值