Selenium (1) —— Selenium安装与测试(101 Tutorial)


jvm版本: 1.8.0_65

selenium版本: v2.48.0 (Standalone Selenium Server)

参考来源:

Selenium官方下载

Use Selenium Grid to enhance testing of web applications

Homebrew

安装

  • 安装selenium server

有brew的童鞋可以很方便的通过命令行安装

$ brew install selenium-server-standalone

然后运行

$ selenium-server -port 4444

$ selenium-server -role hub -port 4444

前一命令默认以单节点方式运行,后一个命令以grid方式运行。

没有brew的童鞋,可以通过从官方网站下载jar包,然后用java运行

java -jar selenium-server-standalone-2.48.0.jar -role hub

本篇我们着重介绍webdriver和以grid方式运行安装与配置。

  • 安装selenium webdriver

selenium webdriver对多种浏览器都有支持,由于我的测试环境是Mac OS,以下我们主要介绍safari、phantomjs、chrome、firefox、opera这几种浏览器。

首先我们通过gem命令行安装selenium webdriver

$ sudo gem install selenium-webdriver

此时会遇到类似以下错误

“unable to convert "\xE0" from ASCII-8BIT to UTF-8
for lib/selenium/webdriver/firefox/native/linux/amd64/x_ignore_nofocus.so,
skipping“

解决方案是加上命令参数

$ sudo gem install selenium-webdriver --no-document

如果ruby被墙了,大家可以自行切换ruby source

$ gem sources --remove https://rubygems.org/
$ gem sources -a https://ruby.taobao.org/

安装完毕后,我们尝试启动各个webdriver并且将其注册到selenium server hub上。

注意在启动注册之前,我首先要启动selenium server hub。

$ selenium-server -role hub -port 4444

测试

分别为几种不同的浏览器指定端口

  • [1231]-safari

      $ selenium-server -role node -hubHost localhost -hubPort 4444 -browser "browserName=safari,setjavascriptEnabled=true,acceptSslCerts=true,maxInstances=5,Platform=MAC" -port 1231

    maxInstances=5 表示有5个实例

  • [1232]-phantomjs

      $ selenium-server -role node -hubHost localhost -hubPort 4444 -browser "browserName=phantomjs,setjavascriptEnabled=true,acceptSslCerts=true,maxInstances=4,Platform=MAC" -port 1232
  • [1233]-chrome

      $ selenium-server -role node -hubHost localhost -hubPort 4444 -browser "browserName=chrome,setjavascriptEnabled=true,acceptSslCerts=true,maxInstances=2,Platform=MAC" -port 1233
  • [1234]-firefox

      $ selenium-server -role node -hubHost localhost -hubPort 4444 -browser “browserName=firefox,setjavascriptEnabled=true,acceptSslCerts=true,maxInstances=4,Platform=MAC" -port 1234
  • [1235]-opera

      $ selenium-server -role node -hubHost localhost -hubPort 4444 -browser "browserName=opera,setjavascriptEnabled=true,acceptSslCerts=true,maxInstances=2,Platform=MAC" -port 1235

启动注册完毕后,我们可以通过http://localhost:4444/grid/console查看各个浏览器代理的状态

结束

Selenium (1) —— Selenium安装与测试(101 Tutorial)的更多相关文章

  1. Selenium (3) —— Selenium IDE + Firefox录制登录脚本(101 Tutorial)

    Selenium (3) -- Selenium IDE + Firefox录制登录脚本(101 Tutorial) selenium IDE版本: 2.9.1 firefox版本: 39.0.3 参 ...

  2. JMeter (1) —— JMeter与WebDriver安装与测试(101 Tutorial)

    JMeter (1) -- JMeter与WebDriver安装与测试(101 Tutorial) 主要内容 JMeter安装 WebDriver安装 一个简单的JMeter+WebDriver示例 ...

  3. Selenium (2) —— Selenium WebDriver + Grid2(101 Tutorial)

    Selenium (2) -- Selenium WebDriver + Grid2(101 Tutorial) jvm版本: 1.8.0_65 selenium版本: v2.48.0 (Standa ...

  4. Selenium (4) —— Selenium是什么? WebDriver是什么?做什么?(101 Tutorial)

    Selenium (4) -- Selenium是什么? WebDriver是什么?做什么?(101 Tutorial) selenium版本: v2.48.0 (Standalone Seleniu ...

  5. JMeter (2) —— JMeter与WebDriver测试用户登陆以CAS SSO为例(101 Tutorial)

    JMeter (2) -- JMeter与WebDriver测试用户登陆以CAS SSO为例(101 Tutorial) 主要内容 JMeter与WebDriver测试用户登陆以CAS SSO为例 环 ...

  6. Selenium IDE和Selenium RC的安装

    1       安装FireBug和FirePath 1.在火狐浏览器中,点击”添加附件”按钮,弹出”附加组件管理器”页面 2.在弹出页面中,输入“fireBug”,点击“搜索”按钮,弹出fireBu ...

  7. 【转】selenium简介及安装方法

    转自:http://www.cnblogs.com/fnng/p/3157639.html 1. selenium 介绍 selenium 是一个web 的自动化测试工具,不少学习功能自动化的同学开始 ...

  8. selenium结合docker构建分布式测试环境

    selenium是目前web和app自动化测试的主要框架.对于web自动化测试而言,由于selenium2.0以后socker服务器由本地浏览器自己启动且直接通过浏览器原生API操作页面,故越来越多的 ...

  9. JMeter (3) —— JMeter录制脚本并压力测试用户登陆场景以CAS SSO为例(101 Tutorial)

    JMeter (3) -- JMeter录制脚本并压力测试用户登陆场景以CAS SSO为例(101 Tutorial) 主要内容 JMeter录制脚本并进行压力测试用户登陆场景,并以CAS SSO单点 ...

随机推荐

  1. [Perforce]password (P4PASSWD) invalid or unset. 的错误解决

    前言 使用 Perforce , 能够使用Perforce 的Client 端. 有时候在编写一些脚本或代码的时候, 可能或使用到 Perforce的命令的方式. 正常状况下. 使用例如以下命令: p ...

  2. pdm画表间结构

    PDM(物理概念模型)各种属性建立如PK,AK等 https://blog.csdn.net/qq_27376871/article/details/51321609 CDM: ER图详细教程 通常在 ...

  3. Python MySQLdb insert(插入) 封装

    def insert_data(dbName,data_dict): try: data_values = "(" + "%s," * (len(data_di ...

  4. Web Service 或 WCF调用时读取 XML 数据时,超出最大字符串内容长度配额(8192)解决方法

    1.调用服务时服务 当我们使用 Web Service 或 WCF 服务时,常把读取的数据转化为string类型(xml格式),当数据量达到一 定数量时,会出现以下异常: 错误:格式化程序尝试对消息反 ...

  5. python执行selenium报错

    python + unittest + HTMLTestRunner 执行suite用例报错 Traceback (most recent call last): File "C:/ws/S ...

  6. Linux 查看文件 cat与 more 用法

    1.cat 显示文件连接文件内容的工具: cat 是一个文本文件查看和连接工具.查看一个文件的内容,用cat比较简单,就是cat 后面直接接文件名. 比如: [root@localhost ~]# c ...

  7. 如何分析Java程序中的死锁

    使用下面方式:产生java的Thread Dump信息 windows平台上:ctrl+break 或者 ctrl+(fn+b)键 Linux平台上:kill -3 pid (查找程序进程id -&g ...

  8. Oozie-coordinator调度

    当有一个复杂的工作流job,希望每天定时执行,使用crontab方式调用需要编写大量的脚本,还要通过大量的判断来控制每个工作流job的执行顺序问题.Oozie中的Coordinator可以让每个工作流 ...

  9. JavaScript DOM API初步(整理)

    文档对象模型 文档对象模型(Doucment Object Model,DOM)是表示文档(如HTML文档.XML文档)和访问.操作构成文档的各种元素的应用程序接口.在DOM中,HTML文档的层次结构 ...

  10. Atitti 固化数据库表结构方案

    Atitti 固化数据库表结构方案 1. 固化数据库表结的重要意义1 2. 如何固化表结构1 2.1. 向上抽象一层,以动词有目标,以名词为存储对象.1 2.2. 数据类型datatype字段:这个用 ...