selenoid+docker+selenium運行UI自動化


目的

使用selenoid運行UI自動化測試腳本(運行過程可視化,支持多版本瀏覽器同時運行,可錄像),結合jenkins的使用完成持續集成和自動構建

selenoid簡介

[selenoid官方文檔] https://aerokube.com/selenoid/latest/
[github] https://github.com/aerokube/selenoid

使用docker安裝selenoid

1、拉取相關鏡像

命令:

      docker pull aerokube/selenoid:latest-release
      docker pull aerokube/selenoid-ui
      //拉取一個瀏覽器鏡像
      docker pull selenoid/vnc:chrome_78.0

查看鏡像

docker images

編輯瀏覽器配置文件

文件命名:config/browsers.json
json內容:在版本添加剛才拉取的瀏覽器鏡像版本

{
    "chrome": {
        "default": "78.0",
        "versions": {
		"78.0": {
                "image": "selenoid/vnc:chrome_78.0",
                "port":"4444",
		"path":"/",
                "env" : ["LANG=ru_RU.UTF-8", "LANGUAGE=ru:en", "LC_ALL=ru_RU.UTF-8"]
            }
        }
    }
}

運行鏡像,根據官方文檔相關說明

命令

docker run -d --name selenoid -p 4444:4444 -v /var/run/docker.sock:/var/run/docker.sock -v /selenoid/config/:/etc/selenoid/:ro aerokube/selenoid

運行成功后顯示:

瀏覽器打開:

ip:4444

運行selenoid-ui

官方文檔

http://aerokube.com/selenoid-ui/latest/

命令:

docker run -d --name selenoid-ui -p 8080:8080 aerokube/selenoid-ui --selenoid-uri http://${DOCKER_GATEWAY_ADDR}:4444

瀏覽器打開

可以看到我們剛才我們配置文件里的瀏覽器版本,以及各種語言的配置方式。
ip:8080

代碼配置

對應的瀏覽器中查看運行狀態方式如下圖:


截止到目前為止,已經完成腳本在docker 容器中運行,接下來配置testNG,github,jenkins

testNG配置:

管理你要運行的測試用例


上傳代碼到github倉庫:

已經查看到剛才的提交記錄:

使用docker 部署jenkins:

docker部署jenkins指南:

https://hub.docker.com/_/jenkins/

拉取jenkins鏡像:

docker pull jenkins/jenkins:lts

運行jenkins鏡像:

此處使用8081端口,8080已經被selenoi-ui占用
docker run -d --name jenkins -p 8081:8080 -v /data/jenkins_home:/var/jenkins_home jenkins/jenkins:lts

瀏覽器輸入

ip:8081 已經看到jenkins可以正常運行

根據提示獲取密碼,輸入密碼,進入jenkins:


jenkins 持續集成部分見下章


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM