Zalenium使用

 

 

 

zalenium是一种以容器方式来动态创建和管理本地Selenium Grid的扩展。它使用docker-selenium在本地运行基于Firefox和Chrome的测试。

前提条件

1、安装Docker Engin,版本 > = 1.11.1(可能适用于早期版本,尚未测试)。

2、docker daemon 正在运行(例如,docker info可以正常工作)。

准备

1、拉取 docker-selenium镜像。

docker pull elgalu/selenium

注:这里拉取的是非官方的docker-selenium镜像。

2、拉取zalenium镜像。

docker pull dosel/zalenium

运行

zalenium 用docker来动态按需扩展浏览器容器实例,所以我们需要将主机的docker.sock挂载到zalenium容器中。

--privileged 为可选项,建议运行zalenium的privileged参数,通过Haveged增加熵(entropy)水平节点注册过程的速度。因为它可以提高其性能。

docker run --rm -ti --name zalenium -p 4444:4444 \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -v /tmp/videos:/home/seluser/videos \
    --privileged dosel/zalenium start

停止运行

 docker stop zalenium

快速测试

使用selenium.Remote连接云服务http://localhost:4444/wd/hub:

from selenium import webdriver
import time

caps = {
    'platform': 'ANY',
    'browserName': 'chrome',
    'version': '',
    # 'zal:name': '测试百度搜索',   # 指定zelenium中会话的名称
    # 'zal:tz': 'Asia/Shanghai',   # 设置zelenium中的时区
}
dr = webdriver.Remote('http://localhost:4444/wd/hub', desired_capabilities=caps)
dr.get('https://www.baidu.com')
dr.find_element('id', 'kw').send_keys('2021')
dr.find_element('id', 'su').click()
dr.quit()

其他功能

Dashboard控制面板,在测试完成后,可以查看所有的测试的视频回放和日志。

可以在浏览器中访问:http://localhost:4444/dashboard查看。

注意:视频录制,默认在/tmp/videos文件夹可以找到保存的视频。

更多功能:https://opensource.zalando.com/zalenium/#docker

 



posted @ 2021-01-05 13:52  -零  阅读(751)  评论(0编辑  收藏  举报