一.操作cookie 有时候我们需要验证浏览器中cookie是否正确,因为基于真实cookie的测试是无法通过白盒和集成测试的.WebDriver提供了操作Cookie的相关方法,可以读取.添加和删除cookie信息.WebDriver操作cookie的方法:get_cookies(): 获得所有cookie信息get_cookie(name):返回字典的key为“name”的cookie信息add_cookie(cookie_dict):添加cookie,“cookie_dict”指字典对象,…
Selenium 2自动化测试实战 百度网盘 链接:https://pan.baidu.com/s/1aiP3d8Y1QlcHD3fAlEj4sg 提取码:jp8e 复制这段内容后打开百度网盘手机App,操作更方便哦 内容简介  · · · · · · <Selenium 2自动化测试实战——基于Python语言>共分 14 章.第 1 章是自动化测试相关基础知识的介绍:第 2 章到第 10 章是<Selenium 2自动化测试实战——基于Python语言>的重点,循 序渐进地介绍…
一.函数.类和方法1.函数在python中通过def关键字来定义函数 创建一个add()函数,此函数接收两个参数a,b,通过print()打印a+b的结果.调用add()函数,并且上传两个参数3,5给add()函数 通过add()函数不会直接打印结果,而是将处理结果通过return关键字返回,如下图所示 有时我们在调用add()函数的时候不想传参,这时可以为add()函数设置默认参数,如下图所示 如果调用时不传参,那么add()函数就使用默认参数进行计算,如果传参则计算参数的值 2.类和方法2.…
虫师的<Selenium 2自动化测试实战 基于Python语言>是我自动化测试的启蒙书 也是我推荐的自动化测试入门必备书,但是书中有一处明显的错误,会误导很多读者,这处错误就是第8章自动化测试高级应用中,第一节自动发送邮件功能中,8.1.4整合自动发送邮件功能 当我们运行如下代码后,会发现邮件发送成功,但是打开邮件发现邮件中的内容为空 在书中182页我们看到了如下解释. 但是这个解释为错误的,引起无法发送最新报告的内容,其实是因为代码中有一处bug,并非HTMLTestRunner报告文件的…
背景 最近在弄 appium,然后顺便发现了 Selenium 框架和这本书,恰好这本书也介绍了一些软件测试&自动化测试的理论知识,遂拿过来学习学习.所以本文几乎没有实践内容,大多都是概念和工具的 mark,后续若有实践,我会来补充的. 一.软件测试 分类 1.根据项目流程阶段划分 需求分析 设计 编码 单元测试 集成测试 系统测试 验收测试 2.白盒测试.黑盒测试.灰盒测试 白盒测试的意义:有时候输出是正确的,但内部其实已经错误了,这种情况非常多. 灰盒测试的意义:如果每次都通过白盒测试来操作…
1.Selenium2 的原理 第一篇分享简单介绍了基于Python开发的Selenium2的环境配置,这篇主要讲一下基本用法.首先讲一下Selenium2的基本原理.基本上知道了这个东西是怎么回事,我们就知道怎么去用它做自动化测试. 与Selenium和Selenium RC不同,Selenium2将浏览器原生的API封装成WebDriver API,可以直接操作浏览器页面里的元素,甚至操作浏览器本身(截屏,窗口大小,启动,关闭,安装插件,配置证书之类的),所以就像真正的用户在操作一样.其实刚…
一.简单元素操作 1. webdriver中常用的几个方法: clear():清除文本 send_keys(*value):模拟按键输入 click():单击元素 clear()方法用于清除文本输入框中的内容. send_keys()方法模拟键盘向输入框输入内容. click()方法用来单击一个元素,前提是它是可以被单击的对象. 2. webElement接口常用方法:submit()submit()方法用于提交表单.例如:在搜索框输入关键字之后的“回车”操作,就可以通过submit()方法模拟…
下边是自己在学习过程中总结的一些常用键盘的操作…
Page Object设计模式 Page object是selenium自动化测试项目开发时间的最佳设计模式之一,主要体现在对界面交互细节的封装. 1.认识page object优点如下:1.减少代码的重复2.提高测试用例的可读性3.提高测试用例的可维护性,特别是针对UI频繁变化的项目. 2.page object实例下面以登录新浪邮箱为例,通过page object设计模式来实现. #po_model.py #coding:utf-8 from selenium import webdrive…
一.自动化测试模型 自动化测试模型介绍:线性测试.模块化驱动测试.数据驱动测试和关键字驱动测试 线性测试:每个测试脚本相对独立,且不产生其他依赖与调用,只是单纯的来模拟用户完整的操作场景.模块化驱动测试:把重复的操作独立成公共模块,当用例执行过程中需要用到这一模块操作时则被调用.数据驱动测试:就是数据的参数化,因为输入数据的不同从而引起输出结果的不同.不管我们读取的是定义的数组.字典,或者是外部文件(excel.csv.txt.xml等)都可以看做是数据驱动,它的目的就是实现数据与脚本的分离.…