iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 15
0
DevOps

持續測試三十天系列 第 15

[Day 15] 世界上沒有一個瀏覽器解決不了的事,如果有那跑兩個!

  • 分享至 

  • xImage
  •  

本篇要來介紹 TestCafe 的瀏覽器支援,還有如何讓各種瀏覽器跑起來!

由於瀏覽器的多元化和破碎化,

作業系統:Windows, MacOS, Linux, Android, iOS
瀏覽器:Chrome, Safari, FireFox, Microsoft Edge, IE
版本:通常多版本並存

對於 Web 自動化測試而言,一個瀏覽器還真解決不了所有事!
為了完成相容性測試和提高測試完整度,通常要在多的瀏覽器上測試過。

世界上沒有一個瀏覽器解決不了的事,如果有那跑兩個!

TestCafe 豐富的瀏覽器支援模式

Yes

TestCafe 官方支援了以下瀏覽器

Browser Browser Alias
Chromium chromium
Google Chrome chrome
Google Chrome Canary chrome-canary
Internet Explorer ie
Microsoft Edge edge
Mozilla Firefox firefox
Opera opera
Safari safari

筆者的電腦是 Macbook,安裝了 Chrome 和 Safari 兩個瀏覽器,
接下來我們來看一些實際常用的 Command。

單獨啟動一個 local 已經安裝的瀏覽器
day14

cd day14
testcafe chrome TestCafeExamplePage.js

or

testcafe safari TestCafeExamplePage.js

想要一起跑也可以,同時啟動兩個瀏覽器一起測試,

testcafe chrome,safari TestCafeExamplePage.js

Chrome and Firefox 提供 Headless mode,
如果你不需要看到實際 UI 跑的過程,Headless mode 系統負擔更小,可以更快跑完測試。

testcafe chrome:headless TestCafeExamplePage.js

如果你的網頁要測試在 mobile device 上的狀況,例如 RWD 網頁,
可以使用 Chrome 模擬器,模擬 iPhone or Android device

testcafe "chrome:emulation:device=iphone X" TestCafeExamplePage.js

or

testcafe "chrome:emulation:device=pixel 2" TestCafeExamplePage.js

使用 Chrome Headless mode + 模擬器,模擬 iPhone or Android device

testcafe "chrome:headless:emulation:device=iphone X" TestCafeExamplePage.js

or

testcafe "chrome:headless:emulation:device=pixel 2" TestCafeExamplePage.js

真正的平行測試,將多個測試案例 分散到 多個瀏覽器跑
下例,若有 2 個測試案例,會開 2 個 Chrome 瀏覽器,各跑 1 個測試案例。

testcafe -c 2 chrome TestCafeExamplePage.js

終極大絕招,遠端瀏覽器測試,TestCafe 會產生一個 URL,
可以將這個 URL Copy 到另一台電腦的瀏覽器開啟,遠端跑自動化測試
甚至可以產生 QR Code,用 mobile device scan 後,可以直接在手機上跑自動化測試。

testcafe remote TestCafeExamplePage.js

or

testcafe remote TestCafeExamplePage.js --qr-code

參考文件,
TestCafe Command Line Interface
TestCafe Browsers Doc


上一篇
[Day 14] 用 TestCafe 三神器 SAA 自動化測試填表單
下一篇
[Day 16] 一份測試報告不夠看,那就看兩份啊!
系列文
持續測試三十天30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言