4、頁面對象自動生成&測試數據自動生成&無頭瀏覽器

1、頁面對象自動生成技術,屬于典型的“自動化你的自動化”的應用場景。它的基本思路是,你不用在手工維護Page Class了,只需要提供WEB的URL,它就會自動幫你生成這個頁面上的所有控件的定位信息,并自動生成Page Class。

但是,需要注意,那些依賴于數據的動態頁面對象也會包含在自動生成的Page Class里,而這種動態頁面對象通常不應該包含在Page Class里,需要手動刪除,

工具:商用UFT,免費Katalon Studio

https://blog.csdn.net/weixin_43664254/article/details/89375298

有些場景是無法錄制的,如Web表單處理,多個框架(畫面)切換,切換窗口,處理驗證碼、圖像識別、視頻回饋。這些頁面比較復雜,還有一些元素定位需要我們自己去定義Xpath / CSS


使用手冊:http://www.lxweimin.com/p/8df8b4755185


2、GUI測試數據自動生成,指的由機器自動生成測試用例的輸入數據。

(1)根據GUI輸入數據類型,以及對應的自定義規則庫自動生成測試輸入數據。

eg:界面“書名”輸入框,它的數據類型是string。那么基于數據類型就可以自動生成諸如Null,SQL注入、超長字符串、非英語字符等測試數據。

同時,根據自定義規則庫,還可以根據具體規則生成各種測試數據。這個自定義規則庫里面的規則,往往反映了具體的業務邏輯。比如,對于“書名”,就會有書名不能大于多少個字符、一些典型的書名(比如,英文書名、中文書名等)等等業務方面的要求,那么就可以根據這些業務要求來生成測試數據。

根據自定義規則生成測試數據的核心思想,與安全掃描軟件?AppScan?基于攻擊規則庫自動生成和執行安全測試的方式,有異曲同工之處。

(2)對于需要組合多個測試輸入數據的場景,測試數據自動生成可以自動完成多個測試數據的笛卡爾積組合,然后再以人工的方式剔除掉非法的數據組合。

但是,這種方式并不一定是最高效的。對于輸入參數比較多,且數據之間合法組合比較少或者難以明確的情況,先自動化生成笛卡爾積組合,再刪除非法組合,效率往往還不如人為組合來得高。所以,在這個場景下是否要用測試數據自動生成方法,還需要具體問題具體分析。

更常見的用法是,先手動選擇部分輸入數據進行笛卡爾積,并刪除不合法的部分;然后,在此基礎上,再人為添加更多業務上有意義的輸入數據組合。

比如,輸入數據有?A、B、C、D、E、F?六個參數,你可以先選取最典型的幾個參數生成笛卡爾積,假設這里選取?A、B?和?C;然后,在生成的笛卡爾積中刪除業務上不合法的組合;最后,再結合?D、E?和?F?的一些典型取值,構成更多的測試輸入數據組合。

無頭瀏覽器

無頭瀏覽器,即?Headless?Browser,是一種沒有界面的瀏覽器。

什么?瀏覽器沒有界面,還叫什么瀏覽器啊?別急,我將為你一一道來。

無頭瀏覽器,其實是一個特殊的瀏覽器,你可以把它簡單地想象成是運行在內存中的瀏覽器。它擁有完整的瀏覽器內核,包括?JavaScript?解析引擎、渲染引擎等。

與普通瀏覽器最大的不同是,無頭瀏覽器執行過程中看不到運行的界面,但是你依然可以用?GUI?測試框架的截圖功能截取它執行中的頁面。

無頭瀏覽器的主要應用場景,包括?GUI?自動化測試、頁面監控以及網絡爬蟲這三種。在?GUI?測試過程中,使用無頭瀏覽器的好處主要體現在四個方面:

(1)測試執行速度更快。?相對于普通瀏覽器來說,無頭瀏覽器無需加載?CSS?以及渲染頁面,在測試用例的執行速度上有很大的優勢。

(2)減少對測試執行的干擾。?可以減少操作系統以及其他軟件(比如殺毒軟件等)不可預期的彈出框,對瀏覽器測試的干擾。

(3)簡化測試執行環境的搭建。?對于大量測試用例的執行而言,可以減少對大規模?Selenium?Grid?集群的依賴,GUI?測試可以直接運行在無界面的服務器上。

(4)在單機環境實現測試的并發執行。?可以在單機上很方便地運行多個無頭瀏覽器,實現測試用例的并發執行。

但是,無頭瀏覽器并不完美,它最大的缺點是,不能完全模擬真實的用戶行為,而且由于沒有實際完成頁面的渲染,所以不太適用于需要對于頁面布局進行驗證的場景。同時,業界也一直缺乏理想的無頭瀏覽器方案。

在?Google?發布?Headless?Chrome?之前,PhantomJS?是業界主流的無頭瀏覽器解決方案。但是,這個項目的維護一直以來做得都不夠好,已知未解決的缺陷數量多達?1800?多個,雖然支持主流的?Webkit?瀏覽器內核,但是依賴的?Chrome?版本太低。所以,無頭瀏覽器一直難以在?GUI?自動化測試中大規模應用。

但好消息是,2017?年?Google?發布了?Headless?Chrome,以及與之配套的?Puppeteer?框架,Puppeteer?不僅支持最新版本的?Chrome,而且得到?Google?官方的支持,這使得無頭瀏覽器可以在實際項目中得到更好的應用。

也正是這個原因,PhantomJS?的創建者?Ariya?Hidayat?停止了它的后續維護,Headless?Chrome?成了無頭瀏覽器的首選方案。

那什么是?Puppeteer?呢?Puppeteer?是一個?Node?庫,提供了高級別的?API?封裝,這些?API?會通過?Chrome?DevTools?Protocol?與?Headless?Chrome?的交互達到自動化操作的目的。

Puppeteer?也是由?Google?開發的,所以它可以很好地支持?Headless?Chrome?以及后續?Chrome?的版本更新。

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,333評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,491評論 3 416
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,263評論 0 374
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,946評論 1 309
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,708評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,186評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,255評論 3 441
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,409評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,939評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,774評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,976評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,518評論 5 359
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,209評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,641評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,872評論 1 286
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,650評論 3 391
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,958評論 2 373

推薦閱讀更多精彩內容