自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

JavaScript集成測(cè)試工具Test Swarm發(fā)布

開(kāi)發(fā) 前端 后端
jQuery JavaScript程序庫(kù)的創(chuàng)建者John Resig發(fā)布了用于對(duì)客戶端JavaScript進(jìn)行分布式的持續(xù)集成測(cè)試工具Test Swarm。此項(xiàng)目旨在為眾多的開(kāi)發(fā)者和社區(qū)提供一個(gè)用以測(cè)試瀏覽器的系統(tǒng)。

jQuery JavaScript程序庫(kù)的創(chuàng)建者John Resig發(fā)布了Test Swarm,該平臺(tái)用于對(duì)客戶端JavaScript進(jìn)行分布式的持續(xù)集成測(cè)試。由于對(duì)傳統(tǒng)JavaScript測(cè)試環(huán)境(無(wú)法擴(kuò)展)深感失望,John的新項(xiàng)目(目前還是私有的alpha版)旨在為眾多的開(kāi)發(fā)者和社區(qū)提供一個(gè)用以測(cè)試瀏覽器的系統(tǒng)。

正如John所述,在各種不同的瀏覽器中測(cè)試jQuery難度非常大:

我們力求在jQuery項(xiàng)目中支持所有主流瀏覽器的當(dāng)前版本、***發(fā)布版以及即將發(fā)布的每日構(gòu)建版/beta版(我們根據(jù)用戶升級(jí)瀏覽器的頻率對(duì)這些支持標(biāo)準(zhǔn)進(jìn)行了一些平衡——Safari與Opera用戶的升級(jí)頻率非常高)。

在本文發(fā)布時(shí)一共包含12個(gè)瀏覽器。

◆Internet Explorer 6、7、8。(不包括8中的7模式)

◆Firefox 2、3及每日構(gòu)建版

◆Safari 3.2、4

◆Opera 9.6、10

◆Chrome 1、2

當(dāng)然了,這只是Windows平臺(tái)上的,還不包括OS X及Linux。對(duì)于jQuery項(xiàng)目我們采取了明智的策略,通常只在一種平臺(tái)上進(jìn)行測(cè)試,但理想情況下還需要在所有平臺(tái)上測(cè)試Firefox、Safari及Opera(這三個(gè)是跨平臺(tái)的瀏覽器)。***的結(jié)果是在每一次提交前后我們都要在12個(gè)獨(dú)立的瀏覽器上運(yùn)行10個(gè)獨(dú)立的測(cè)試套件。跨瀏覽器的JavaScript測(cè)試的可伸縮性還不行。

如果測(cè)試需要與用戶進(jìn)行交互,那么這對(duì)于jQuery乃至任何大量使用JavaScript的Web應(yīng)用來(lái)說(shuō)都是糟糕透頂?shù)氖虑榱恕?/P>

一些測(cè)試套件(如Yahoo UI、jQuery UI及Selenium)可以對(duì)用戶交互進(jìn)行自動(dòng)化(你可以編寫類似于“點(diǎn)擊按鈕”這樣的測(cè)試)。大多數(shù)情況下這能滿足我們的要求,但所有這些僅僅是對(duì)實(shí)際用戶交互的一種模擬。沒(méi)有什么東西可以與讓人手工運(yùn)行一些容易重現(xiàn)(并且可驗(yàn)證)的測(cè)試相提并論。

這是***的可伸縮性問(wèn)題。用自動(dòng)化的測(cè)試套件乘以想要運(yùn)行的測(cè)試個(gè)數(shù),手工在12個(gè)瀏覽器中運(yùn)行100個(gè)測(cè)試簡(jiǎn)直是天方夜譚。一定還有更好的辦法,因?yàn)楹苊黠@:跨瀏覽器的JavaScript測(cè)試的可伸縮性還不行。
像Selenium Grid這樣的解決方案有幾個(gè)限制:

據(jù)我所知,Selenium Grid需要用Selenium來(lái)運(yùn)行測(cè)試。目前還沒(méi)有哪個(gè)主流的JavaScript程序庫(kù)使用了Selenium(這么做的代價(jià)也不?。?/P>

它無(wú)法測(cè)試非桌面機(jī)。每個(gè)服務(wù)器都必須運(yùn)行一個(gè)后臺(tái)程序來(lái)處理眾多任務(wù),這樣移動(dòng)設(shè)備就不行了。

它無(wú)法測(cè)試未知的瀏覽器。每個(gè)瀏覽器都需要特殊的回調(diào)代碼以讓Selenium加載瀏覽器,這樣未知的瀏覽器(如IE 8、Opera 10、Firefox Nightly及Chrome)可能就沒(méi)法運(yùn)行了。

最重要的是:Selenium Grid要求你擁有大量機(jī)器來(lái)運(yùn)行測(cè)試,這不太可行,尤其是在分布式的開(kāi)源JavaScript開(kāi)發(fā)下更是如此。因此我們需要更加行之有效的解決方案。

John提出的解決方案Test Swarm基于JavaScript客戶端,該客戶端會(huì)持續(xù)不斷地向中央服務(wù)器發(fā)出連接請(qǐng)求以運(yùn)行測(cè)試。服務(wù)器收集測(cè)試套件并將其發(fā)送到各自的客戶端上:

以下是我設(shè)想的Test Swarm的工作方式:開(kāi)源的JavaScript程序庫(kù)將測(cè)試套件提交到中央服務(wù)器上,同時(shí)用戶也會(huì)參與進(jìn)來(lái)。程序庫(kù)的用戶需要在其日常的工作中額外開(kāi)兩個(gè)瀏覽器窗口來(lái)輔助我們的工作,這樣他們會(huì)感覺(jué)到也在參與著項(xiàng)目(其實(shí)就是這樣!)。

程序庫(kù)還可以將手工測(cè)試發(fā)給用戶。新的手工測(cè)試到來(lái)時(shí)會(huì)通知用戶(通過(guò)聲音提示?),這樣他們就能迅速執(zhí)行了。

用戶提供的這些幫助也不是無(wú)償?shù)模何覀兛梢越y(tǒng)計(jì)參與最積極的用戶,然后對(duì)前幾名進(jìn)行嘉獎(jiǎng)(T恤、杯子、書等等)。

相關(guān)信息

Test Swarm基于何種協(xié)議?

基于MIT協(xié)議(服務(wù)器端采用PHP和MySQL,客戶端是一些簡(jiǎn)單的JavaScript)。

除了框架所有者以外,你認(rèn)為它對(duì)于其他組織有何價(jià)值?

我認(rèn)為這對(duì)于其他組織和廠商都大有裨益。下面是我設(shè)想的成長(zhǎng)計(jì)劃:

首先開(kāi)放給主流的JavaScript程序庫(kù)(他們已經(jīng)建立好了測(cè)試套件和測(cè)試體制)。

接下來(lái)開(kāi)放給其他開(kāi)源的JavaScript項(xiàng)目。

然后開(kāi)放給其他組織,只要這些組織允許匿名用戶運(yùn)行其測(cè)試就行。

當(dāng)然通過(guò)這些步驟,任何組織都可以輕松下載服務(wù)器軟件并運(yùn)行自己的swarm實(shí)例——無(wú)需通過(guò)主要的Test Swarm服務(wù)器的測(cè)試。

在最初的聲明中,John還提到了Test Swarm的“corporate”版:

Test Swarm的“corporate”版已經(jīng)引起了很多人的興趣。目前對(duì)此還沒(méi)有什么計(jì)劃(除了以開(kāi)源的形式發(fā)布該軟件),我倒是想留點(diǎn)空間以便將來(lái)的擴(kuò)展(或許用戶會(huì)因手工測(cè)試而得到一些報(bào)酬——就像Mechanical Turk測(cè)試JavaScript那樣——我不知道,但確定的是其成長(zhǎng)空間很大)。

如果對(duì)Test Swarm感興趣可以索取其alpha版。

【編輯推薦】

  1. JavaScript解析Json字符串 眾瀏覽器性能比較
  2. 技術(shù)人員求職必看之Javascript詞法作用域
  3. 專題:基于JavaScript的Web客戶端開(kāi)發(fā)
責(zé)任編輯:yangsai 來(lái)源: InfoQ
相關(guān)推薦

2011-10-08 13:45:12

JavaScript

2009-12-04 13:56:48

VS 2005 Tea

2021-09-06 15:32:51

CISAKubernetes測(cè)試工具

2009-05-18 08:52:17

壓力測(cè)試Rpplet測(cè)試

2019-08-20 08:00:00

JavaScript測(cè)試工具前端

2010-08-12 08:57:03

FlexRIATest

2012-02-02 09:12:16

JavaJMeter

2009-06-26 10:22:58

JSF測(cè)試

2011-05-31 18:09:05

動(dòng)態(tài)測(cè)試

2020-03-11 20:38:13

JavaScript前端工具

2012-02-08 14:16:55

Apache

2009-03-31 09:49:40

Rational功能測(cè)試性能測(cè)試

2011-05-31 18:25:25

測(cè)試工具

2013-11-13 10:49:50

2023-12-27 07:35:29

HyBench數(shù)據(jù)字段

2010-06-04 16:31:33

Linux網(wǎng)絡(luò)測(cè)試

2014-07-01 10:09:01

2019-02-26 08:30:48

2012-12-24 22:54:31

2011-10-20 10:09:14

JavaScript
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)