最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

軟件測(cè)試 | Selenium Grid作用是什么?Selenium Grid的使用過(guò)程?

2023-05-16 11:33 作者:愛(ài)測(cè)軟件測(cè)試  | 我要投稿

SeleniumGrid 作用

Selenium Grid 是 Selenium 的三大組件之一,它可以在多臺(tái)機(jī)器上并行運(yùn)行測(cè)試,集中管理不同的瀏覽器版本和瀏覽器配置。通過(guò)將客戶(hù)端命令發(fā)送到遠(yuǎn)程瀏覽器的實(shí)例, Selenium Grid 允許在遠(yuǎn)程計(jì)算機(jī) (虛擬或真實(shí)) 上執(zhí)行 WebDriver 腳本. 它提供一種在多臺(tái)計(jì)算機(jī)上并行運(yùn)行測(cè)試的簡(jiǎn)便方法。

使用場(chǎng)景

場(chǎng)景一:?實(shí)現(xiàn)分布式執(zhí)行測(cè)試,提高執(zhí)行效率
比如:我們有 1000 條用例執(zhí)行,如果在本機(jī)執(zhí)行,一條用例耗時(shí) 100 秒,執(zhí)行完成則需要大約 27 小時(shí)?1000*100/60/60=27個(gè)小時(shí)。如果讓這些用例并發(fā)執(zhí)行,比如分配 6 臺(tái)計(jì)算機(jī),每個(gè)計(jì)算機(jī)執(zhí)行 1000/6 大約 166 條用例,那時(shí)間大約節(jié)省了 6 倍,原來(lái)需要大約 27 個(gè)小時(shí),現(xiàn)在可能只需要 4.5 個(gè)小時(shí)左右就基本完成了, 分布式并發(fā)執(zhí)行可以讓我們用例的執(zhí)行總時(shí)長(zhǎng)指數(shù)級(jí)的縮小,從而效率得到很大的提升。

場(chǎng)景二:?解決瀏覽器兼容性問(wèn)題

比如還是 1000 條用例,需要分別在 Chrome、Firefox、Edge、Safari 這些瀏覽器上都執(zhí)行一遍,保證每個(gè)瀏覽器上都能正常執(zhí)行,測(cè)試瀏覽器的兼容性。這時(shí)也可以使用 Selenium Grid,通過(guò) Selenium Grid 將這些請(qǐng)求分發(fā)到不同的系統(tǒng)、不同瀏覽器中執(zhí)行。這些瀏覽器可以分別布署在不同的計(jì)算機(jī)中比如可以布署在 Linux 、Windows、Mac 上都可以,作為它的 Node 結(jié)點(diǎn),從而解決兼容性測(cè)試的問(wèn)題

執(zhí)行過(guò)程

Client是本地IDEA要執(zhí)行的測(cè)試用例。

  • 1.Client的測(cè)試用例通過(guò)HTTP協(xié)議發(fā)送請(qǐng)求給路由Router。

Router是?Selenium Grid?內(nèi)的一個(gè)處理器/組件,也是Selenium Grid的入口。

  • 2.Router接受請(qǐng)求并立即進(jìn)行分發(fā)。創(chuàng)建一個(gè)新的Session會(huì)話(huà)同時(shí)分配對(duì)應(yīng)的Node節(jié)點(diǎn)機(jī)器。

Router作用把請(qǐng)求從路由Router發(fā)送到Node的機(jī)器節(jié)點(diǎn)。

  • 3.路由Router進(jìn)行請(qǐng)求分發(fā)。

新請(qǐng)求

接收是一個(gè)新請(qǐng)求時(shí),路由Router此時(shí)不知往哪個(gè)Node節(jié)點(diǎn)上發(fā)送該請(qǐng)求。

  • 3.1.1?新請(qǐng)求時(shí),路由Router將請(qǐng)求發(fā)送給分發(fā)器Distributor。

分發(fā)器?Distributor?讀取Client腳本的DesiredCapability屬性,從中獲取用例的?操作系統(tǒng)Platform?及?瀏覽器browserName?屬性。
  • 3.1.2?Distributor根據(jù)屬性值把請(qǐng)求發(fā)送給符合的?Node節(jié)點(diǎn)?,同時(shí)?創(chuàng)建session會(huì)話(huà)對(duì)象Session Map。

Session會(huì)話(huà)創(chuàng)建時(shí)會(huì)產(chǎn)生一個(gè)Session ID,分發(fā)器?Distributor會(huì)把Session ID與對(duì)應(yīng)的Node節(jié)點(diǎn)URI地址一一對(duì)應(yīng)存儲(chǔ)在?Session Map?中。
  • 3.1.3?Session Map會(huì)把Session ID與對(duì)應(yīng)的Node發(fā)送給Router路由,Router路由再發(fā)送給客戶(hù)端Client

會(huì)話(huà)的職責(zé)就是創(chuàng)建一個(gè)簡(jiǎn)單的映射,其中包含正在執(zhí)行的測(cè)試用例的Session會(huì)話(huà)ID及其執(zhí)行的物理機(jī)器Node的地址

已存在的請(qǐng)求

接收是一個(gè)已存在的請(qǐng)求時(shí),路由Router直接從Session Map中根據(jù)對(duì)應(yīng)的Session ID查找到Node節(jié)點(diǎn)的URI地址,把用例請(qǐng)求發(fā)送到對(duì)應(yīng)節(jié)點(diǎn)上直接運(yùn)行即可。

  • 3.2.1?已存在的請(qǐng)求時(shí),路由Router將請(qǐng)求根據(jù)Session Map中對(duì)應(yīng)關(guān)系直接把請(qǐng)求發(fā)送給Node節(jié)點(diǎn)。

以上是SeleniumGrid的各個(gè)組件之間的執(zhí)行過(guò)程。


軟件測(cè)試 | Selenium Grid作用是什么?Selenium Grid的使用過(guò)程?的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
海阳市| 双鸭山市| 双城市| 鲁山县| 开远市| 淳化县| 琼中| 简阳市| 淅川县| 大姚县| 远安县| 肇东市| 金昌市| 满洲里市| 巴彦淖尔市| 马边| 绩溪县| 阿坝| 香港| 五原县| 瑞丽市| 银川市| 九江县| 拉孜县| 莆田市| 阿克苏市| 临安市| 永川市| 长子县| 确山县| 左贡县| 锦州市| 新野县| 河池市| 永宁县| 嘉黎县| 德庆县| 大关县| 溧阳市| 霍邱县| 南安市|