软件测试课程教与学(教案大纲和教案+视频)

课程名称:软件测试课程编

总学时/学分:68学时/2学分 理论学时:38 上机学时:30

先修课程:程序设计基础、WEB开发、 络基础 开课学期第3学期

授课对象:计算机科学与技术、计算机应用技术、软件工程、软件测试等专业

考核方式:考试(80%)+ 平时成绩(20%)

一、教学目标和基本要求

软件测试是软件开发过程的重要组成部分,是用来确认一个程序的品质或性能是否符合开发之前所提出的一些要求,是软件质量保证的关键步骤。通过学习本课程,使学生掌握软件测试的基本理论、基本流程、主流测试技术,会用常用测试工具,了解测试框架、测试体系等。软件测试的学习不仅要注重理论知识的学习,更重要的是要培养学生的测试思维和测试设计执行能力,培养学生综合应用测试技术、方法和工具测试项目的能力。

课程考核方式:考试(80%)+ 平时成绩(20%)

要求掌握软件测试的基本理论,能实施单元测试、接口测试、功能测试等,能用白盒、黑盒技术设计测试用例,能使用接口测试工具、自动化测试工具,会一些性能测试工具的操作,了解一些安全测试的内容。

二、课程简要说明

本课程内容分四大部分:

第一部分围绕软件测试概述、软件测试入门、软件测试技术体系和软件测试的过程管理进行讲授,说明为什么要进行软件测试、软件测试的定义、目的和原则,如何 告软件缺陷、如何描述测试用例,软件测试的各种分类、管理软件测试的过程等。

第二部分是本课程的重点,也是软件测试的重点内容。讲述了白盒测试技术、黑盒测试技术、接口测试技术等各种测试用例设计技术。

第三部分重点讲述了单元自动化测试框架、UI及接口自动化测试框架、Web UI自动化测试框架。

第四部分重点讲述了性能测试的原理和工具、移动APP非功能测试工具、Web安全中的渗透性测试等内容。

三、教学重点、难点

重点:白盒测试技术、黑盒测试技术、接口测试技术、单元自动化测试框架、UI及接口自动化测试框架、Web UI自动化测试框架

难点:白盒测试技术、黑盒测试技术、接口测试技术、单元自动化测试框架、UI及接口自动化测试框架、Web UI自动化测试框架

四、课程章节主要内容及学时分配

教学内容 讲课(学时) 上机(学时)

第1章 软件测试概述

1.1 为什么要进行软件测试

1.2 软件测试的定义

1.2.1 软件测试定义的正反两面性

1.2.2 服从于用户需求的软件测试

1.3 软件测试的目的

1.4 软件测试的原则

1.5 软件缺陷

1.6 缺陷 告

1.6.1 一个简单的缺陷 告

1.6.2 缺陷 告的重要组成

1.6.3 完整的缺陷信息列表

1.6.4 缺陷的管理

1.7 本章小结

2

1学时

上机内容:

寻找软件中的缺陷

第2章 软件测试入门

2.1 常见应用系统的基本特征

2.2 软件测试的基本思路

2.3 测试用例

2.3.1 为什么需要测试用例

2.3.2 什么是测试用例

2.3.3 一个简单的测试用例

2.3.4 测试用例的元素

2.4 测试思维训练

2.5 本章小结

2

1学时

上机内容:

根据经验编写简单的测试用例

第3章 软件测试技术体系

3.1 软件测试类型

3.1.1 功能测试

3.1.2 接口测试

3.1.3 性能测试

3.2 软件测试级别

3.2.1 单元测试

3.2.2 集成测试

3.2.3 确认测试

3.2.4 系统测试

3.2.5 验收测试

3.3 测试方法

3.3.1 黑盒测试

3.3.2 白盒测试

3.3.3 灰盒测试

3.4 测试手段

3.4.1 手工测试

3.4.2 自动化测试

3.5 本章小结

2

第4章 软件测试的过程管理

4.1 软件测试的整体流程

4.2 软件测试各阶段的工作任务

4.2.1 测试计划

4.2.2 测试需求分析

4.2.3 测试建模

4.2.4 用例设计

4.2.5 测试执行

4.2.6 测试总结

4.3 系统上线与运维

4.4 本章小结

2

第5章 白盒测试用例设计及应用

5.1 逻辑覆盖法

5.1.1 语句覆盖

5.1.2 判定覆盖

5.1.3 条件覆盖

5.1.4 条件判定组合覆盖

5.1.5 多条件覆盖

5.1.6 修正条件判定覆盖

5.2 基本路径测试法

5.2.1 程序的控制流图

5.2.2 控制流图的环路复杂性

5.2.3 基本路径测试法示例

5.3 本章小结

4

4学时

上机内容:

使用白盒法设计测试用例

第6章 黑盒测试用例设计及应用

6.1 等价类划分法

6.1.1 等价类划分法的定义

6.1.2 有效等价类和无效等价类

6.1.3 划分等价类的规则

6.1.4 等价类划分法实例分析

6.2 边界值分析法

6.2.1 如何确定边界值

6.2.2 边界值法实例分析

6.3 组合测试用例设计技术

6.3.1 全面测试

6.3.2 单因素覆盖

6.3.3 正交试验法

6.3.4 两两组合

6.3.5 具有约束关系的组合测试

6.3.6 种子组合测试

6.4 因果图法

6.4.1 因果图的基本符

6.4.2 因果图法实例分析

6.5 决策表法

6.5.1 决策表的构成

6.5.2 决策表法实例分析

6.6 场景法

6.6.1 场景法

6.6.2 场景法实例分析

6.7 测试方法选择的综合策略

6.8 本章小结

4

4学时

上机内容:

使用黑盒法设计测试用例

第7章 接口测试基础

7.1 HTTP工作原理

7.2 用Firefox浏览器抓取 文

7.3 URL

7.5 本章小结

2

2学时

上机内容:

用Firefox浏览器抓取 文并进行分析

第8章 接口测试

8.1 为什么要做接口测试

8.2 接口测试的定义

8.3 接口测试实例分析

8.3.1 接口文档解析

8.3.2 测试用例设计

8.4 接口测试工具

8.4.1 安装Postman工具

8.4.2 使用Postman的基础功能

8.4.3 Postman进阶使用

8.5 本章小结

2

2学时

上机内容:

使用Postman进行接口测试

第9章 Unittest单元测试框架

9.1 认识Unittest

9.2 Python安装

9.3 集成开发环境—PyCharm

9.3.1 PyCharm的下载安装

9.3.2 PyCharm的使用

9.4 使用ddt创建数据驱动测试

9.4.1 安装ddt

9.4.2 创建测试类

9.4.3 setUp方法

9.4.4 编写测试

9.4.5 代码清理

9.4.6 运行测试

9.5 断言

9.6 测试套件

9.6.1 TestSuite执行指定用例

9.6.2 discover批量加载用例

9.7 生成HTML格式的测试 告

9.8 本章小结

2

2学时

上机内容:

使用Unittest进行单元测试

第10章 接口自动化测试

10.1 Newman的使用

10.1.1安装Node.js

10.1.2 安装Newman

10.1.3 通过Newman执行脚本

10.2 与持续集成工具Jenkins结合

10.2.1 Jenkins搭建

10.2.2 新建job

10.2.3 执行DOS指令

10.2.4 Jenkins定制构建

10.2.5 构建触发器

10.2.6 job关联

10.2.7 添加HTML Publisher插件

10.2.8 添加 Reports

10.2.9 告展示

10.2.10 Jenkins中的HTML展示

10.3 本章小结

4

2学时

上机内容:

接口自动化测试练习

第11章 Web UI自动化测试

11.1 Selenium介绍

11.1.1 安装Selenium

11.1.2 第一个Selenium Python脚本

11.1.3 WebDriver原理

11.2 Selenium WebDriver

11.2.1 Selenium WebDriver的常用方法

11.2.2 WebDriver的功能

11.2.3 示例:定位一组元素

11.2.4 正则匹配示例—摘取邮箱

11.3 WebElement接口

11.3.1 WebElement功能

11.3.2 WebElement方法

11.3.3 示例:百度搜索

11.3.4 示例:爬取拉勾职位信息

11.4 自动化测试模型介绍

11.4.1 线性测试

11.4.2 模块化与类库

11.4.3 数据驱动

11.4.4 关键字驱动

11.5 Selenium轻量级UI自动化测试框架

11.5.1 为什么要进行框架设计

11.5.2 PageObject设计模式

11.5.3 BasePage对象

11.5.4 实现PageObject

11.5.5 构建PageObject模式测试实例

11.6 框架梳理

11.7 本章小结

4

4学时

上机内容:

Web UI自动化测试练习

第12章 性能测试

12.1 认识性能测试

12.1.1 为什么要进行性能测试

12.1.2 性能定义

12.1.3 性能测试分层模型

12.1.4 性能指标

12.1.5 性能测试的流程

12.2 LoadRunner脚本开发实战

12.2.1 LoadRunner介绍

12.2.2 项目介绍

12.2.3 需求分析

12.2.4 脚本开发

12.2.5 使用LoadRunner完成H5 站的脚本开发

12.3 场景设计精要

12.4 性能测试分析思路

12.4.1 观察现象

12.4.2 层层递进

12.4.3 缩小范围

12.5 本章小结

4学时

上机内容:

性能测试练习

第13章 移动APP非功能测试

13.1 移动APP启动时间测试

13.1.1 用户体验角度的APP启动时间

13.1.2 常见的APP启动时间测试方法

13.1.3 使用adb获得APP启动时间示例

13.2 移动APP流量测试

13.2.1 APP流量测试场景

13.2.2 APP流量测试示例

13.3 移动APP CPU测试

13.3.1 APP的CPU测试场景

13.3.2 APP的CPU占用率测试示例

13.4 移动APP电量测试

13.5 本章小结

1学时

上机内容:

移动APP非功能测试练习

第14章 渗透性测试

14.1 Web应用安全基础

14.2 SQL注入漏洞

14.2.1 SQL注入原理

14.2.2 SQL注入的后果

14.2.3 SQL注入漏洞攻击流程

14.2.4 注入点类型

14.2.5 SQL注入的防范措施

14.3 XSS 跨站脚本漏洞

14.3.1 XSS原理解析

14.3.2 XSS类型

14.3.3 查找XSS漏洞过程

14.3.4 XSS防御

14.4 CSRF

14.4.1 CSRF攻击原理

14.4.2 CSRF攻击场景

14.4.3 查找CSRF漏洞

14.4.4 预防CSRF

14.5 文件上传漏洞

14.5.1 文件上传漏洞利用场景

14.5.2 文件上传漏洞的测试流程

14.5.3 文件上传防御

14.6本章小结

3学时

上机内容:

安全测试练习

38 30

基于一个完整的项目介绍主流的软件测试技术,包括黑盒技术、白盒技术,结合项目介绍功能测试、兼容性测试、移动测试、安全测试等技术框架。采用任务驱动法、案例剖析法组织教材内容。主要使读者掌握主流的用例设计方法和了解主流的测试框架。

扫码,京东购书

【本书配套视频样例】

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年10月7日
下一篇 2020年10月8日

相关推荐