摘要:
''' from time import sleep from selenium import webdriver driver = webdriver.Chrome() driver.implicitly_wait(50) driver.get("http://videojs.com/") vid 阅读全文
posted @ 2020-02-15 22:05
gupanpan
阅读(92)
评论(0)
推荐(0)
摘要:
'''有时我们需要验证浏览器中的 cookie 是否正确, 因为基于真实的 cookie 是无法通过白盒测试 和 集成测试的。 WebDriver 提供了操作 cookie 的相关方法, 可以读取、 添加和删除 cookieWebDriver 操作 cookie 的方法如下: get_cookies 阅读全文
posted @ 2020-02-15 22:04
gupanpan
阅读(55)
评论(0)
推荐(0)
摘要:
'''有些页面的操作不能用 WebDriver 提供的 API 来实现, 如浏览器的滚动条拖动。这时就需要借助 JavaScript 脚本WebDriver 提供了 Execute_script() 方法来执行JavaScript 代码。调整浏览器滚动条位置的 JavaScript 代码如下<!-- 阅读全文
posted @ 2020-02-15 22:02
gupanpan
阅读(85)
评论(0)
推荐(0)
该文被密码保护。 阅读全文
posted @ 2020-02-15 21:52
gupanpan
阅读(0)
评论(0)
推荐(0)
摘要:
# 下载文件'''WebDriver 允许我们设置默认的文件下载路径, 也就是说,文件会自动下载存放到设置的目录,不同浏览器设置方式不同下面是以 Firefox 为例''' import os from selenium import webdriver fp = webdriver.Firefox 阅读全文
posted @ 2020-02-15 21:51
gupanpan
阅读(233)
评论(0)
推荐(0)
摘要:
'''下拉框是 Web 页面的常见功能之一, WebDriver 提供了 Select 类来处理下拉框Select 类 用于定位<select> 标签select_by_value() 通过 value 值定位下拉框select_by_vasible_text 通过 text 值定位下拉框selec 阅读全文
posted @ 2020-02-15 21:50
gupanpan
阅读(57)
评论(0)
推荐(0)
摘要:
# 上传文件'''上传文件是比较常见的 Web 功能之一,但 WebDriver 没有专门用于上传文件的方法实现文件上传的关键在于思路,一般通过以下两种方式上传文件 普通上传: 将本地文件路径作为一个值放在 input 标签中, 通过 form 表单将这个值提交给服务器 插件上传: 一般是指基于 F 阅读全文
posted @ 2020-02-15 21:49
gupanpan
阅读(56)
评论(0)
推荐(0)
摘要:
# -*- coding: utf-8 -*- from os.path import dirname, abspath import sys from selenium import webdriver filePath = dirname(abspath(__file__)) print(fil 阅读全文
posted @ 2020-02-15 21:48
gupanpan
阅读(64)
评论(0)
推荐(0)
摘要:
'''在 WebDriver 中处理 JavaScript 生成的 alert、confirm 和 prompt 十分简单,具体做法是:首先使用 switch_to.alert() 方法定位然后使用, text、 accept、 dismiss、 send_keys 等进行操作''' from se 阅读全文
posted @ 2020-02-15 21:47
gupanpan
阅读(90)
评论(0)
推荐(0)
摘要:
# 多表单切换''' 在 Web 应用中,经常会遇到 frame/iframe 表单嵌套页面的应用,WebDriver 只能在一个页面上对 元素进行识别和定位,无法直接定位 frame/iframe 表单内嵌页面上的元素 这时需要通过 switch_to.frame() 方法切换表单 switch_ 阅读全文
posted @ 2020-02-15 21:46
gupanpan
阅读(155)
评论(0)
推荐(0)
摘要:
DDT DDT ( Data-Driven Test) 是针对 unittest 单元测试框架设计的扩展库。 允许使用不同的测试数据来运行一个测试用例。 pip install ddt pip install ddt #如果 ddt 引用了 yaml 系统上要安装 pyyalm pip instal 阅读全文
posted @ 2020-02-15 21:45
gupanpan
阅读(251)
评论(0)
推荐(0)
摘要:
''' 在页面操作过程中,有时单击某个连接会弹出新的窗口,这时就要切换到新打开的窗口进行操作。 WebDriver 提供 switch_to_window() 方法可以实现不同窗口的切换current_window_handle 获得当前窗口的句柄window_handles 获得所有窗口的句柄sw 阅读全文
posted @ 2020-02-15 21:44
gupanpan
阅读(130)
评论(0)
推荐(0)
摘要:
# WebDriver 提供了两种类型的元素等待方式:显示等待 和 隐式等待# 显示等待是 WebDriver 等待某个条件成立则继续执行,否则在达到最大时长时抛出超时异常(TimeoutException) from selenium import webdriver from selenium. 阅读全文
posted @ 2020-02-15 21:36
gupanpan
阅读(144)
评论(0)
推荐(0)
摘要:
# WebDriver 提供 implicitly_wait() 方法可以用来实现隐式等待,用法相对来说要简单得多 from time import sleep, ctime from selenium import webdriver driver = webdriver.Firefox() dr 阅读全文
posted @ 2020-02-15 21:34
gupanpan
阅读(202)
评论(0)
推荐(0)
摘要:
# WebDriver 还提供了 8 种用于定位一组元素的方法'''find_elements_by_id()find_elements_by_name()find_elements_by_class_name()find_elements_by_tag_name()find_elements_by 阅读全文
posted @ 2020-02-15 21:31
gupanpan
阅读(85)
评论(0)
推荐(0)
摘要:
# 获得验证信息# 在 Web 自动化测试中,用得最多的几种验证信息是 title、 current_url 和 text# title 用户获取当前页面的标题# current_url 用于获取当前页面的 url# text 获取当前页面的文本信息 from selenium import web 阅读全文
posted @ 2020-02-15 21:27
gupanpan
阅读(88)
评论(0)
推荐(0)
摘要:
# 鼠标操作# 在 WebDriver 中,与鼠标操作相关的方法都封装在 ActionChains 类中# ActionChains 类提供了鼠标操作的常用方法# perform() 执行 ActionChains 类中存储的所有行为# context_click() 右击# double_clic 阅读全文
posted @ 2020-02-15 21:25
gupanpan
阅读(74)
评论(0)
推荐(0)
摘要:
# 键盘操作# send_keys() 方法可以用来模拟键盘输入, 我们还可以用它模拟键盘上的按键, 甚至组合键Ctrl + a ,Ctrl + c 等 from selenium import webdriver from selenium.webdriver.common.keys import 阅读全文
posted @ 2020-02-15 20:46
gupanpan
阅读(68)
评论(0)
推荐(0)
摘要:
数据驱动应用 数据驱动应用是自动化测试里的一个重要功能,虽然不使用单元测试框架也一样可以写测试代码和使用数据文件,但这意味着放弃了单元测试框架提供给我们的所有功能,如 测试用例断言、 灵活的运行机制、 结果统计和测试报告等。 这些都要去自己去实现。显然非常麻烦。 所以抛开测试框架谈数据驱动是没有意义 阅读全文
posted @ 2020-02-15 20:25
gupanpan
阅读(2431)
评论(0)
推荐(0)
摘要:
# 控制浏览器的后退、 前进和刷新 from selenium import webdriver from time import sleep driver = webdriver.Firefox() # 访问百度首页 first_url = 'http://www.baidu.com' print 阅读全文
posted @ 2020-02-15 20:23
gupanpan
阅读(400)
评论(0)
推荐(0)
摘要:
# WebDriver 中常用的方法# clear() 清除文本# send_keys(value) 模拟键盘输入# click() 单击元素 from selenium import webdriver driver = webdriver.Firefox() driver.get("http:/ 阅读全文
posted @ 2020-02-15 18:18
gupanpan
阅读(324)
评论(0)
推荐(0)
摘要:
WebDriver API从元素开始定位 页面有输入框、 按钮、 文字连接、 图片等元素, 自动化测试就是模拟鼠标、 键盘来操作这些元素, 如 单击、 输入、 鼠标悬停 等 而操作这些元素首先要定位他们 页面元素都是由 HTML 代码构成,他们之间有层级地组织起来,每个元素都有不同的标签名和属性值, 阅读全文
posted @ 2020-02-15 18:10
gupanpan
阅读(71)
评论(0)
推荐(0)
摘要:
# 控制浏览器# 控制浏览器窗口大小# WebDriver 提供 set_window_size() 方法可以用来设置浏览器窗口大小 from selenium import webdriver driver = webdriver.Firefox() driver.get("http://www. 阅读全文
posted @ 2020-02-15 17:46
gupanpan
阅读(328)
评论(0)
推荐(0)
摘要:
# 异常# Python 用异常对象 (Except Object) 来表示异常情况。 当遇到错误后,异常对象会引发异常。# 如果异常对象并未被处理或捕捉到, 则程序会回溯(Traceback 一种错误信息)来终止程序。# python 提供 try except 语句来捕捉并处理异常。 try: 阅读全文
posted @ 2020-02-15 17:44
gupanpan
阅读(69)
评论(0)
推荐(0)
摘要:
# 自定义模块# 跨目录调用文件 # sys.path 显示的是可以调用的目录, import sys print(sys.path) # 我们只需将别的目录的文件所在的目录添加到 path 中即可调用该目录下的所有的python文件 import sys sys.path.append('D:\\ 阅读全文
posted @ 2020-02-15 17:40
gupanpan
阅读(190)
评论(0)
推荐(0)
摘要:
# python 基础 之 模组# 1. 调用 time 模块 import time print(time.ctime()) # 2. 当然如果确定只调用 time 模块里的 ctime() 函数,那么可以用 from import 直接导入 ctime() 函数。 from time impor 阅读全文
posted @ 2020-02-15 17:11
gupanpan
阅读(90)
评论(0)
推荐(0)
摘要:
# 编写自测代码 # 创建 add() 函数 def add(x, y): return x + y def divice(x, y): return x - y # if __name__ == '__main__' 表示当前模块被直接运行时,下面的代码块将被运行; 当模块被其他模块调用时,下面的 阅读全文
posted @ 2020-02-15 17:08
gupanpan
阅读(122)
评论(0)
推荐(0)
摘要:
浏览器驱动:设置浏览器驱动的方法很简单,我们可以手动创建一个浏览器驱动目录,如:D:/driver, 将下载的浏览器驱动文件(例如: ChromeDriver、 GeckoDriver)放到该目录下,然后将该目录添加到 Path 中验证浏览器驱动: from selenium import webd 阅读全文
posted @ 2020-02-15 14:51
gupanpan
阅读(126)
评论(0)
推荐(0)
摘要:
# 第一个 selenium 自动化测试脚本 from selenium import webdriver driver = webdriver.Firefox() driver.get("http://www.baidu.com") driver.find_element_by_id('kw'). 阅读全文
posted @ 2020-02-15 14:50
gupanpan
阅读(103)
评论(0)
推荐(0)
摘要:
appium 简介appium 是当前移动平台上主流的自动化测试工具之一。appium 是一个合成词, 由“application” 和 “Selenium” 的分解组成,appium 与 selenium之间有继承关系。appium 的寓意是移动短的selenium自动化测试工具appium 是一 阅读全文
posted @ 2020-02-15 14:49
gupanpan
阅读(135)
评论(0)
推荐(0)
该文被密码保护。 阅读全文
posted @ 2020-02-15 14:46
gupanpan
阅读(0)
评论(0)
推荐(0)
摘要:
from selenium import webdriver from time import sleep from module import Mail dataFile = open("./data_file/user_info.txt") data = dataFile.readlines() 阅读全文
posted @ 2020-02-15 14:44
gupanpan
阅读(744)
评论(0)
推荐(0)
摘要:
unittest 单元测试框架总结unittest单元测试框架不仅可以适用于单元测试,还可以适用WEB自动化测试用例的开发与执行,该测试框架可组织执行测试用例,并且提供了丰富的断言方法,判断测试用例是否通过,最终生成测试结果。 今天笔者就总结下如何使用unittest单元测试框架来进行WEB自动化测 阅读全文
posted @ 2020-02-15 14:43
gupanpan
阅读(165)
评论(0)
推荐(0)
摘要:
# 读取 json 文件 import json with open("./data_file/user_info.json", "r") as f: data = f.read() userList = json.loads(data) print(userList) for userInfo i 阅读全文
posted @ 2020-02-15 14:42
gupanpan
阅读(300)
评论(0)
推荐(0)
摘要:
# 读取 XML 文件 from xml.dom.minidom import parse dom = parse('./data_file/config.xml') root = dom.documentElement # 获得标签之间的数据 browserName = root.getEleme 阅读全文
posted @ 2020-02-15 14:41
gupanpan
阅读(137)
评论(0)
推荐(0)
摘要:
import os dir0 = os.path.dirname(__file__) # 当前文件所在的文件夹的路径 dir1 = os.path.abspath(__file__) # 当前文件的绝对路径 dir2 = os.path.dirname(os.path.abspath(__file_ 阅读全文
posted @ 2020-02-15 14:39
gupanpan
阅读(94)
评论(0)
推荐(0)
摘要:
# 读取 CSV 文件 import csv import codecs from itertools import islice data = csv.reader(codecs.open('./data_file/user_info.csv', 'r')) # data 是一个迭代对象,本身并不 阅读全文
posted @ 2020-02-15 14:38
gupanpan
阅读(155)
评论(0)
推荐(0)
该文被密码保护。 阅读全文
posted @ 2020-02-15 14:37
gupanpan
阅读(0)
评论(0)
推荐(0)
该文被密码保护。 阅读全文
posted @ 2020-02-15 14:36
gupanpan
阅读(0)
评论(0)
推荐(0)
摘要:
import smtplib from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipart # 发送邮件的主题 subject = 'Python send email test' # 发送的附 阅读全文
posted @ 2020-02-15 14:34
gupanpan
阅读(144)
评论(0)
推荐(0)
摘要:
import unittest from time import sleep from selenium import webdriver class TestBaidu(unittest.TestCase): """测试百度""" @classmethod def setUpClass(self) 阅读全文
posted @ 2020-02-15 14:33
gupanpan
阅读(87)
评论(0)
推荐(0)
摘要:
import unittest '''这个测试 setUpModule/tearDownModule ''' def setUpModule(): print("test module start >>>>>>>>>>>>>>>>>>>>>>>>") def tearDownModule(): pr 阅读全文
posted @ 2020-02-15 14:32
gupanpan
阅读(97)
评论(0)
推荐(0)
摘要:
import unittest testDir = './' suits = unittest.defaultTestLoader.discover(testDir, pattern='test*.py') if __name__ == '__main__': unittest.TextTestRu 阅读全文
posted @ 2020-02-15 14:31
gupanpan
阅读(977)
评论(0)
推荐(0)
摘要:
import unittest class MyTest(unittest.TestCase): """测试 skip """ @unittest.skip('直接跳过测试') def test_skip(self): print("test aaa") @unittest.skipIf(3<2, 阅读全文
posted @ 2020-02-15 14:27
gupanpan
阅读(193)
评论(0)
推荐(0)
摘要:
from calculator import Calculator import unittest class TestCalculator(unittest.TestCase): def test_add(self): c = Calculator(3, 5) result = c.add() s 阅读全文
posted @ 2020-02-15 14:26
gupanpan
阅读(228)
评论(0)
推荐(0)
摘要:
import unittest class TestAssert(unittest.TestCase): def testEqual(self): self.assertEqual(2+2, 4) self.assertEqual('python', 'python') self.assertEqu 阅读全文
posted @ 2020-02-15 14:25
gupanpan
阅读(99)
评论(0)
推荐(0)
摘要:
基本概念: 1、库 库的英文单词是 LIbrary,库是由代码集合成的一个产品,可供程序员调用。 面向对象的代码组织形成的库叫类库,面向过程的代码组织形成的库叫函数库。 例如,WebDriver 就属于哭的范畴,它提供了一组操作 Web 页面的的类和方法,所以称它为 Web 自动化测试库 2、框架 阅读全文
posted @ 2020-02-15 14:24
gupanpan
阅读(93)
评论(0)
推荐(0)
摘要:
unittest 单元测试框架 单元测试是一项对技术要求很高的工作,只有白盒测试人员和软件测试人员才能胜任,但用单元测试框架做单元测试却十分简单,而且单元测试框架不仅可以用来做单元测试,它还适用于不同类型的“自动化”测试的执行。 下面我们看看它提供了那些功能。 1. 提供用例组织和执行 在 Pyth 阅读全文
posted @ 2020-02-15 14:19
gupanpan
阅读(157)
评论(0)
推荐(0)
摘要:
import smtplibfrom email.mime.text import MIMETextfrom email.header import Header# 发送邮件的主题subject = 'Python email test'# 编写 HTML 类型的邮件正文msg = MIMEText 阅读全文
posted @ 2020-02-15 14:18
gupanpan
阅读(223)
评论(0)
推荐(0)
摘要:
适合自动化测试的项目: 1. 任务测试明确,不会频繁变动 2. 每日构建后的测试验证 3. 比较频繁的回归测试 4. 软件系统界面稳定 5. 需要在多平台上运行相同的测试案例、 组合遍历型的测试,以及大量的重复任务 6. 软件维护周期长 7. 项目进度压力不太大 8. 北侧软件系统开发较为规范, 能 阅读全文
posted @ 2020-02-15 12:22
gupanpan
阅读(406)
评论(0)
推荐(0)
摘要:
Sublimetext3使用Virtulalenv插件进去Pyhton虚拟环境,步骤: 1. 添加Virtualenv插件:ctrl+shift+p出现悬浮框,输入package,然后选择 package control–install package,输入virtualenv,选择它回车即可安装, 阅读全文
posted @ 2020-02-15 12:03
gupanpan
阅读(710)
评论(0)
推荐(0)
摘要:
pip经常反应慢,先介绍几个常用的国内pip源 pip install xlrd -i http://pypi.douban.com/simple --trusted-host pypi.douban.com 1)http://mirrors.aliyun.com/pypi/simple/ 阿里云 阅读全文
posted @ 2020-02-15 02:20
gupanpan
阅读(1484)
评论(0)
推荐(0)
浙公网安备 33010602011771号