《《接口自动化测试开发实战》教程教案.docx》由会员分享,可在线阅读,更多相关《《接口自动化测试开发实战》教程教案.docx(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、章节编号:第一章:接口测试基础内容简介:测试岗位诞生以来,测试工程师就被赋予了重要的使命。为产品质量把关, 为用户负责是每个测试工程师的责任。随着软件复杂度的不断提高,测试工作也 面临了更多的挑战,传统的测试手段已不能满足现有的测试需求。分层自动化测试这一概念自提出以来,得到了大量测试工程师的认可,其中对于 接口测试的探索和实践,也让各大IT公司收益颇多。本章将从软件测试基础理论 出发,引出接口测试这一重要的手段,让读者充分理解相关概念。学习目标:(1)掌握软件测试的核心理论。(2)理解分层自动化测试的原理和意义。(3)熟知软件接口的定义。(4)理解接口测试的价值和基本流程。知识点一:软件测试
2、基础内容列表:(1)理解软件测试的定义。(2) 了解软件测试的开展历史和方向。(3)理解缺陷的定义和分类。(4)掌握常见的软件质量模型。(5)掌握软件测试常见专业术语。问题列表:(1)什么是软件测试?分别用狭义和广义来阐述。(2)软件测试岗位的开展前景是怎样的?(3)缺陷有哪些常见名称?区别是什么?(4)介绍ISO质量模型的几大特性?授课要点:(1)重点阐述软件测试和软件开发的区别。(2)软件测试不同开展方向所需要具备的技能。(3)缺陷不同的专业术语所对应的严重程度。(4)举例解释ISO的各大特性和子特性。课后任务:(1)任意找到一个网站,利用ISO模型描述要关注的具体方面。(2)对上述网站整
3、理出10个缺陷。知识点二:理解接口内容列表:(1)理解接口的定义。(2)理解API的含义。问题列表:(1)什么是接口?生活中有哪些接口?(2)熟悉过哪些API?(3)网银支付是不是接口?授课要点:(1)用生活中的例子(比方插座、USB等)来解释接口。(2)把接口的定义落地到IT系统中,让人理解万物皆接口的意义。(3)用一个API的例子身临其境的访问接口。课后任务:(1)描述生活中5个接口的例子。(2)在网上查找火车站时刻表的接口,并尝试访问。知识点三:分层自动化测试内容列表:(1)分层自动化模型。章节编号:第六章:接口级性能测试内容简介:性能测试是一个非常庞大的体系,牵涉到的技术面之广,技术复
4、杂度之高,受影 响的因素之多,绝不是本书可以完全覆盖到的。本书更多关注在性能测试的脚本 开发以及笔者的一些实践经验提供,算是抛砖引玉,从一些不同的视角对基于协 议的性能测试核心技术、原理及认知进行阐述。学习目标:(1)充分理解性能测试的核心原理和技术体系。(2)充分理解性能测试的关注点和实施方法。(3)熟练掌握Python+Locust工具的结合应用。(4)熟悉系统资源的监控手段。知识点一:性能测试核心知识内容列表:(15)理解性能测试的核心原理。(16)理解性能测试的场景设计。(17)理解性能测试的指标体系。问题列表:(19)性能测试的核心原理有哪些?(20)常见的性能测试场景有哪些?(21
5、)列出性能测试所需要关注的指标?(22)性能测试结果分析的步骤是怎样的?授课要点:(13)性能测试的概念是什么?(14)用图表解释性能测试的核心原理。(15)阐述性能测试的门型和拱型场景。(16)阐述各种性能指标的意义?课后任务:(8)用图表画出性能测试的核心流程,并指明每个结点的关键任务。知识点二:基于Locust的性能测试内容列表:(8) 了解Locust工具的介绍。(9)掌握Locust工具的使用步骤。(10)掌握Locust库常用的方法。问题列表:(8) Locust工具的作用是什么?(9)什么是task?(10) Locust测试后的结果中包含哪些数据?(11) Locust中如何进
6、行断言?授课要点:(5)列出Locust的常见方法。(6)使用Locust操作整个测试流程。课后任务:(3)使用Python结合Locust编写性能代码,执行后统计结果,并进行基本分析。知识点三:性能指标监控内容列表:(4)理解系统指标的种类。(5)掌握Windows自带工具监控系统指标的步骤。(6)掌握Linux自带工具监控系统指标的步骤。(7)掌握psutil的常用方法。问题列表:(5)系统指标和业务指标个有哪些?(6) CPU的作用是什么?(7)内存的作用是什么?(8) Windows中有什么工具可以监控CPU和内存?(9) Psutil库可以监控哪些指标?授课要点:(4)重点讲解CPU
7、、内存、硬盘等指标的意义。(5)演示Windows和Linux监控指标的方法。(6)代码演示psutil的基本使用。课后任务:(2)使用Windows和Linux工具分别监控系统指标。(3)应用psutil监控系统指标,并利用文件读写技术自动写入到一个文件中。(2)界面测试的概念。(3)接口测试的概念。(4)单元测试的概念。问题列表:(1)为什么要分层自动化测试?优势是什么?(2)接口测试和单元测试的区别是什么?授课要点:(1)重点讲解分层自动化测试的意义。(2)比拟接口测试和单元测试的优劣势。课后任务:(1)画出分层自动化模型,并标注出每一层的优劣势。知识点四:接口测试理论内容列表:(1)接
8、口测试的概念。(2)接口测试的分类。接口测试的价值。接口测试的流程。问题列表:(1)什么是服务间接口?(2)什么是系统间接口?(3)接口测试的分析过程主要做什么工作?(4)什么是接口文档,有什么用处?授课要点:(1)举例阐述接口测试的重要性。(2)画图或用实例描述接口测试的分类。(3)讲解接口测试的四大过程。课后任务:(1)用自己的话描述接口测试的核心流程。(2)根据接口测试分类的不同,描述所需要的测试手段有何不同。章节编号:第二章:Python核心编程内容简介:Python是近年来强势崛起的编程语言,它使用简单,处理灵活,有丰富和强 大的库,常被昵称为胶水语言,能够把用其他语言制作的各种模块
9、很轻松地联结 在一起。目前Python应用非常广泛,涉及图形处理、数学运算、网络编程、Web 编程、爬虫等技术,对于IT入门者来说,Python是很好的选择。学习目标:(1)掌握Python编程的基础语法。(2)理解基于Python的面向对象思想。(3)熟练运用Python实现常见应用。知识点一:编程准备知识内容列表:(6)理解软件和硬件的区别。(7) 了解流程的编程语言和各自的应用场景。(8)掌握Python的环境安装步骤。问题列表:(5)什么是软件?什么是硬件?他们是如何配合工作的?(6) C语言是高级语言还是低级语言?(7) Python语言的优缺点是什么?(8) IDE是什么?(9)目
10、前Python的版本最新到多少?授课要点:(5)画图讲解软件和硬件的协同工作过程。(6)列出流行的编程语言及其应用场景。(7)演示Python环境搭建流程。课后任务:(3)完成Python环境搭建。知识点二:Python入门内容列表:(3)理解并应用变量。(4)掌握Python六大数据类型。(5)掌握Python中的各种运算符。(6)理解并运用分支和循环结构。(7)掌握函数的定义与调用。(8)理解模块和包的作用。问题列表:(4)列表和元组的区别?(5)字典是有序还是无序的?(6)循环的语法有几种?(7) Break 和 continue 有何作用?(8)关系运算符有哪些?(9)函数定义的语法是
11、什么?(10)什么是形参?(11)函数的返回值是什么?授课要点:(4)用日常生活中的例子简述数据类型的作用。(5)画图解释分支和循环结构。(6)用列表的形式总结归纳所有运算符。(7)用实例演示函数的定义与调用。课后任务:(3)循环求和:利用循环语句计算从100加到500的后的总和。(4)字符判断:从键盘输入一个字符,判断这个字符是数字,还是大写字母,还 是小写字母,还是符号。(5)密码验证:尝试将上述的用户名和密码验证分开进行,即如果用户名输入错误,那么不需要再提示输入密码,只有当用户名正确的情况下,我们才提示输 入密码。(6)水仙花数:计算三位整数(100-999)的水仙花数。水仙花数是指每
12、一位的 立方相加等于该数自己,比方153= 1八3+ 5八3+ 3八3。(7)次方计算:计算X的Y次方,X (底数)和Y (指数)的值由用户输入。(8)统计字符:从键盘输入一个字符串,统计这个字符串当中包含几个大写字母, 几个小写字母,几个数字,几个特殊符号。知识点三:Python面向对象内容列表:(5)理解面向对象和面向过程的区别。(6)理解类和对象的关系与联系。(7)掌握面向对象的三大特征。问题列表:(3)定义类的语法是怎样的?(4)对象如何实例化?(5)什么是私有属性?(6)继承的语法是什么?(7)什么是重写?授课要点:(3)举例讲解面向对象和面向过程不同的软件编程方法。(4)代码演示类
13、的定义,对象实例化的过程。(5)代码演示继承的语法。课后任务:(2)定义一个类为动物,设置常见属性和行为,并调用。(3)定义 个类为老虎,继承动物类,并重写其中的某个方法。知识点四:Python常见应用内容列表:(5)掌握文件操作常用的方法。(6)掌握PyMysql常用的方法。(7)理解并运用多线程技术。问题列表:(5)文件读写常用的方法有哪些?(6)如何对一个文件进行多行写入?(7) PyMysql操作的基本步骤是怎样的?(8) PyMysql查询后返回的数据是什么类型的?(9)什么是线程?作用是什么?(10)创立线程的过程是怎样的?授课要点:(4)代码演示文件读写的过程。(5)代码演示Py
14、Mysql操作的实例。(6)举例讲解多线程的概念。(7)代码演示多线程的实例。课后任务:(3)对记事本文件进行读写操作。(4)使用PyMysql查询数据库的结果。(5)编写一个多线程的例子。章节编号:第三章:代码级接口测试内容简介:前面的章节中大家已经接触了单元测试和代码级接口测试的概念,简单来说, 代码级测试可以直接调用代码级接口,当这个接口仅仅只是系统的最小组成单元时,也就成为单元测试。这里我们不必纠结概念,无论何种,都是在系统代码层 面来驱动测试执行,进行校验的过程。Unittest是Python自市的一个单兀测试框架,类似于Java的junit,他们拥有 相似的结构。本章通过Unitt
15、est工具应用与Python原生编程,从不同的技术角 度,比照式的学习,对被测对象进行代码级接口测试,加深大家的理解。学习目标:(1)理解代码级测试的理论及价值。(2)掌握Unittest的核心用法。(3)使用Unittest实现代码级接口测试的应用。(4)使用Python实现代码级接口测试的应用。(5)掌握代码统计覆盖率技术。知识点一:代码级接口测试原理内容列表:(9)理解白盒测试。(10)理解代码级接口测试的价值和困难。问题列表:(10)什么是白盒测试?(11)代码级接口测试的价值是什么?授课要点:(8)着重讲解白盒测试和黑盒测试的区别。课后任务:(4)分别阐述白盒测试和黑盒测试的概念。知
16、识点二:Unittest 详解内容列表:(1) 了解Unittest的组成局部。(2)掌握Unittest的核心方法和使用。(3)掌握Unittest的高级应用。问题列表:(1) Unittest的作用是什么?(2) Unittest如何断言?(3) Unittest的注解有哪些?(4) Unittest的报告是怎样的?(5) TestSuite是什么作用?授课要点:(1)画图描述Unittest的组成局部。(2)代码演示Unittest的常用方法。课后任务:(1)自己写一个类,使用Unittest对其进行代码级测试,并生成报告。知识点三:代码级测试实战内容列表:(1)掌握代码级测试的实战的流
17、程。(2)掌握Unittest实现测试的核心要点。(3)掌握Python原生实现测试的核心要点。(4)理解覆盖率的概念。问题列表:(1) Unittest实战的步骤是什么?(2) Python实战测试的步骤是什么?(3)覆盖率的统计方法有几种?(4)覆盖率的强弱比照?授课要点:(1)代码演示Unittest测试的实现过程。(2)重点讲解Python原生和Unittest的实现区别。(3)演示Coverage的使用流程。课后任务:(1)比照用Unittest和Python分别实现代码级测试的联系和区别。章节编号:第四章:网络协议核心知识内容简介:本章内容将主要为大家讲解TCP/IP模型,以及接口
18、测试中最重要的HTTP和HTTPS 等常见网络协议的核心知识。协议级接口测试是目前企业中实施接口测试最重要 的局部。当然其原因不难理解,因为目前很多系统,都希望在服务器端能够提供一个统一的协议接口,而我们在不同的客户端(如PC端或App端甚至其他智能客 户端)上调用统一的协议接口,完成数据的传输,这样可以节省服务器端的程序 的开发。那么本章内容就先为大家介绍一下关于网络协议的核心知识。学习目标:(1)理解什么是协议以及其基本用法。(2)理解OSI模型、TCP/IP通信知识。(3)深入理解HTTP的关键知识。(4)理解HTTPS和SOAP知识。(5)熟练使用Python开发网络程序。知识点一:网
19、络协议模型内容列表:(11) 了解网络模型的概念。(12) 了解OSI模型和TCP/IP模型区别。问题列表:(12)什么是网络模型?(13)为什么有网络模型?(14) OSI参考模型有多少层?(15) TCP/IP模型有多少层?授课要点:(9)举例讲解网络模型和协议的概念。(10)用图表展现0SI和TCP/IP模型的层次结构。课后任务:(5)试想如果没有网络模型,现实社会的通信状态是怎样的?(6) TCP/IP模型每一层主要做什么工作?知识点二:TCP/IP实战内容列表:(1)理解TCP协议三次握手和四次挥手。(2)理解IP协议的作用。 掌握用Python发送TCP协议的步骤。问题列表:(1)
20、为什么需要二次握手?(2)为什么挥手比握手多一次?(3) IP协议在网络模型中的哪一层?(4) Python发送TCP数据包的方法有哪些?授课要点:(1)用图表讲解三次握手和四次挥手的过程。(2)用图表讲解IP数据的结构。(3)代码演示TCP发送接收数据的过程。课后任务:(1)用Python分别编写一个发送方程序和接收方程序,并能互相通信。知识点三:HTTP实战内容列表:(1)理解HTTP的特点。(2)掌握HTTP的请求和响应重要字段。(3)理解Cookie和Session的区别。(4)掌握Python操作HTTP的核心步骤。问题列表:(1) HTTP的全称是什么?(2) HTTP的特点是什么
21、?(3) Cookie的作用是什么?GET请求和POST请求有什么区别?(5)请求头中有哪些重要字段?(6) Python发送HTTP请求的大体步骤是怎样的?授课要点:(1)用工具捕获HTTP请求,并分析请求和响应的过程。讲解GET和POST的区别。(3)展示Cookie文件的重要信息。代码演示Python发送HTTP请求的过程。课后任务:(1)使用工具捕获某个网站登录请求的信息。(2)使用Python发送登录请求,并正确登录。知识点四:其他协议讲解内容列表:(1)掌握常用抓包工具。(2)理解 HTTPS o(3)理解 WebServices 协议。(4)理解 WebSocket 协议。问题列
22、表:(1) HTTPS 和 HTTP 的区别?(2) WebServices协议的特点是什么?(3) WebSocket协议的特点是什么?(4)接触过的抓包工具有哪些?授课要点:(1)应用Fiddler抓取HTTPS并分析。(2)代码演示发送HTTPS数据包。(3)展现WebServices和WebSocket的工作过程。课后任务:(1)使用Fiddler和浏览器自带工具,抓取某个网站的数据并进行详细分析。章节编号:第五章:协议级接口测试内容简介:协议级接口测试是目前企业中实施接口测试最重要的局部。当然其原因不难理解, 因为目前很多系统,都希望在服务器端能够提供一个统一的协议接口,而我们在 不
23、同的客户端(如PC端或App端甚至其他智能客户端)上调用统一的协议接口, 完成数据的传输,这样可以节省服务器端的程序的开发。本章内容就主要为大家 介绍关于协议级接口测试的核心知识,包括各类接口测试工具的使用。学习目标:(1)理解什么是接口测试及实现原理。(2)熟练运用协议级接口测试工具。(3)熟练运用Python完成接口测试开发。(4)熟练运用Python的requests库。(5)运用接口测试技术测试蜗牛进销存系统。(6)完成接口测试的自动化测试框架开发。知识点一:协议级接口测试基础内容列表:(13)理解协议级接口测试原理。(14)理解协议级接口测试优势。问题列表:(16)什么是三层架构?(
24、17)协议级接口测试注意要点有哪些?(18)协议级接口测试有哪些优势?授课要点:(11)用图表讲解三层架构原理。(12)重点阐述协议级接口测试的优势。课后任务:(7)用思维导图或文字形式描述协议级接口测试的原理和优势。知识点二:协议级接口测试工具内容列表:掌握Postman工具使用。(5)掌握SoapUI工具使用。(6)掌握JMeter工具使用。(7)掌握LoadRunner工具使用。问题列表:(5) Postman如何断言?(6) SoapUI如何构造请求?(7) JMeter如何构造请求头?授课要点: 课后任务:(4)分别用四种工具演示发送请求、接收响应、断言的指整个过程。(2)比照四种工具进行接口测试的过程,阐述你认为哪种工具更好,为什么?知识点三:协议级接口测试实战内容列表:(1)掌握测试系统的搭建步骤。(2)掌握Request库的常用方法。(3)理解测试框架的意义。问题列表:什么是Tomcat?(2) Request库如何发送GET请求?(3) Request库如何获取响应?(4)接口测试框架的重要组成局部有哪些?授课要点:(1)演示Tomcat+Mysql的搭建过程。(2)代码演示Request的常用方法。(3)重点演示讲解Request是如何管理Cookie的。课后任务:(1)使用Request库的方法对某个网站的登录和新增功能进行接口测试。