软件测试我爱编程

[Py_1]Python+Selenium自动化测试的意义&am

2018-06-17  本文已影响16人  Fighting_001

目录结构

一、自动化测试的背景&意义
    1.自动化测试的背景
    2.所需的学习内容
    3.学习目标
    4.学习建议

二、Python+Selenium课程目录
    1.自动化测试基础
    2.Selenium IDE应用
    3.Python基础
    4.WebDriver API
    5.自动化测试模型
    6.UnitTest单元测试框架
    7.自动化测试高级应用
    8.自动化测试实战项目

三、自动化测试体系
    1.自动化测试的概念
    2.自动化测试类型(金字塔层次模型)
    3.自动化测试框架模型
    4.适合自动化的项目
    5.自动化测试工具

四、Selenium的三生三世
    阶段1: Selenium 1.0
    阶段2: Selenium 2.0
    阶段3: Selenium 3.0

一、自动化测试的背景&意义

1.自动化测试的背景

1)互联网行业:
a.敏捷开发快速迭代的需要
b.测试环节中回归测试任务量大、较繁琐;手工测试容易漏测。对于回归测试,通过引入自动化测试,可一定程度上提高测试效率,与手工测试联合保证产品质量
2)测试人员转型:
a.随技术不断更新,需要提升个人核心竞争力
b.企业用人需求,对自动化、性能、接口测试的硬性要求,以及对编码、数据库、服务器等综合应用需求

2.所需的学习内容

1)自动化测试概念
2)自动化测试工具
3)Python基础语法
4)Selenium接口
5)自动化项目实战

3.学习目标

1)独立编写脚本,完成基础的自动化测试
2)利用框架完成自动化测试
3)构建自动化测试平台
4)胜任公司Web项目相关自动化测试任务

4.学习建议

1)多实践:
a.跟从教程不断验证学习效果
b.不断遇到疑难问题,不断想办法去解决实践过程中的问题
2)多思考、多总结:
比如对学习过程中的知识点、疑问点进行实践总结,输出个人技术Blog
3)恒心和毅力:
坚持!坚持!!坚持!!!
4)重视基础:
基础牢靠,持续提升
5)主动解决问题:
a.Google、Baidu、Sougou-公众号搜索
b.Stack Overflow技术论坛
c.技术交流群、论坛
d.向身边的技术大牛请教


二、Python+Selenium2课程目录

1.自动化测试基础

1)自动化测试概念
2)Selenium简介
3)前端技术简介:Html基础、CSS基础
4)前端工具介绍:FireBug、FirePath、F12开发者工具
5)测试环境搭建:工具插件安装、环境配置

2.Selenium IDE应用

1)安装与介绍
2)创建测试用例
3)常用命令
4)断言 & 验证
5)等待 & 变量

3.Python基础

1)Python简介
2)Python安装
3)Python基础知识

4.WebDriver API

1)元素定位
2)键盘鼠标事件
3)浏览器窗口控制

5.自动化测试模型

1)自动化测试框架与工具设计思想
2)四大模型:线性测试、模块化驱动测试、数据驱动测试、关键字驱动测试

6.UnitTest单元测试框架

1)用例管理与执行
2)丰富的断言机制
3)完整的日志

7.自动化测试高级应用

1)报告生成
2)自动发送邮件
3)设计模式PageObject

8.自动化测试实战项目

1)Web自动化测试项目


三、自动化测试体系

1.自动化测试概念

1)概念:以人为驱动的测试行为-->(转换为)-->机器执行的过程
2)目的:提高测试效率,保证产品质量
3)注意事项:在可预见的未来,自动化测试不太可能完全取代手工测试;自动化测试也不一定就比手工测试高大上;自动化测试未必会发现更多的Bug

2.自动化测试类型(金字塔层次模型)
1)单元自动化测试

特点:
a.针对类、方法进行测试
b.测试效益最大
c.技术难度要求较高,小型搞死由开发自测为主
d.测试工具:Junit、TestNginx、Nunit、UnitTest

2)接口自动化测试

测试工具:httpUnit、Postman、Jmeter、Fiddler

3)UI自动化测试

特点:
1)对界面元素测试
2)面向用户,测试工作量占比大
3)较大程度依赖于界面和模块的稳定性
4)测试投资回报率(ROI)不高
5)测试工具:RobtFramework(RF)、Selenium、Appium

3.自动化测试框架模型

1)线性测试:独立的功能流程,流水线执行
2)模块化驱动测试:模块复用
3)数据驱动测试:参数化
4)关键字驱动测试:关键字封装。测试工具(QTP、Selenium IDE、RF)

4.适合自动化的项目

特点:
1)需求变动不频繁:以“稳定”为前提的自动化才靠谱
2)项目周期足够长
3)项目需要重复回归测试

5.自动化测试工具

1)Web端自动化测试:Selenium、RF
2)PC客户端自动化测试:QTP
3)APP端自动化测试:Appium、UIautomation、Monkey Runner
4)接口自动化测试:HttpUnit、Postman、Python
5)云测平台:Testin、Testbird...


四、Selenium的三生三世

阶段1: Selenium 1.0

本阶段之竞争对手:Web Driver

不足之处
a.不支持本机键盘和鼠标事件
b.不支持同源策略XSS、HTTP(S)
c.不支持弹出框、对话框(基本身份认证,自签名证书和文件的上传or下载)
d.不支持并发

阶段2: Selenium 2.0

特点:
1)Selenium 2.0 = Selenium 1.0+WebDriver
2)基于调用WebDriver API来模拟用户操作
3)WebDriver的速度更快,因它直接交互使用的浏览器
4)支持多种编程语言

阶段3: Selenium 3.0

特点:
1)去掉了对Selenium RC的支持
2)全面拥抱Java 8
3)支持MacOS(Sierra or later),支持官方的safaridriver
4)通过ms官方的WebDriver Server支持Edge浏览器
5)只支持IE9.0以上的版本
6)通过Mozilla官方的geckodriver来支持Firefox

PS:
a.若需要测试Edge或Safari,则更新Selenium到最新版(目前3.0)是必要的
b.若不需要测试以上浏览器,则可选择稳定性和功能全面综合较优的2.0版本


参考来源:
[1] 51自学网-自动化测试教程

上一篇 下一篇

猜你喜欢

热点阅读