Introduction to the automated tests that run on each push
-
0:00 - 0:03每天有許多人登陸維護Firefox
-
0:03 - 0:07如果你更改了程式碼,就有可能會產生bug
-
0:07 - 0:11為減少來自其他開發者的干擾,每次做出修正時
-
0:11 - 0:14會產生在支援的作業系統
-
0:14 - 0:16一系列的測試也會在每個系統中執行
-
0:16 - 0:20網址: tbpl.mozilla.org
-
0:20 - 0:22這代表tinderboxpushlog
-
0:22 - 0:25這裡我們可以看到被更改的的部分
-
0:25 - 0:32我把它在另一個分頁打開,可以看到有兩個檔案被更改了
-
0:32 - 0:35但測試仍在所有作業系統執行中
-
0:35 - 0:40在這欄顯示了在執行測試的各個系統
-
0:40 - 0:44對應每個作業系統,它也提供除錯及釋出的功能
-
0:44 - 0:59它們包含Linux (有些是32位元,有些是64位元) 、OSX、各種版本的Windows、Android、Boot2Gecko、甚至Boot2Gecko模擬器
-
0:59 - 1:06在每個作業系統的右邊都可以看到一系列的測試
-
1:06 - 1:11這些由字母或數字組成的圖標是執行測試的分類
-
1:11 - 1:15你可以看到它們在下面重複出現
-
1:15 - 1:17這裡又重複出現了
-
1:17 - 1:21他會會在每一個作業系統重複出現
-
1:21 - 1:25接下來我要帶過每個測試的分類
-
1:25 - 1:28這裡的B代表建立
-
1:28 - 1:30以及一些編譯後的測試
-
1:30 - 1:32這裡的M代表Mochitest
-
1:32 - 1:34Mochitest 是一種 JavaScript 的測試
-
1:34 - 1:421,2,3,4,5 代表mochitest-plain ,是HTML 的內容測試
-
1:42 - 1:43這會測試一些 DOM API 的型態
-
1:43 - 1:45bc代表chrome瀏覽器的測試
-
1:45 - 1:49基本上這會測試chrome瀏覽器如何與本身及其內容互動
-
1:49 - 1:58當你需要比起一般內容頁更高層的許可,你就會用到 mochitest
-
1:58 - 2:01接下來, C 代表系統崩潰測試
-
2:01 - 2:05這僅是載入一個網頁,然後檢查瀏覽器是否會崩潰
-
2:05 - 2:09再來是 J ,我不會一一講解這些,只會提比較重要的
-
2:09 - 2:13J 基本上是測試整個 JavaScript 引擎
-
2:13 - 2:18R 代表 reftest ,基本上是用來比較兩個頁面
-
2:18 - 2:21它會以像素為單位來比較,檢查是否有不同
-
2:21 - 2:26你可以比較兩個不同的標記,或是兩個不同的圖片格式
-
2:26 - 2:30這裡的 X 是個常用的測試,用來測試 xpcshell
-
2:30 - 2:32基本上就是 JavaScript 殼層測試
-
2:32 - 2:35當你不需要有視窗時,這會非常有用
-
2:35 - 2:39你可能想測試一些零件,像是 XPCOM 物件
-
2:39 - 2:44這整部分的測試就在 T 後面的括號裡
-
2:44 - 2:47叫做 Talos 測試
-
2:47 - 2:49它是與表現相關的測試
-
2:49 - 2:52這裡的 JP 代表 Jet Pack 測試
-
2:52 - 2:53用來測試外掛元件
-
2:53 - 2:56你會發現下面幾行
-
2:56 - 2:59例如 Windows 8
-
2:59 - 3:03你會看到這裡有 mc ,但其他行都沒有
-
3:03 - 3:07所以有時候一整類的測試,只會出現在一個作業系統上
-
3:07 - 3:11這個例子裡它代表 metro chrome 的測試
-
3:11 - 3:13用來測試 Metro 瀏覽器
-
3:13 - 3:16你會發現每個測試都有顏色
-
3:16 - 3:18你也可以點擊進入任何一個
-
3:18 - 3:20例如我點進 B
-
3:20 - 3:23就可以看到與它相關的記錄
-
3:23 - 3:24這裡我再點 1
-
3:24 - 3:27可以看到另一個記錄
-
3:27 - 3:30綠色代表所有事情都順利完成
-
3:30 - 3:34藍色代表由於基礎設備的問題,測試將要重新執行
-
3:34 - 3:37橘色代表測試失敗
-
3:37 - 3:41有時候測試失敗是有正當的理由,不代表有bug
-
3:41 - 3:43可能只是有一些間歇性的故障
-
3:43 - 3:46這裡可以看到故障在哪裡
-
3:46 - 3:49這裡的訊息顯示bug已被覆蓋
-
3:49 - 3:52有人已經標記了它
-
3:52 - 3:55如果你不確定結果,可以點進測試
-
3:55 - 3:57你可以點一下這裡的小 + 號
-
3:57 - 3:59這個程序就會再次運行
-
3:59 - 4:00並在旁邊出現
-
4:00 - 4:01然後這裡會有兩個標記
-
4:01 - 4:03以上就是我要展示的內容
-
4:03 - 4:06我想展示的就是,每當你做出修改,都會承擔一些義務
-
4:06 - 4:08所有的測試都會在每個系統中執行