最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Docker部署UI自動(dòng)化測(cè)試環(huán)境的實(shí)現(xiàn)步驟

 更新時(shí)間:2023年08月29日 11:34:05   作者:敲代碼敲到頭發(fā)茂密  
本文主要介紹了Docker部署UI自動(dòng)化測(cè)試環(huán)境的實(shí)現(xiàn)步驟,通過(guò)Docker可以快速創(chuàng)建、部署和測(cè)試腳本,提高測(cè)試效率,具有一定的參考價(jià)值,感興趣的可以了解一下

一、分布式自動(dòng)化測(cè)試要解決什么問(wèn)題?

分布式自動(dòng)化測(cè)試要解決什么問(wèn)題?
1、減少腳本執(zhí)行耗時(shí)
2、減少對(duì)單機(jī)器的資源消耗
3、實(shí)現(xiàn)分布式兼容性測(cè)試

分布式自動(dòng)化測(cè)試實(shí)現(xiàn)重點(diǎn):
1、控制多機(jī)器并行運(yùn)行,資源監(jiān)控
2、測(cè)試用例執(zhí)行順序控制
3、測(cè)試報(bào)告收集合并

縱觀開(kāi)源技術(shù),拿現(xiàn)在最流行的selenium\docker 來(lái)實(shí)踐分布式自動(dòng)化測(cè)試框架。

selenium grid是selenium的三大組件之一,它的作用就是分布式測(cè)試執(zhí)行,它是由一個(gè)hub節(jié)點(diǎn)和若干個(gè)node代理節(jié)點(diǎn)組成,Hub用來(lái)管理各個(gè)代理節(jié)點(diǎn)的注冊(cè)信息和狀態(tài)信息,并且接受遠(yuǎn)程客戶(hù)端代碼的請(qǐng)求調(diào)用,然后把請(qǐng)求的命令轉(zhuǎn)發(fā)給代理節(jié)點(diǎn)來(lái)執(zhí)行。

Docker 是一個(gè)開(kāi)源的應(yīng)用容器引擎,讓開(kāi)發(fā)者可以打包他們的應(yīng)用以及依賴(lài)包到一個(gè)可移植的容器中,然后發(fā)布到任何流行的Linux機(jī)器或Windows 機(jī)器上,也可以實(shí)現(xiàn)虛擬化,容器是完全使用沙箱機(jī)制,相互之間不會(huì)有任何接口。

二、分布式環(huán)境搭建

1、環(huán)境準(zhǔn)備

準(zhǔn)備一臺(tái) Linux 服務(wù)器(云服務(wù)器、自建 Linux 服務(wù)器都可以)。
在 Linux 服務(wù)器上安裝 docker,docker安裝就不講了,照著官網(wǎng)的命令來(lái)就可以了,很簡(jiǎn)單的。

2、創(chuàng)建容器

利用容器技術(shù)我們可以快速的構(gòu)建我們selenium hub和node 環(huán)境,其實(shí)selenium官網(wǎng)已經(jīng)為我們制作好了鏡像,我們只需要在docker環(huán)境中拉取即可,以下為selenium官網(wǎng)為我們提供的鏡像名稱(chēng)

拉取hub鏡像
拉取chrome瀏覽器鏡像
拉取firefox瀏覽器鏡像

sudo docker pull selenium/hub
sudo docker pull selenium/node-chrome
sudo docker pull selenium/node-firefox

3、啟動(dòng)容器

啟動(dòng)hub節(jié)點(diǎn)的docker

-d:后臺(tái)運(yùn)行容器
-p:5442-5444:4442-4444:端口號(hào)一一映射,其中4444為web服務(wù)
5442,5443:node節(jié)點(diǎn)與hub節(jié)點(diǎn)用例通信的

docker run --name hub -d -p 5442-5444:4442-4444 selenium/hub

-p:5902:5900:作用是訪問(wèn)瀏覽器的圖形界面
vnc 是linux的圖形界面服務(wù),遠(yuǎn)程桌面服務(wù)
-e:環(huán)境變量
SE_EVENT_BUS_HOST:指定主節(jié)點(diǎn)的ip地址
SE_NODE_MAX_SESSIONS=20:最多啟動(dòng)20個(gè)session(20個(gè)瀏覽器)

啟動(dòng)hub節(jié)點(diǎn)的docker

sudo docker run --name node -p 5902:5900 -d -e \
SE_EVENT_BUS_HOST=82.156.178.247 -e SE_NODE_MAX_SESSIONS=20 -e \
SE_NODE_OVERRIDE_MAX_SESSIONS=true -e SE_EVENT_BUS_PUBLISH_PORT=5442 \
-e SE_EVENT_BUS_SUBSCRIBE_PORT=5443 -v /dev/shm:/dev/shm selenium/node-chrome
sudo docker run --name node -p 5903:5900 -d -e \
SE_EVENT_BUS_HOST=82.156.178.247 -e SE_NODE_MAX_SESSIONS=20 -e \
SE_NODE_OVERRIDE_MAX_SESSIONS=true -e SE_EVENT_BUS_PUBLISH_PORT=5442 \
-e SE_EVENT_BUS_SUBSCRIBE_PORT=5443 -v /dev/shm:/dev/shm selenium/node-firefox

4、查看容器運(yùn)行狀態(tài)

CONTAINER ID   IMAGE                  COMMAND                  CREATED       STATUS          PORTS                                                                                                                             NAMES
0da5ef1265e4   selenium/node-chrome   "/opt/bin/entry_poin…"   2 days ago    Up 5 minutes    0.0.0.0:5902->5900/tcp, :::5902->5900/tcp                                                                                         node
40456e0d4363   selenium/hub           "/opt/bin/entry_poin…"   2 days ago    Up 5 minutes    0.0.0.0:5442->4442/tcp, :::5442->4442/tcp, 0.0.0.0:5443->4443/tcp, :::5443->4443/tcp, 0.0.0.0:5444->4444/tcp, :::5444->4444/tcp   hub

5、查看Selenium hub 、node 啟動(dòng)狀態(tài)

在這里插入圖片描述

6、啟動(dòng)VNC Server

連接我們啟動(dòng)的容器IP:PORT,密碼默認(rèn)為sercet

在這里插入圖片描述

在這里插入圖片描述

到此,我們自動(dòng)化測(cè)試的運(yùn)行環(huán)境已經(jīng)配置完畢,接下來(lái)看我們自動(dòng)化測(cè)試腳本如何設(shè)計(jì)

7、測(cè)試腳本

from selenium import webdriver
import time
# 配置信息
from selenium.webdriver.common.by import By
ds = {
    'platform': 'ANY',  # 平臺(tái)(操作系統(tǒng))信息
    'browserName': 'chrome',  # 配置瀏覽器信息,谷歌瀏覽器
    'version': '',
    'javascriptEnabled': True
}
driver = webdriver.Remote('http://82.156.178.247:5444', desired_capabilities=ds)
driver.get('http://www.baidu.com')
driver.find_element(By.XPATH, '//*[@id="kw"]').send_keys("中國(guó)")
driver.find_element(By.XPATH, '//*[@id="su"]').click()
time.sleep(3)
driver.quit()

在這里插入圖片描述

 到此這篇關(guān)于Docker部署UI自動(dòng)化測(cè)試環(huán)境的實(shí)現(xiàn)步驟的文章就介紹到這了,更多相關(guān)Docker部署UI自動(dòng)化測(cè)試環(huán)境內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Docker數(shù)據(jù)卷和掛載目錄的使用

    Docker數(shù)據(jù)卷和掛載目錄的使用

    docker?在容器中管理數(shù)據(jù)主要有兩種方式,包括數(shù)據(jù)卷和掛載主機(jī)目錄,本文主要介紹了Docker數(shù)據(jù)卷和掛載目錄的使用,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-04-04
  • Docker?存儲(chǔ)管理的幾種方式

    Docker?存儲(chǔ)管理的幾種方式

    本文主要使用三種不同的方式將數(shù)據(jù)從Docker主機(jī)掛載到容器中,分別為卷(volumes),綁定掛載(bind?mounts),臨時(shí)文件系tmpfs,還介紹了數(shù)據(jù)卷容器、數(shù)據(jù)卷的備份與恢復(fù),對(duì)Docker?存儲(chǔ)管理相關(guān)知識(shí)感興趣的朋友一起看看吧
    2022-07-07
  • docker network create命令的具體使用

    docker network create命令的具體使用

    docker network create命令用于創(chuàng)建一個(gè)新的網(wǎng)絡(luò)連接,本文就來(lái)詳細(xì)的介紹一下docker network create命令的具體使用,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-10-10
  • 如何使用docker極簡(jiǎn)打包java.jar鏡像并啟動(dòng)

    如何使用docker極簡(jiǎn)打包java.jar鏡像并啟動(dòng)

    這篇文章主要介紹了如何使用docker極簡(jiǎn)打包java.jar鏡像并啟動(dòng),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-08-08
  • 使用docker容器來(lái)構(gòu)建前端項(xiàng)目過(guò)程

    使用docker容器來(lái)構(gòu)建前端項(xiàng)目過(guò)程

    文章介紹了如何使用Docker容器來(lái)解決前端項(xiàng)目打包問(wèn)題,包括構(gòu)建鏡像、設(shè)置環(huán)境變量、加速構(gòu)建過(guò)程以及如何將node_modules直接打包到鏡像中,通過(guò)這種方式,可以確保每次打包的環(huán)境一致,避免因環(huán)境差異導(dǎo)致的打包失敗
    2026-03-03
  • docker pull很慢如何解決

    docker pull很慢如何解決

    這篇文章主要介紹了docker pull很慢的解決方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • Docker如何使用nginx搭建tomcat集群(圖文詳解)

    Docker如何使用nginx搭建tomcat集群(圖文詳解)

    這篇文章主要介紹了Docker使用nginx搭建tomcat集群的教程,本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-12-12
  • Docker?修改存儲(chǔ)位置的步驟(data-root?遷移完整指南)

    Docker?修改存儲(chǔ)位置的步驟(data-root?遷移完整指南)

    本文詳細(xì)介紹了如何在Linux+systemd環(huán)境下,將Docker的默認(rèn)數(shù)據(jù)目錄(data-root)遷移到其他磁盤(pán)空間充足的位置,包括遷移前的準(zhǔn)備工作、具體步驟、配置修改、啟動(dòng)和驗(yàn)證等,以及常見(jiàn)問(wèn)題的排查方法,感興趣的朋友跟隨小編一起看看吧
    2026-03-03
  • 使用Docker容器化Flask應(yīng)用的簡(jiǎn)單示例

    使用Docker容器化Flask應(yīng)用的簡(jiǎn)單示例

    在當(dāng)今的軟件開(kāi)發(fā)中,容器化技術(shù)已經(jīng)變得不可或缺,Docker 作為容器化領(lǐng)域的佼佼者,為開(kāi)發(fā)者提供了一種高效、便捷的方式來(lái)部署和運(yùn)行應(yīng)用程序,本文將通過(guò)一個(gè)簡(jiǎn)單的 Flask 應(yīng)用示例,展示如何使用 Docker 將 Python 應(yīng)用程序容器化,需要的朋友可以參考下
    2025-09-09
  • docker部署MySQL主從服務(wù)集群方式

    docker部署MySQL主從服務(wù)集群方式

    文章介紹了如何創(chuàng)建目錄、配置文件和搭建MySQL集群,包括設(shè)置主庫(kù)和兩個(gè)從庫(kù)的配置,并詳細(xì)說(shuō)明了如何創(chuàng)建復(fù)制用戶(hù)和連接主庫(kù)
    2025-11-11

最新評(píng)論

中西区| 博湖县| 宁都县| 平定县| 宁阳县| 河北区| 兴和县| 绥棱县| 宜城市| 建始县| 长泰县| 阜宁县| 铜鼓县| 南通市| 页游| 德兴市| 双城市| 饶阳县| 密山市| 阿合奇县| 隆回县| 讷河市| 镇原县| 沙田区| 德安县| 乳源| 东兰县| 闻喜县| 田东县| 托里县| 千阳县| 松江区| 新邵县| 南华县| 广宗县| 池州市| 射洪县| 尼勒克县| 太和县| 乐昌市| 怀化市|