Selenium Python自动化测试

Selenium Python自动化测试

主要介绍pytest框架下的python3自动化测试入门技巧
免费免费电子书无需购买,可直接阅读全文

作品简介

本书采用python3为编程语言,搭建pytest框架,介绍了元素定位方式、操作测试对象、异常与断言、自动化测试模型、pytest框架介绍等方面内容,希望对喜欢python自动化测试的小伙伴们有所帮助

作者自述

在做测试的这些年里,大多数情况下都是做着重复性的工作,偶然有一次,看到了自动化测试的一篇文章,于是就开始搭建环境,尝试编写代码并执行自动化测试脚本,刚开始学习的话,只是使用录制工具进行录制,后来发现录制的脚本有时候会回放不了,出现各种问题,于是就开始全面学习自动化测试的相关知识,自己从零开始编写脚本。

刚开始编写脚本的话没有考虑太多的框架,只是看到界面有哪些模块就编写哪些模块,只要能跑起来就很开心了,刚开始是使用python语言进行开发,但开发过程中遇到很多的问题以及当时公司任务也比较多,没有太多的时间,于是就没有继续编写下去。过了半年之后,在一次技术分享会上,我分享了我的自动化测试脚本及其应用,后来发现觉得挺有用的,于是又开始搭建pytest测试框架进行自动化脚本的开发。

作品目录

  1. 前言
  2. 第1章 基础知识引入
  3. 1.1 测试分类
  4. 1.2 Selenium 介绍
  5. 1.3 开发语言的选择
  6. 第2章 测试环境搭建
  7. 2.1 python简介
  8. 2.2 安装Python
  9. 2.3 配置环境变量
  10. 2.4 安装setuptools
  11. 2.5 安装pip
  12. 2.6 安装selenium
  13. 2.7 IDLE的使用
  14. 第3章 元素定位
  15. 3.1 元素定位引入
  16. 3.1.1 启动浏览器说明
  17. 3.1.2 元素定位种类
  18. 3.1.3 浏览器选取元素方式
  19. 3.2 元素定位方式
  20. 3.2.1 id和name定位
  21. 3.2.2 tag name和class name定位
  22. 3.2.3 link text与partial link text定位
  23. 3.2.4 XPath定位
  24. 3.2.5 CSS定位
  25. 第4章 操作测试对象
  26. 4.1 简单的测试脚本
  27. 4.2 基础操作函数(一)
  28. 4.2.1 直接操作函数
  29. 4.2.2 有返回内容函数
  30. 4.3 基础操作函数(二)
  31. 4.3.1 鼠标操作函数
  32. 4.3.2 键盘操作函数
  33. 4.3.3 鼠标事件操作
  34. 4.3.4 键盘事件操作
  35. 4.4 浏览器操作
  36. 4.4.1 浏览器最大化
  37. 4.4.2 设置浏览器窗口大小
  38. 4.4.3 控制浏览器前进、后退
  39. 4.4.4 获取cookie信息
  40. 4.4.5 操作cookie值
  41. 4.5 文件上传与下载操作
  42. 4.5.1 文件上传
  43. 4.5.2 文件下载
  44. 4.6 下拉框和选项框处理
  45. 4.6.1 下拉框处理
  46. 4.6.2 多选框处理
  47. 4.6.3 单选框处理
  48. 4.7 多表单和多窗口切换
  49. 4.7.1 多表单切换
  50. 4.7.2 多窗口切换
  51. 4.8 调用JS和窗口截图
  52. 4.8.1 调用JavaScript
  53. 4.8.2 窗口截图
  54. 4.9 等待机制
  55. 4.9.1 等待方式对比
  56. 4.9.2 显式等待
  57. 4.9.3 显示等待应用一
  58. 4.9.4 显示等待应用二
  59. 第5章 异常与断言
  60. 5.1 异常处理
  61. 5.1.1 异常处理机制
  62. 5.1.2 异常处理种类
  63. 5.1.3 异常try...except
  64. 5.1.4 异常try...finally
  65. 5.1.5 Raise自定义异常
  66. 5.1.6 异常try...except...else
  67. 5.1.7 异常try...except...else...finally
  68. 5.1.8 多分支异常
  69. 5.1.9 万能异常
  70. 5.1.10 主动触发异常
  71. 5.2 断言
  72. 5.2.1 常见的断言类型
  73. 5.2.2 断言类型举例
  74. 第6章 自动化测试模型
  75. 6.1 线性测试
  76. 6.2 模块化
  77. 6.3 数据驱动
  78. 6.4 文件读取
  79. 6.4.1 txt文件数据的读取
  80. 6.4.2 csv文件数据的读取
  81. 6.4.3 xml文件的读取方式
  82. 6.4.4 Json文件的读取方式
  83. 第7章 PO设计模式
  84. 7.1 什么是PO设计模式
  85. 7.2 PO设计模式
  86. 7.2.1 PO设计模式的优点
  87. 7.2.2 非PO设计模式
  88. 7.2.3 PO设计模式
  89. 第8章 gitLab搭建
  90. 8.1 git客户端安装与使用
  91. 8.2 搭建gitLab环境
  92. 8.3 gitLab简单使用
  93. 第9章 Pytest测试框架
  94. 9.1 pytest框架搭建
  95. 9.1.1 安装pytest
  96. 9.1.2 安装pycharm
  97. 9.1.3 安装pytest-html
  98. 9.1.4 安装失败重跑插件
  99. 9.2 pytest特性介绍
  100. 9.2.1 pytest用例执行规则
  101. 9.2.2 pytest的fixture功能
  102. 9.3 pycharm搭建pytest框架
  103. 9.4 pytest.fixture的使用方式
  104. 9.4.1 方式一:传入前置函数名
  105. 9.4.2 方式二:文件配置前置函数
  106. 9.4.3 方式三:装饰器配置前置函数
  107. 9.4.4 方式四:参数设置前置函数
  108. 9.5 测试用例的执行
  109. 9.6 测试报告的生成
  110. 9.7 Pytest参数
  111. 9.7.1 参数列表
  112. 9.7.2 参数举例
  113. 第10章 Allure-pytest功能特性
  114. 10.1 Allure特性
  115. 10.1.1 @allure.step的使用
  116. 10.1.2 @allure.description的使用
  117. 10.1.3 @allure.title的使用
  118. 10.1.4 @allure.link的使用
  119. 10.1.5 @allure.feature的使用
  120. 10.1.6 @allure.story的使用
  121. 10.2 pytest+allure测试框架
  122. 10.2.1 框架目录结构
  123. 10.2.2 批量执行测试用例
  124. 第11章 Jenkins学习入门
  125. 11.1 Jenkins搭建与配置
  126. 11.1.1 下载Jenkins并安装
  127. 11.1.2 Jenkins基本配置
  128. 11.2 任务构建
  129. 参考文献