18年selenium3+python3+unittest自动化测试教程(下)
第六章 自动化测试进阶实战篇幅
1、自动化测试实战进阶之网页单选性别资料实战
简介:讲解使用selenium修改input输入框和单选框
2、自动化测试之页面常见弹窗处理
简介:讲解使用selenium处理页面弹窗,alert和comfirm
弹窗常用方法(需要先切换窗口 switch_to_alert() )
accept() 表示接受
dismiss() 表示取消
3、高级知识点自动化测试之验证码常见解决方案
简介:自动化测试之常见验证码解决方案
1、破解验证码
OCR识别: tesseract-ocr
AI机器学习:
2、绕过
1、让开发人员临时关闭验证码 安全性需要保密,一般在开发测试环境使用)
2、提供一个万能的验证码(安全性需要保密,一般在开发测试环境使用)
3、使用cookie(登录主要是为了拿cookie,获取登录凭证)
4、自动化测试实战进阶之cookie操作
简介:讲解自动化测试实战进阶操作cookie和使用场景
5、实战系列之自动化测试错误截图
简介:讲解使用webdriver自动截图
driver.get_screenshot_as_file("./error_png.png")
第七章 自动化测试必备框架 unittest 单元测试框架实战
1、什么是单元测试unittest
简介:讲解什么是单元测试,使用场景和unittest介绍
1、单元测试:
是指对软件中的最小可测试单元进行检查和验证。对于单元测试中单元的含义,一般来说,要根据实际情况去判定其具体含义,
如C语言中单元指一个函数,
function add(int a, int b){
return a + b
}
Java里单元指一个类,图形化的软件中可以指一个窗口或一个菜单等。
总的来说,单元就是人为规定的最小的被测功能模块。单元测试是在软件开发过程中要进行的最低级别的测试活动,软件的独立单元将在与程序的其他部分相隔离的情况下进行测试
2、unittest 框架是 python的单元测试框架, java -> junit
官网:https://docs.python.org/2/library/unittest.html
3、unnitest = TestCase + TestResult 执行用例 + 结果
2、单元测试框架unittest入门
简介:讲解单元测试框架 unittest的使用
1、用import语句引入unittest模块
2、测试的类都继承于TestCase类
3、setUp() 测试前的初始化工作;tearDown()测试后的清除工作 (在每个测试方法运行时被调用)
注意:
1、所有类中方法的入参为self,定义方法的变量也要“self.变量
2、定义测试用例,以“test”开头命名的方法,方法的入参为self
3、unittest.main()方法会搜索该模块下所有以test开头的测试用例方法,并自动执行它们
4、自己写的py文件不能,用 unittest.py 命名,不然会找不到TestCase
成功是输出 . 失败是 F
py开发工具 pycharm
# -*- coding: UTF-8 -*-
import unittest
class UserTestCase(unittest.TestCase):
def setUp(self):
def tearDown(self):
def test_name(self):
if __name__ == '__main__':
unittest.main()
3、测试套件TestSuite介绍
简介:讲解测试套件TestSuite的基本介绍和使用场景
需求:
1、利用unnitest执行流程测试而非单元测试
2、控制unnitest的执行顺序
1、unittest.TestSuite() 类来表示一个测试用例集
1)用来确定测试用例的顺序,哪个先执行哪个后执行
2)如果一个class中有四个test开头的方法,则加载到suite中时则有四个测试用例
3)由TestLoder加载TestCase到TestSuite
4)verbosity参数可以控制执行结果的输出,0 是简单报告、1 是一般报告、2 是详细报告
默认1 会在每个成功的用例前面有个“.” 每个失败的用例前面有个 “F”
2、TextTestRunner() 文本测试用例运行器
3、run()方法是运行测试套件的测试用例,入参为suite测试套件
4、高级实战系列之测试套件TestSuite生成测试报告 上集
简介:HTMLTestRunner介绍
1、HTMLTestRunner介绍
HTMLTestRunner 是 Python 标准库的 unittest 模块的一个扩展,它可以生成 HTML的 测试报告,无法通过pip安装。
首先要下 HTMLTestRunner.py 文件,将下载的文件放入…\python\Lib目录下 (或者同个路径)
注意点:
python2和python3,语法不一样,导致HTMLTestRunner在python3不兼容
解决办法:导入课程资料里面修改好的HTMLTestRunner.py (该版本是网上的小伙伴修改好的)
5、高级实战系列之测试套件TestSuite生成测试报告 下集
简介:讲解使用测试套件TestSuite解决多个用例生成测试报告
6、Unitest中HTML测试报告优化
简介:为每一个测试用例添加说明,那么将会使报告更加易读懂,工作中汇报数据的技巧
u"test_one方法"
第八章、自动化测试selenium和unittest整合项目实战
1、小D课堂官网项目实战需求说明
简介:讲解小D课堂官方自动化测试需求场景,和项目基础框架搭建
1.自动化测试里面的测试用例设计的一些方法
解耦、可以独立运行、需要灵活切换
设计思路: 脚本功能分析(分步骤)和模块化分层(拆分为多模块)
project
login_order.py #登录下单测试用例
category.py #菜单分类测试用例
all_test.py #主入口
2、自动化测试实战之下单自动化测试
简介:使用unittest + selenium 下单测试用例编写
1、使用原先的资料 第5章第3集 第6章第4集
3、分类列表整合unittest自动化测试
简介:使用unittest + selenium 菜单弹窗测试用例编写
1、使用资料 第5章第2集
4、必备技能之发送测试报告邮件
简介:讲解发送邮件的基础知识
1、邮件发送的基本过程与概念
邮件服务器 :类似于现实生活中的邮局,它主要负责接收用户投递过来的邮件,并把邮件投递到邮件接收者的电子邮箱中
电子邮箱 :用户在邮件服务器上申请的一个账户
from:<xxx@xx.com> ----发件人
to:<xxx@xx.com> ----收件人
subject:hello ----主题
body: 欢迎来到小D课堂 -----内容体
2、邮件传输协议
SMTP协议:全称为 Simple Mail Transfer Protocol,简单邮件传输协议。它定义了邮件客户端软件和SMTP邮件服务器之间,以及两台SMTP邮件服务器之间的通信规则
POP3协议:全称为 Post Office Protocol,邮局协议。它定义了邮件客户端软件和POP3邮件服务器的通信规则
IMAP协议:全称为 Internet Message Access Protocol,Internet消息访问协议,它是对POP3协议的一种扩展,也是定义了邮件客户端软件和IMAP邮件服务器的通信规则
参考资料:https://www.cnblogs.com/ysocean/p/7652934.html
5、使用python发送邮件实战
简介:讲解使用python发送邮件
导入依赖
1、使用 126邮箱 https://mail.126.com/
A: waitforxy@126.com
B: waitfordev@126.com
smtp地址:smtp.126.com
#coding=utf-8
import smtplib
from email.mime.text import MIMEText
from email.header import Header
6、实战系列使用python发送测试报告邮件和附件
简介:使用python发送测试报告邮件和附件
7、自动化测试项目实战整合发送测试报告邮件
简介:抽取发送邮件的代码,整合自动化测试
第九章 课程总结
1、课程总结和常见问题处理
简介:课程总结和讲解常见的问题处理
必备
初级:html/css/js/http
中级:linux、mysql、jmeter(压力测试用的最多的软件之一)、lr(现在用的比较少)
python + request 网络库去开发接口自动化测试
高级:jenkins CI、git (管理项目质量、搭建所有基础组件、bug管理工具(bugfree/jira))
可选
python/java/node
通过百度去解决错误和问题,学会用搜索引擎
更多课程资料可以查看https://xdclass.net/#/coursecatalogue?video_id=16
零基础讲解自动化测试,Selenium安装到八种元素定位,用户事件处理,等待时间处理,
到单元测试框架Unites整合实战,整合自动化测试实战等核心知识点。
赠送大量的学习资料以及干货
18年selenium3+python3+unittest自动化测试教程(下)的更多相关文章
- 18年selenium3+python3+unittest自动化测试教程(上)
第一章 自动化测试课程介绍和课程大纲 1.自动化测试课程介绍 简介:讲解什么是自动化测试和课程大纲讲解,课程需要的基础和学后的水平 python3.7+selenium3 pycharm 第二章自动化 ...
- Selenium3 Python3 Web自动化测试从基础到项目实战之一启动不同的浏览器及配置
在web自动化中目前selenium作为底层的自动化测试是目前运用最广的,但是各个公司都会在这个基础之上进行修改.从今天开始我们就慢慢从low代码一步一步的学习框架知识. 首先当我们测试环境有了之后我 ...
- Python3+unittest使用教程
一.直接使用TestCase 注意所有测试方法都需要以test开头.代码如下: import unittest class Test1(unittest.TestCase): @classmethod ...
- 关于Selenium3+python3.6自动化测试中iframe切换
本篇内容主要表述以下几个问题: 1.iframe 这个是什么? 2.定位iframe 标签时遇到的几个报错总结. 3.显示等待与隐示等待的原理与优缺点. 4.无name,ID可变情况下的处理方式 5. ...
- [Selenium3+python3.6]自动化测试3-八种元素元素定位(Firebug和firepath)
参考http://www.cnblogs.com/yoyoketang/p/6123890.html #coding=utf-8 from selenium import webdriverdri ...
- Selenium3 Python3 Web自动化测试从基础到项目实战之二浏览器的不同设置
在前面一个章节我们知道了如何通过webdriver去初始化我们得driver,然后我们只需要通过driver就能够去做我们得自动化,首先我们知道我们需要知道得是当我们有driver之后,我们剩下得就是 ...
- [Selenium3+python3.6]自动化测试2-入门
参考http://www.cnblogs.com/yoyoketang/p/6123890.html #coding=utf-8 #Import webdriver time module from ...
- [Selenium3+python3.6]自动化测试1-安装
参考文档: http://www.cnblogs.com/yoyoketang/p/6123890.html 安装环境: win7+Py3.6 +FF45 (ESR version) +seleniu ...
- 《手把手教你》系列技巧篇(三十二)-java+ selenium自动化测试-select 下拉框(详解教程)
1.简介 在实际自动化测试过程中,我们也避免不了会遇到下拉选择的测试,因此宏哥在这里直接分享和介绍一下,希望小伙伴或者童鞋们在以后工作中遇到可以有所帮助. 2.select 下拉框 2.1Select ...
随机推荐
- python 批量ping服务器
最近在https://pypi.python.org/pypi/mping/0.1.2找到了一个python包,可以用它来批量ping服务器,它是中国的大神写的,支持单个服务器.将服务器IP写在txt ...
- 从零开始写C# MVC框架之--- 配置log4日志
在框架中配置日志分2步,一个是在帮助项目Zy.Utilities--Zy.Utility.Core中新建log类,封装写入日志方法,还需要在Zy.Utility.Core添加 log4net 的引用 ...
- win 环境下 node.js环境变量
在win 环境下 node.js环境变量有两种情况: (1)开发环境(development):开发环境是程序猿们专门用于开发的服务器,配置可以比较随意, 为了开发调试方便,一般打开全部错误报告. ...
- 折半查找——Java实现
一.查找思想 折半查找 也称为二分查找,是一种效率较高的查找方法,查找时要求表中的节点按关键字的大小排序,并且要求线性表顺序存储. 首先用要查找的关键字值(key)与中间位置结点的关键字值(arr[m ...
- Thrift笔记(二)--Thrift框架分层设计
thrift架构设计使用了分层设计,类似TCP/IP分层,上次使用下层提供的服务.分层设计在计算机中是一个常用的设计,上层和下层定义好接口或者说协议,下层实现可以随意更换,只要实现好定义的接口和协议就 ...
- 设置cssrem,设置emmet
1.文件->首选项->设置 2.搜索cssrem-> 点击设置:"cssrem.rootFontSize": 16, 4.emmet
- flash8中利用遮罩制作图片切换效果
http://www.56.com/w73/play_album-aid-8642763_vid-NDY5ODU2Mzg.html
- 修改mysql编码方式
第一种: 通过mysql命令行修改: 1)首先查看数据库字符编码,命令为: show variables like’collation_%’; show variables like’char ...
- Spring MVC controller控制器映射无法访问问题!!!
月 26, 2019 2:47:58 上午 org.apache.coyote.AbstractProtocol start信息: Starting ProtocolHandler ["aj ...
- 利用SQL Server Management Studio(SSMS)复制数据库
利用SQL Server Management Studio(SSMS)复制数据库 标签(空格分隔): SQLServer 前言 今天由于客户购买的软件版本确认了,而之前进行开发的本地数据库版本较低, ...