
測試與除錯
|
149
分散式測試(Distributed Testing)
另外還有一種進行跨瀏覽器測試的做法,就是將測試工作委派給一群專門負責測試的瀏
覽器。這也正是 TestSwarm(
http://swarm.jquery.org
)所採取的做法:
TestSwarm
的主要目標,是把執行
JavaScript
測試組合(
test suite
)這項複
雜、費時的流程,交由許多不同的瀏覽器來進行,希望能藉此大幅簡化
測試流程。為了達到前述目標,
JavaScript
專案在建立持續整合工作流程
(
continuous integration workflow
)時,所需要用到的一切工具,
TestSwarm
都會提供。
TestSwarm 的做法並非透過外掛程式或擴充模組來整合瀏覽器的底層 API,它採取截然
不同的手法:讓瀏覽器連到 TestSwarm 端點(endpoint),然後自動執行 TestSwarm 推
送給它們的所有測試程式。這些瀏覽器可以部署在任何機器或作業系統上—新增一組測
試專用瀏覽器所需的工作,就只是讓它連到 TestSwarm 端點而已。
這種簡單的做法,大幅降低維護持續整合伺服器的困難度。僅需確保一定數量的瀏覽器
有連到 TestSwarm 端點即可。如果網站擁有為數眾多的社群成員,就非常適合採取這樣
的測試方式,而且取得的測試結果,應該也能非常接近真實情況,如圖 9-6 所示。
圖 9-6 TestSwarm 會回傳測試結果,並讓瀏覽器以表格形式呈現整個測試組合的測試情形
122