“如何讓 DeepSeek 理解網(wǎng)站頁面內(nèi)容?”這個(gè)問題來自一位公眾號(hào)讀者的留言,背后反映了 AI 在自動(dòng)化測試中的一大痛點(diǎn)。為了給出實(shí)用解答,我將以 saucedemo.com 為例,結(jié)合 Python 語言,分享多種實(shí)現(xiàn)方案。如果你對(duì) AI 驅(qū)動(dòng)的測試感興趣,請(qǐng)繼續(xù)閱讀——希望這篇文章能為你帶來啟發(fā)!覺得有用的話,別忘了點(diǎn)贊、關(guān)注和收藏哦!
一位讀者在公眾號(hào)留言中問道:“怎么讓 DeepSeek 理解網(wǎng)站頁面呢,總不能輸入一個(gè)網(wǎng)址,他就能理解里面的內(nèi)容吧,而且各個(gè)模塊要點(diǎn)開才能加載出頁面。還是說之前有這一塊內(nèi)容的介紹呢?”這個(gè)問題直擊核心:
這樣的模型如何“看懂”動(dòng)態(tài)網(wǎng)站的內(nèi)容?網(wǎng)站不像靜態(tài)文本,輸入一個(gè)并不能讓直接獲取頁面信息,尤其是那些需要交互(如點(diǎn)擊按鈕)才能加載的模塊。很多測試工程師可能也有類似困惑:能否從躍升到理解頁面邏輯,甚至生成自動(dòng)化腳本?在之前的文章 Playwright + DeepSeek 實(shí)戰(zhàn):手把手教你用 AI 實(shí)現(xiàn) xmind 用例生成到自動(dòng)化測試(以電商為例)我曾通過人工描述網(wǎng)站功能,讓生成測試用例和腳本。這次,我們將更進(jìn)一步,圍繞讀者的提問,探索理解網(wǎng)站內(nèi)容的可行方法,并以為實(shí)戰(zhàn)案例,提供實(shí)現(xiàn)的詳細(xì)解析。
讓我們先拆解問題,明確挑戰(zhàn)所在:
是一個(gè)電商網(wǎng)站,包含登錄、商品列表、購物車和結(jié)算等功能。部分內(nèi)容(例如商品詳情或購物車列表)需要用戶點(diǎn)擊后才會(huì)加載。單純給一個(gè),它無法直接訪問或解析這些動(dòng)態(tài)內(nèi)容。
當(dāng)前的大語言模型主要依賴文本輸入生成輸出,沒有內(nèi)置瀏覽器或爬蟲功能。它無法像人類一樣打開網(wǎng)頁、點(diǎn)擊按鈕、觀察頁面變化。
測試工程師可能希望能“自動(dòng)”理解網(wǎng)站內(nèi)容并生成測試用例或腳本,而非依賴人工輸入。那么,這是否可行?如果不可行,有哪些替代方案?基于這些分析,讓盡可能理解的頁面內(nèi)容,并生成有用的自動(dòng)化測試代碼,都有哪些可能的方法,將是本文探討的目標(biāo)。
既然無法直接訪問網(wǎng)站,我們需要為它提供“眼睛”和“語言”。以下是三種解決方案,涵蓋從實(shí)用到創(chuàng)新的思路:
這是目前最直接、高效的方法。通過人工提供網(wǎng)站的結(jié)構(gòu)和功能描述,可以基于文本生成測試用例和腳本。
假設(shè)我們要測試的購物車功能,可以這樣描述:
點(diǎn)評(píng)如下:
實(shí)戰(zhàn)實(shí)例:使用獲取商品頁面的源碼
如果想減少人工描述,可以用工具抓取頁面 HTML 源碼,讓分析。例如:
輸入:
對(duì)于需要點(diǎn)擊加載的內(nèi)容,可以模擬交互后再抓取。例如:將輸入,讓它分析交互后的變化。
實(shí)戰(zhàn)示例:負(fù)責(zé)錄制腳本,負(fù)責(zé)代碼優(yōu)化擴(kuò)展
為了進(jìn)一步提升效率,我們可以利用的腳本錄制功能,讓基于錄制的腳本進(jìn)行優(yōu)化和擴(kuò)展。
思路如下:
綜合來看:
以為例,推薦流程:
未來,隨著技術(shù)進(jìn)步,我們或許能直接給一個(gè),讓它“自己看懂”頁面。希望這篇文章解答了你的疑問!如果有更多想法,歡迎留言討論。覺得有用的話,別忘了點(diǎn)贊、關(guān)注哦,下次更新不迷路!
原文轉(zhuǎn)載自:https://mp.weixin.qq.com/s/TAWSHob7aizRU7XY_ssAUQ