selenium怎么驱动谷歌浏览器(selenium驱动chrome)

很多朋友对于selenium怎么驱动谷歌浏览器和selenium驱动chrome不太懂,今天就由小编来为大家分享,希望可以帮助到大家,下面一起来看看吧!

selenium怎么驱动谷歌浏览器(selenium驱动chrome)

本文目录

  1. 怎么用python做自动化测试
  2. Selenium怎样驱动Firefox浏览器
  3. python+selenium调用IE:打不开浏览器时的设置
  4. python selenium设置浏览器参数
  5. 如何使用selenium 驱动chrome浏览器并且打开方式为手机模式
  6. 如何设计多浏览器支持 在selenium框架中

一、怎么用python做自动化测试

这里以web自动化测试为例,简单介绍一下如何使用python进行web自动化测试,主要用到selenium这个框架,实验环境win10+python3.6,主要内容如下:

1.首先,安装selenium框架,这个直接在cmd窗口输入命令“pipinstallselenium”就行,如下,安装非常快:

2.安装完成后,还需要安装浏览器驱动程序,不然直接运行程序会报错,以谷歌浏览器chrome为例,需要下载chromedriver驱动程序,如下,这里chromedriver的版本必须要与自己平台浏览器的版本匹配:

下载完成后,是一个zip压缩包,里面就一个chromedriver.exe文件,这里需要将这个文件复制到python安装目录下,如下:

3.最后,我们就可以进行selenium框架测试了,测试代码如下,非常简单,创建一个webdriver,如果能正常打开对应网页,则说明selenium安装成功:

之后就可以直接定位相关元素,进行web自动化测试了,主要方法如下(共有8种),分别是id、name、classname、tagname、linktext、partiallinktext、xpath和cssselector,这里可以自行测试,相关资料非常丰富:

至此,我们就完成了pythonweb自动化测试框架selenium的安装和简单使用。总的来说,整个过程非常简单,只要你有一定的python基础,熟悉一下上面的安装过程,很快就能搭建好本地selenium自动化测试框架,网上也有相关教程和资料,介绍的非常详细,感兴趣的话,可以搜一下,希望以上分享的内容能对你有所帮助吧,也欢迎大家评论、留言进行补充。

二、Selenium怎样驱动Firefox浏览器

一、Selenium怎样驱动Firefox浏览器:

首先打开Selenium的官网,在地址栏输入

好了,这就是三个需要下载的东西:

然后解压,添加.jar包到你的工程里面

把这个放到你的Firefox浏览器的安装目录下:

如果你是用Maven来构建的话,就就不用去Selenium的官网下载,只需要以下几行:

<groupId>org.seleniumhq.selenium</groupId>

<artifactId>selenium-firefox-driver</artifactId>

<version>3.4.0</version>

版本号可以随便修改,官网上最新的是3.5.3;

如果你用的是Gradle来构建的话,只需要一行:

compile'org.seleniumhq.selenium:selenium-firefox-driver:3.5.3'

好了,引入第三方依赖的准备工作都完成了,让我们开始写代码:

import org.openqa.selenium.WebDriver;

import org.openqa.selenium.firefox.FirefoxDriver;

import java.util.concurrent.TimeUnit;

public static void main(String[] args){

WebDriver driver;//声明WebDriver

System.setProperty("webdriver.firefox.marionette","C:\\Program Files\\Mozilla Firefox\\firefox.exe");

String Url="";//百度的地址

driver=new FirefoxDriver();//new一个FirefoxDriver()

driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);//设置显式等待10秒钟

driver.get(Url);//打开百度首页

driver.manage().window().maximize();//把浏览器窗口最大化

Thread.sleep(3000);//让线程等待3秒钟

} catch(InterruptedException e){

成功的启动了Firefox浏览器,并且打开了百度;

这里需要注意的是Firefox的版本不能是官网上最新的,因为Firefox迭代的太频繁了,我用的是46,这里有一个历史版本的地址:

System.setProperty("webdriver.firefox.marionette","C:\\Program Files\\Mozilla Firefox\\firefox.exe");

三、python+selenium调用IE:打不开浏览器时的设置

1.在IE浏览器的 设置>internet选项>安全下,将四个区域中启用保护模式的状态保持一致(全部取消勾选或者全部勾选),应用并确定。

2.禁用【高级】中的“启用增强保护模式”

4.若IE版本为11,则需要修改注册表:win+R-->regedit

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BFCACHE

如果key值不存在,就添加。之后在key内部创建一个iexplorer.exe,DWORD类型,值为0,如下图所示:

5.之后selenium即可打开IE浏览器

四、python selenium设置浏览器参数

为了避免每次运行程序都打开一个窗口,我们也可以设置无窗口访问,只需添加浏览器参数即可:

from selenium import webdriver

from selenium.webdriver.chrome.options import Options

url=' ;

chrome_options.add_argument('--headless')

chrome_options.add_argument('lang=zh_CN.utf-8')

UserAgent='Mozilla/5.0(Windows NT 10.0; Win64; x64) AppleWebKit/537.36(KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36'

chrome_options.add_argument('User-Agent='+ UserAgent)

driver= webdriver.Chrome(chrome_options=chrome_options)

指定用户文件夹 User Data路径,可以把书签这样的用户数据保存在系统分区以外的分区–-user-data-dir=”[PATH]”

指定缓存Cache路径–-disk-cache-dir=“[PATH]”指定Cache大小,单位Byte–-disk-cache-size=100

禁用Javascript–-disable-javascript#禁止加载所有插件,可以增加速度--disable-plugins

禁用JavaScript--disable-javascript

禁用弹出拦截--disable-popup-blocking

设置代理chrome_options.add_argument('--proxy-server=http://{ip}:{port}')#

五、如何使用selenium 驱动chrome浏览器并且打开方式为手机模式

1、可以通过selenium+android server.apk的方式实现

其原理是将android server.apk当做一个浏览器,使用selenium2.0的jar包初始化AndroidDriver。在此apk中去进入一个wap端链接(m.baidu.com),再去识别元素,进行自动化

2、通过Appium+ChromeDriver方式,在手机端安装手机chrome浏览器,使用appium依然初始化AndroidDriver,启动chrome,此时可以去get链接URL,实现wap自动化。需要注意是chromeDriver的版本和手机端chrome浏览器一致。

ps,chrome启动为手机模式,至今未实现

六、如何设计多浏览器支持 在selenium框架中

driver_manager--通过type参数启动不同的浏览器driver

test_manager--通过type参数生成不同的类,实现多浏览器支持

*:注意单独调试的时候需要在开头加上sys.path.append(r'D:\test_browser'),否则from lib.base.util import Util会报错

XXXPage实现每个page页功能,如创建bug、创建文档功能

成员变量type,driver,config_file

在setup和teardown中实现driver启停

TestXXXPage实现每个page页测试用例

写用例的时候先写page再写对应的case

url=

dir_screenshot=D:/test_browser/data/screenshot

config=ConfigParser.ConfigParser()

config.read('base.conf')

print config.get('info','qa_user')

采用类的继承方式生成针对不同浏览器的类,实现多浏览器支持

new_classname=str(clz.__name__)+'-'+str(type).capitalize()#驼峰式写法,首字母大写

new_clz=classobj(new_classname,(clz,),{'type':type})

return unittest.makeSuite(new_clz)

好了,关于selenium怎么驱动谷歌浏览器和selenium驱动chrome的问题到这里结束啦,希望可以解决您的问题哈!

声明:信息资讯网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,版权归原作者东方体育日报所有。若您的权利被侵害,请联系 删除。

本文链接:http://www.gdxhedu.com/news/179352.html