Python+Selenium学习--浏览器设置
场景
设置浏览器窗口的大小有下面两个比较常见的用途:
- 在统一的浏览器大小下运行用例,可以比较容易的跟一些基于图像比对的工具进行结合,提升测试的灵活性及普遍适用性。比如可以跟sikuli结合,使用sikuli操作flash;
- 在不同的浏览器大小下访问测试站点,对测试页面截图并保存,然后观察或使用图像比对工具对被测页面的前端样式进行评测。比如可以将浏览器设置成移动端大小(320x480),然后访问移动站点,对其样式进行评估;
代码
#!/usr/bin/env python
# -*- coding:utf-8 -*-
'''
Created on 2018/5/9 9:55
@author: Jeff Lee
@file: 浏览器窗口设置.py
'''
from selenium import webdriver
import time print('打开浏览器')
cl = webdriver.Firefox()
time.sleep(2) print('窗口最大化')
cl.maximize_window() time.sleep(2)
print('窗口最小化')
cl.minimize_window() time.sleep(2)
print('窗口设置')
cl.set_window_size(600,300) print('关闭浏览器')
cl.quit()
讨论
webdriver提供了很多调整浏览器窗口的接口,比如set_window_position(设置或获取浏览器的位置)。在一般情况下这些功能并不常用。
参考 http://www.cnblogs.com/nbkhic/tag/%E8%87%AA%E5%8A%A8%E5%8C%96%E6%B5%8B%E8%AF%95/
Python+Selenium学习--浏览器设置的更多相关文章
- 使用Python + Selenium打造浏览器爬虫
Selenium 是一款强大的基于浏览器的开源自动化测试工具,最初由 Jason Huggins 于 2004 年在 ThoughtWorks 发起,它提供了一套简单易用的 API,模拟浏览器的各种操 ...
- 【python+selenium学习】Python常见错误之:IndentationError: unexpected indent
初入python+selenium学习之路,总会遇到这样那样的问题.IndentationError: unexpected indent,这个坑我已经踏进数次了,索性记录下来.都知道Python对代 ...
- python+selenium自动化测试——浏览器驱动
selenium控制浏览器需要下载对应版本的驱动,并把下载好的驱动解压然后拷贝到python的安装目录. 1.chrome 驱动对应版本及下载地址;https://npm.taobao.org/mir ...
- Python+Selenium学习笔记15 - 读取txt和csv文件
读取txt的内容并用百度查找搜索 1 # coding = utf-8 2 3 from selenium import webdriver 4 import time 5 6 # 打开浏览器 7 d ...
- Python+Selenium学习--自动化测试模型
前言 一个自动化测试框架就是一个集成体系,在这一体系中包含测试功能的函数库.测试数据源.测试对象识别标准,以及种可重用的模块.自动化测试框架在发展的过程中经历了几个阶段,模块驱动测试.数据驱动测试.对 ...
- Python+Selenium学习--设置等待时间
场景 sleep():设置固定休眠时间.python 的time 包提供了休眠方法sleep() ,导入time 包后就可以使用sleep()进行脚本的执行过程进行休眠.implicitly_wait ...
- web自动化测试python+selenium学习总结----selenium安装、浏览器驱动下载
一.安装selenium 命令安装selenium库 :pip install -U selenium 查看selenium是否安装成功:pip list PS:有时会有异常,安装失败,可以尝试去s ...
- Python+Selenium学习--控制浏览器控制条
场景 有时候web 页面上的元素并非直接可见的,就算把浏览器最大化,我们依然需要拖动滚动条才能看到想要操作的元素,这个时候就要控制页面滚动条的拖动,但滚动条并非页面上的元素,可以借助JavaScrip ...
- Python+Selenium学习--启动及关闭浏览器
场景 页面上弹出的对话框是自动化测试经常会遇到的一个问题:很多情况下对话框是一个iframe,如之前iframe介绍的例子,处理起来稍微有点麻烦:但现在很多前端框架的对话框是div 形式的,这就让我们 ...
随机推荐
- C# 调用 C++ 的 DLL 返回值为 bool 时,值混乱
现象:C++ 导出函数的返回值为 false,C# 调用该函数获取的返回值却为 true . 原因:C++ 导出函数返回 false 时,采取的方式是: 将 C# 定义的用来接收返回值的 bool 所 ...
- Delphi的程序单元、结构、基础知识(转)
Object Passal的程序结构很特殊,与其它语言如C++,Object Windows等结构都不同.一个Delphi程序由多个称为单元的源代码模块组成.使用单元可以把一个大型程序分成多个逻辑相关 ...
- 趣味编程:静夜思(Python版)
from itertools import groupby def verticalWriting(txt, offset): l = lambda x: x[0] % offset for (_, ...
- linux下mysql开启远程访问权限 防火墙开放3306端口
linux下mysql开启远程访问权限 防火墙开放3306端口 转载 2017-01-21 作者:JAVA-ANDROID 这篇文章主要为大家详细介绍了linux下mysql开启远程访问权限,防 ...
- Delphi XE3通过ADOConnection 连接 MySQL 5.5.27 数据库
Delphi XE3通过ADOConnection 连接 MySQL 5.5.27 数据库 unit Unit1; interface uses Winapi.Windows, Winapi.Mess ...
- Java学习03 (第一遍)
Java是面向对象的语言,函数是面向过程语言的叫法,比如C语言,在Java中一般称之为方法. 构造方法的作用是实例化对象,每个类中都有,即使不写程序也会分配一个默认无参数的构造方法. Java中都是对 ...
- stringBuffer和stringBulider的区别
今天去面试了,问了最基础的stringBuffer和stringBulider的区别,我没有回答出来.之前就知道自己的基础很差,没想到这么差. 网上看了一下资料,stringBuffer和string ...
- Ros系列_学习一
刚入门ROS,不,没入门,还在门口,这是今天的总结: (一)创建一个工作空间 1.创建一个初始工作空间: mkdir -p ~/catkin_ws/src cd ~/catkin_ws/src cat ...
- mysql 数据导出
windowos: select * from pj_zzspdz_fpmx order by kprq desc LIMIT 0,1000000 into outfile 'd:\fpmx.xls ...
- git gitlab 使用 提交代码解决冲突
1.更改完代码后,git push 发生错误 注: 此时,使用 git pull: 更新代码,git 会自动merge不同的更新, a. 如果git 自动merge成功,再进行 git push操作 ...