在熟悉了基本的 Playwright 指令後,
讓我們嘗試更進階的命令,這些命令將使您能夠輕鬆處理複雜的測試場景。
處理幀:
page.frame(nameOrUrl):透過名稱或 URL 存取頁面上的特定框架,讓您與 iframe 中的內容互動。
管理下載:
page.waitForEvent('download'):等待下載事件被觸發,在測試期間提供文件下載的控制。
download.path():檢索下載檔案的檔案路徑,方便驗證和進一步的檔案處理。
文件上傳:
page.setInputFiles(selector, filePath):透過將檔案輸入設定為指定檔案路徑來模擬檔案上傳,這對於測試檔案上傳功能至關重要。
模擬設備:
browser.newContext({ viewport, userAgent, ... }):建立一個模擬特定設備的新瀏覽器上下文,包括視口大小和用戶代理,以進行響應式設計測試。
網路攔截:
page.route(url, route => { ... }):攔截和修改網路請求,使您能夠模擬回應、阻止請求或更改請求資料用於測試各種網路狀況。
page.setExtraHTTPHeaders(headers):為頁面發出的所有請求設定附加HTTP 標頭,對於使用不同的驗證標頭或自訂標頭進行測試非常有用。
執行 JavaScript:
page.evaluate(pageFunction[, ...args]):在頁面上下文中執行 JavaScript 程式碼,讓您可以操作 DOM、提取資訊或觸發自訂事件。
page.evaluateHandle(pageFunction[, ...args]):執行 JavaScript 並傳回 JavaScript 物件的句柄,從而實現與複雜物件的進一步交互作用。
高階選擇器:
page.$eval(selector, pageFunction[, ...args]):在與選擇器匹配的元素的上下文中執行JavaScript,從而實現細粒度的元素操作.
page.$$eval(selector, pageFunction[, ...args]):在與選擇器相符的所有元素上執行JavaScript,提供與多個元素互動的強大方式一次元素。
管理瀏覽器上下文:
browser.newContext([options]):使用可選設定建立新的瀏覽器上下文,允許隔離和並發測試環境。
context.close():關閉特定的瀏覽器上下文,釋放資源並保持乾淨的測試會話。
透過將這些進階命令合併到您的 Playwright 工具包中,您可以建立更複雜、更全面的自動化腳本,從而增強您測試和確保 Web 應用程式品質的能力。
請繼續關注我們的下一章,我們將深入研究實際範例和真實測試場景,以將這些高級命令付諸實踐!
要了解有關 Playwright 線上培訓的更多信息,請訪問 Testleaf 以獲取各種軟體測試課程。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3