TestCafe Web 自動化大全

1. 什么是TestCafe

TestCafe 是一個node.js端到端自動化工具,支持采納JavaScript或TypeScript來編寫測試,用于測試Web應(yīng)用程序貌矿。總結(jié)就是:它是 node.js 編寫的Web端UI自動化測試框架跃须。

1.1. 特點:

a. 它可以在所有流行的現(xiàn)代瀏覽器開箱即用站叼,不需要任何外部瀏覽器插件。
b. TestCafe使用異步執(zhí)行模型而無需指定等待時間菇民,有效提升了測試套件的穩(wěn)定性尽楔。它的選擇器API可更輕松實現(xiàn)PageObject模式。

1.2. 官網(wǎng):

http://devexpress.github.io/testcafe/

2. TestCafe 環(huán)境準(zhǔn)備

2. 1. 前提條件

1.1 必須有node環(huán)境
node官網(wǎng) https://nodejs.org/en/ 下載 node 安裝包并安裝第练。node.js安裝完成后阔馋,包管理工具npm也已經(jīng)安裝成功。使用node -vnpm -v 命令查看娇掏,如果安裝成功呕寝,就能得到安裝的版本號。

1.2 安裝 Visual Studio Code
Visual Studio Code 官網(wǎng) https://code.visualstudio.com/ 下載并打開婴梧。

2.2. 創(chuàng)建項目

在GitHub創(chuàng)建 TestCafeDome 倉庫, Clone 到本地下梢,并在 VS Code 中打開項目。 在 VS Code 中打開終端(Terminal)使用 npm init 命令創(chuàng)建項目描述文件 package.json塞蹭。

2.3. 安裝TestCafe

使用命令 npm install testcafe安裝testcafe孽江。安裝完成后在 package.json 文件中可以看到 Testcafe依賴。

2.4. 安裝 TestCafe Test Runner

在VScode中安裝 TestCafe Test Runner 插件番电,如下圖所示岗屏。安裝完成可以直接右鍵運行 case辆琅,這個后邊會講到。

到此為止这刷,所有的安裝已經(jīng)完成婉烟,接下來是 Show Time.

3. Testcafe栗子 (POM)

大家都知道,構(gòu)建一個Web的自動化測試暇屋,最佳的解決方案就是使用POM Page Object Model似袁,那么POM是什么呢?

POM 模式的最大優(yōu)勢是當(dāng)UI或任何頁面的HTML對象變化了咐刨,無需更改測試本身叔营,只需更改其中的元素/方法的代碼即可。這將使得測試代碼比較簡潔所宰,而且易于理解绒尊,易于維護,重用性高仔粥。所以代碼就需要分為兩部分婴谱,一部分為測試代碼,一部分為封裝好的元素/方法代碼躯泰。

接下來以簡書的登錄做一個Demo:

  1. 先創(chuàng)建用例文件 TestCases 和頁面文件 PageObjects 谭羔,如下圖的結(jié)構(gòu):
  2. 登錄簡書的case
    第一步:在簡書的主頁面點擊登錄按鈕, 進入簡書登錄頁面
    第二步:在登錄頁面麦向,輸入賬號信息瘟裸,點擊登錄,進入個人主頁
    所有的代碼如下:
總結(jié):

a. 按照POM模式诵竭,測試用例看起來很清晰话告,易于理解
b. 當(dāng)其他的測試用例在使用登錄這個操作的時候直接可以調(diào)用對應(yīng)的 inputAccountInfo 方法,如果使用不同的賬戶可以傳不同的賬戶信息卵慰,可以重用
c. 當(dāng)頁面元素有修改的時候沙郭,不用修改測試用例,只需要修改對應(yīng)PageObjects文件的Selector即可裳朋,簡單病线,易維護
d. 在PageObjects 頁面可以把元素獲取(Selector)和方法(Action)部分分開,多個方法可以使用同一個Selector鲤嫡,易維護送挑,易理解

  1. 執(zhí)行測試用例
    方法1:使用命令來運行 npx testcafe chrome TestCases (執(zhí)行用例的參數(shù)還有很多,在后邊會有詳細的介紹)
    方法2:在VSCode里暖眼,找到要執(zhí)行的測試用例的位置惕耕,右鍵,選擇 Testcafe: Run Test(s) in xxx 選項來執(zhí)行用例(如下圖所示)罢荡,這就是前面安裝的Testcafe Test Runner的功能赡突,方便執(zhí)行測試用例

4. Testcafe 測試用例的管理

當(dāng)項目的測試用例越來越多,很多測試用例就有很多共性区赵,比如惭缰,打開相同的頁面,登錄同樣的賬戶等等笼才,我們可以將這些相同的操作放在同一個文件中管理漱受,這里我們需要先了解TestCafe的其他功能。

4.1 測試用例的管理

對于Testcafe的測試用例骡送,一個js文件可以包含多個fixture昂羡,一個fixture可以包含多個testcase, 即test對應(yīng)的的每個函數(shù)模塊就是一個testcase摔踱。

用例執(zhí)行前的設(shè)置:

用例的執(zhí)行條件:

未完待續(xù)......

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末虐先,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子派敷,更是在濱河造成了極大的恐慌蛹批,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,104評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件篮愉,死亡現(xiàn)場離奇詭異腐芍,居然都是意外死亡,警方通過查閱死者的電腦和手機试躏,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,816評論 3 399
  • 文/潘曉璐 我一進店門猪勇,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人颠蕴,你說我怎么就攤上這事泣刹。” “怎么了犀被?”我有些...
    開封第一講書人閱讀 168,697評論 0 360
  • 文/不壞的土叔 我叫張陵项玛,是天一觀的道長。 經(jīng)常有香客問我弱判,道長襟沮,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,836評論 1 298
  • 正文 為了忘掉前任昌腰,我火速辦了婚禮开伏,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘遭商。我一直安慰自己固灵,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 68,851評論 6 397
  • 文/花漫 我一把揭開白布劫流。 她就那樣靜靜地躺著巫玻,像睡著了一般丛忆。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上仍秤,一...
    開封第一講書人閱讀 52,441評論 1 310
  • 那天熄诡,我揣著相機與錄音,去河邊找鬼诗力。 笑死凰浮,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的苇本。 我是一名探鬼主播袜茧,決...
    沈念sama閱讀 40,992評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼瓣窄!你這毒婦竟也來了笛厦?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,899評論 0 276
  • 序言:老撾萬榮一對情侶失蹤俺夕,失蹤者是張志新(化名)和其女友劉穎递递,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體啥么,經(jīng)...
    沈念sama閱讀 46,457評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡登舞,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,529評論 3 341
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了悬荣。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片菠秒。...
    茶點故事閱讀 40,664評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖氯迂,靈堂內(nèi)的尸體忽然破棺而出践叠,到底是詐尸還是另有隱情,我是刑警寧澤嚼蚀,帶...
    沈念sama閱讀 36,346評論 5 350
  • 正文 年R本政府宣布禁灼,位于F島的核電站,受9級特大地震影響轿曙,放射性物質(zhì)發(fā)生泄漏弄捕。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 42,025評論 3 334
  • 文/蒙蒙 一导帝、第九天 我趴在偏房一處隱蔽的房頂上張望守谓。 院中可真熱鬧,春花似錦您单、人聲如沸斋荞。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,511評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽平酿。三九已至凤优,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間蜈彼,已是汗流浹背筑辨。 一陣腳步聲響...
    開封第一講書人閱讀 33,611評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留柳刮,地道東北人。 一個月前我還...
    沈念sama閱讀 49,081評論 3 377
  • 正文 我出身青樓痒钝,卻偏偏與公主長得像秉颗,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子送矩,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,675評論 2 359

推薦閱讀更多精彩內(nèi)容