337p人体粉嫩胞高清图片,97人妻精品一区二区三区在线 ,日本少妇自慰免费完整版,99精品国产福久久久久久,久久精品国产亚洲av热一区,国产aaaaaa一级毛片,国产99久久九九精品无码,久久精品国产亚洲AV成人公司
網易首頁 > 網易號 > 正文 申請入駐

PlayWright新手全攻略:從入門到精通

0
分享至

01、簡介

軟開源自動化測試工具Playwright,支持主流瀏覽器,包括:Chrome、Firefox、Safari 等,同時支持以無頭模式、有頭模式運行,并提供了同步、異步的 API,可以結合主流測試框架使用,并且支持瀏覽器端的自動化腳本錄制等功能。



特點:

· 跨瀏覽器:Playwright 支持所有現代渲染引擎,包括Chromium、WebKit 和 Firefox;

· 跨平臺:在 Windows、Linux 和 MacOS 上進行本地或 CI、無頭或有頭測試;

· 跨語言:在 TypeScript、JavaScript、Python、.NET、Java 中使用Playwright API;

· 測試移動網絡:適用于 Android 和 Mobile Safari 的 Google Chrome 原生移動仿真。相同的渲染引擎適用于您的桌面和云端。

通俗的講: 就是一款主流的自動化測試工具,可以跨平臺、跨語言、開源、支持分布式、擁有成熟的社區及學習文檔,主要用于接口和web自動化測試。



02、安裝

1.Java 開發環境搭建

首先需要明確的是Java環境是使用maven管理項目的,所以我們只需用在項目中找到對應的pom文件在其中添加如下內容:

com.microsoft.playwright

playwright

1.25.0

就可以自動導入playwright。

Ps:因為maven的中央倉庫是外網地址,下載很慢需耐心等待,或者在修改鏡像站,改為國內鏡像。

添加demo.java內容如下:

package org.example;import com.microsoft.playwright.*;publicclassExample{publicstaticvoidmain(String[] args){try (Playwright playwright = Playwright.create()) {Browser browser = playwright.chromium().launch();Page page = browser.newPage(); page.navigate("https://www.cnblogs.com/longronglang"); System.out.println(page.title());}}}

運行這個類之后會下載下載 Playwright 包并安裝適用于 Chromium、Firefox 和 WebKit 的瀏覽器二進制文件,如下所示:

2.Python開發環境搭建(網上教程很多此處不做過多說明)

1. 安裝Playwright依賴庫(Playwright支持Async\Await語法,故需要Python3.7+)

pip install playwright

2. 安裝Chromium、Firefox、WebKit等瀏覽器的驅動文件(內置瀏覽器)

python -m playwright install

03、腳本錄制

此章主要是介紹如何錄制腳本,提供給需要使用錄制屏幕的人,若是不喜歡覺得自己手寫更方便的同學可以跳過此章。

1.錄制環境安裝

如同常見的自動化測試工具一樣,playwright同樣支持屏幕錄制并生成腳本。因為錄屏時需要node環境,所以請提前安裝。不會的同學請自行度娘,本文不做詳述。

確認node環境及版本:

node -v



安裝:

npm init -y

npm i -D @playwright/test



2.錄制

錄制是不需要寫代碼的,只需要啟動瀏覽器,playwright就會幫我們生成腳本代碼。

輸入如下命令即可啟動,開啟錄制模式:

npx playwright codegen https://www.baidu.com(開啟錄屏模式)

Npx playwright open --viewport-size 1920,1080 https://www.baidu.com

Ps: 上文中的url 是我們需要錄制的網站地址,請根據實際使用情況自行配置。



同樣playwright是支持多語言的,我們可以在錄制界面隨意切換自己需要的語言,本文以Java為例,其余不做演示。



接下來我們只需要在瀏覽器中執行相關操作,playwright就會把我們所有的操作記錄下來。

下圖中為在首頁的輸入框中輸入playwright并查詢。



當操作完成之后,我們點擊playwright的停止和復制就可以得到錄制好的腳本



我們把復制好的腳本粘貼到編輯器中,點擊運行該腳本,通過運行后就證明我們錄制的腳本沒有問題,可以保存。如果有,則通過調整代碼或者推倒重新錄制即可解決。

至此錄制環境安裝和腳本錄制完成。

3.調試

如圖是playwright inspectior,我們已經和它見過一次面了,大家應該也不陌生。接下來詳細的為大家介紹一下它,它叫playwright inspectior是playwright框架自帶的GUI工具,可以幫助我們調試腳本



3.1 如何啟動playwright inspectior

在腳本中添加page.pause()方法即可啟動.



Ps: 其他方法本文不做推薦,后期請自行研究。

3.2. 界面介紹

(1)工具欄介紹



(2)元素欄介紹

如圖所示,當我們不確定頁面某個元素位置怎么獲取時,可點擊檢測器,然后在頁面上點擊該元素,即可在輸入框中展示該元素。

也可以配合開發者小工具(F12)檢測你的元素否正確。



3.3. 如何調試

當腳本出現問題之后,我們就可以使用playwright inspectior做調試

第一步:在你的腳本代碼中添加page.pause()方法,運行腳本。

第二步:等待playwright inspectior成功啟動之后,我們就能使用工具欄 播放、停止、逐步播放來確定問題所在

第三步:當確定時元素位置錯誤,我們就能使用元素檢查器來確定正確的元素位置。

04、常用方法介紹

1.創建瀏覽器對象



.chromium().launch()方法就是指創建一個谷歌瀏覽器,同樣創建火狐就是.firefox().launch()

.setHeadless(false)方法是指在創建瀏覽器的時候,選擇無頭瀏覽器(true)還是帶頭瀏覽器(false)。

無頭瀏覽器:后臺運行,不在顯示器顯示腳本操作

有頭瀏覽器:在顯示器上展示腳本所有操作

2.創建瀏覽器上下文

瀏覽器上下文對象是瀏覽器實例中一個類似于隱身模式的會話,簡單說就是該上下文資源是完全獨立的,與其他的上下文互不干擾,所以在自動化測試中,可以對每一個測試用例都單獨開一個瀏覽器上下文。這對于多用戶,多場景的測試非常有用。

3.創建頁面

page就是瀏覽器中的標簽頁,一個page對象就可以當前頁面內容交互



??轉崗軟件測試/野路子技能提升

??想了解更多漲薪技能提升方法

??可以到我的個人號:atstudy-js

即可加入領取 ??????

轉行、入門、提升、需要的各種干貨資料

內含AI測試、 車載測試、AI大模型開發、BI數據分析、銀行測試、游戲測試、AIGC

4.常見頁面操作事件

這部分主要演示的常見頁面操作,例如:文本輸入、點擊、鍵盤鍵入、上傳文件、聚焦等等

1、輸入操作

語法:Locator.fill(value)

使用場景:文本框、日期/時間、日歷控件等輸入框

page.locator("#kw").fill("playwright");

2、點擊操作

語法:Locator.click()

適用場景:單選框、復選框、按鈕控件、常見可點擊控件等等!

page.locator("#kw").click();

3、單選框及復選框操作

語法: Locator.setChecked(checked)

適用場景: 單選框、復選框

//單選款 (選中,已選中狀態下無效) page.locator(".Volvo").setChecked(true);page.locator(".Volvo").check();System.out.println(page.locator(".Volvo").isChecked());//復選框(選中,已選中狀態下無效) page.locator("#checkbox [type='checkbox']:nth-child(7)").check();page.locator("#checkbox [type='checkbox']:nth-child(7)").setChecked(true);

4、下拉控件操作

語法:Locator.selectOption(values[, options])

適用場景:下拉框操作

//通過value值選擇page.locator("[name='select']").selectOption("opel");//通過可見文本選擇page.locator("[name='select']").selectOption(new SelectOption().setLabel("Audi"));5、鼠標事件

5、鼠標事件

語法:詳見案例

適用場景:常見鼠標點擊事件

//常規單擊page.locator("#mouse2").click();//雙擊page.locator("#mouse3").dblclick();//右鍵單擊page.locator("#mouse5").click(new Locator.ClickOptions().setButton(MouseButton.RIGHT));//按住Shift鍵并單擊page.locator("#mouse2").click(new Locator.ClickOptions().setModifiers(Arrays.asList(KeyboardModifier.SHIFT)));//懸停在元素上page.locator("#mouse1").hover();//單擊左上角page.locator("#mouse1").click(new Locator.ClickOptions().setPosition(0, 0));//強制點擊page.locator("#mouse2").click(new Locator.ClickOptions().setForce(true));//調度點擊事件來觸發點擊page.locator("#mouse2").dispatchEvent("click");

6、模擬鍵盤輸入字符操作

語法:Locator.type(value)

使用場景:模擬鍵盤輸入字符

ps:大多數時候,Page.fill()可以滿足要求。如不能輸入時,可以考慮鍵入字符操作。

page.locator("#user").type("playwright");

7、單元素鍵盤事件操作

語法:Locator.press(鍵盤事件)

使用場景:定位元素并產生單個鍵盤事件

//模擬Ctrl+A 全選操作page.locator("#user").press("Control+A");//模擬回車操作 == > 跳轉到百度頁面page.locator(".baidu").press("Enter");

8、上傳文件

語法:Locator.setInputFiles()

使用場景:上傳一個或多個文件

//上傳一個文件page.locator("#load").setInputFiles(Paths.get("demo.md"));// 上傳多個文件page.locator("#load").setInputFiles(new Path[]{Paths.get("pom.xml"), Paths.get("demo.md")});

9、拖拽操作

語法:Locator.dragTo()

使用場景:常見元素拖動操作

// 拖拽元素page.locator("#A").dragTo(page.locator(".container ul:nth-of-type(2)"));

10、懸浮操作

語法:Locator.hover()

使用場景:常見元素懸浮操作

//懸浮page.locator("#action").hover();

特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相關推薦
熱點推薦
中國的反擊開始了,接二連三讓 美國 徹底慫了

中國的反擊開始了,接二連三讓 美國 徹底慫了

安安說
2026-03-13 12:10:13
RMC:塞內加爾主帥把獎杯帶到軍事基地為奪冠后慶祝活動,并非近期

RMC:塞內加爾主帥把獎杯帶到軍事基地為奪冠后慶祝活動,并非近期

懂球帝
2026-03-22 01:19:19
BOSS直聘2025年凈裁員804人,高達14%

BOSS直聘2025年凈裁員804人,高達14%

財經眾議院
2026-03-20 15:36:34
山東一男子和妻子吵架后,出門打工半年,準備回來離婚,誰料,剛打開家門卻崩潰大哭...

山東一男子和妻子吵架后,出門打工半年,準備回來離婚,誰料,剛打開家門卻崩潰大哭...

感覺會火
2026-03-21 12:07:28
盧秀燕回臺,尹乃菁站臺,鄭麗文要硬起來,不然“機票”真到期了

盧秀燕回臺,尹乃菁站臺,鄭麗文要硬起來,不然“機票”真到期了

健身狂人
2026-03-21 15:26:27
名門千金海清:坐擁9500平大院,給歐豪下跪,兒子被稱小谷愛凌

名門千金海清:坐擁9500平大院,給歐豪下跪,兒子被稱小谷愛凌

邊城少爺
2026-03-21 15:28:36
日本最先扛不住了!霍爾木茲海峽戰事升級,高市收到中國致命一擊

日本最先扛不住了!霍爾木茲海峽戰事升級,高市收到中國致命一擊

谷盟1
2026-03-21 11:35:08
斯諾克戰報:塔猜亞6-4擊敗世界第一,肖國棟門票告急

斯諾克戰報:塔猜亞6-4擊敗世界第一,肖國棟門票告急

吳朑愛游泳
2026-03-22 02:32:03
離譜!投籃8中0,這真是職業球員投出的數據嗎,教練看了都搖頭

離譜!投籃8中0,這真是職業球員投出的數據嗎,教練看了都搖頭

小哆說體育
2026-03-21 23:41:40
謝文能飛鏟染紅!鮑亞雄逃過一劫,媒體人:致人受傷加重處罰

謝文能飛鏟染紅!鮑亞雄逃過一劫,媒體人:致人受傷加重處罰

奧拜爾
2026-03-21 22:13:29
一定要告訴你的孩子:寧愿單身,也不要跟這幾類異性結婚

一定要告訴你的孩子:寧愿單身,也不要跟這幾類異性結婚

千秋文化
2026-01-15 18:02:33
做情人需要愛,做夫妻需要錢

做情人需要愛,做夫妻需要錢

加油丁小文
2026-03-22 05:00:03
太離譜!蹭飯哥后續,揪著購車發票差額舉報比亞迪4s店偷稅漏稅

太離譜!蹭飯哥后續,揪著購車發票差額舉報比亞迪4s店偷稅漏稅

藍色海邊
2026-03-22 04:32:49
訪美第一天,特朗普“點名”日本,高市或下不來臺,日本發生抗議

訪美第一天,特朗普“點名”日本,高市或下不來臺,日本發生抗議

徐徐道史
2026-03-21 12:19:55
4000噸稀土被轉運美國?大陸停供臺灣稀土!臺學者:不如直接統一

4000噸稀土被轉運美國?大陸停供臺灣稀土!臺學者:不如直接統一

小舟談歷史
2026-03-19 17:27:44
1978年,邱清泉之子邱國渭,以螞蟻搬家方式將全家送往美國

1978年,邱清泉之子邱國渭,以螞蟻搬家方式將全家送往美國

老謝談史
2026-03-20 10:24:19
美國緊急和以色列切割,但伊朗還是炸了美國的油氣設施

美國緊急和以色列切割,但伊朗還是炸了美國的油氣設施

遠方青木
2026-03-20 23:34:12
熱搜:小米新一代SU7采用車外機械拉手!網友熱議:終于改了

熱搜:小米新一代SU7采用車外機械拉手!網友熱議:終于改了

西昆侖Bruce
2026-03-19 22:24:06
陵水縣一輛觀光車發生事故,應急局工作人員:導致2死5傷

陵水縣一輛觀光車發生事故,應急局工作人員:導致2死5傷

極目新聞
2026-03-21 10:48:57
人社部未發,卻有省份透露2026養老金調整信號?哪里?咋說的?

人社部未發,卻有省份透露2026養老金調整信號?哪里?咋說的?

社保精算師
2026-03-21 12:18:12
2026-03-22 05:51:00
51Testing軟件測試網 incentive-icons
51Testing軟件測試網
中國軟件測試人的精神家園
1541文章數 13254關注度
往期回顧 全部

科技要聞

宇樹招股書拆解,人形機器人出貨量第一!

頭條要聞

伊朗導彈擊中以色列核設施附近 大范圍爆炸視頻公布

頭條要聞

伊朗導彈擊中以色列核設施附近 大范圍爆炸視頻公布

體育要聞

誰在決定字母哥未來?

娛樂要聞

田栩寧終于涼了?出軌風波影響惡劣

財經要聞

通脹警報拉響,加息潮要來了?

汽車要聞

小鵬汽車2025年Q4盈利凈賺3.8億 全年營收767億

態度原創

藝術
房產
旅游
健康
教育

藝術要聞

你的母校在嗎?毛主席親筆題名的 20 所大學合集

房產要聞

全城狂送1000杯咖啡!網易房產【早C計劃】,即刻啟動!

旅游要聞

【花Young貴陽】春日限定!十里河灘海棠花盛開引客來

轉頭就暈的耳石癥,能開車上班嗎?

教育要聞

最推薦恩人去的幾所英國大學!

無障礙瀏覽 進入關懷版