版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
AutoRunner技術(shù)白皮書(shū)上海澤眾軟件科技有限公司目錄1.總述 32.1系統(tǒng)定位 82.2自動(dòng)功能測(cè)試工具的概念 82.3業(yè)務(wù)提供 112.3.1AutoRunner適用性說(shuō)明 112.3.2自動(dòng)化的功能測(cè)試 112.3.3自動(dòng)化的回歸測(cè)試 122.3.4每日構(gòu)建與冒煙測(cè)試 122.3.5版本升級(jí)測(cè)試 132.3.6特性概述 142.4產(chǎn)品設(shè)計(jì)目標(biāo) 163.系統(tǒng)體系結(jié)構(gòu)特性要求 173.1系統(tǒng)要求 173.2系統(tǒng)性能 193.3擴(kuò)展能力 203.4可靠性和可用性 223.5國(guó)際支持 254.系統(tǒng)基本功能 254.1測(cè)試案例創(chuàng)建與錄制 254.2測(cè)試案例編輯與參數(shù)化 264.3測(cè)試案例參數(shù)化 274.4增加同步點(diǎn)和驗(yàn)證點(diǎn) 294.5測(cè)試案例執(zhí)行與debug 305.AutoRunner的特點(diǎn) 316.廠商支持能力 35
1.總述背景隨著軟件規(guī)模的發(fā)展和對(duì)軟件系統(tǒng)的依賴,人們發(fā)現(xiàn):軟件的質(zhì)量對(duì)應(yīng)用系統(tǒng)的影響日益增加,質(zhì)量存在問(wèn)題的軟件會(huì)導(dǎo)致帳務(wù)出錯(cuò),客戶信息丟失,用戶的服務(wù)出錯(cuò)。因此,提高軟件的質(zhì)量成為一個(gè)重要的問(wèn)題。而測(cè)試正是提高軟件質(zhì)量的有效手段。數(shù)據(jù)顯示,在一個(gè)軟件開(kāi)發(fā)過(guò)程中,測(cè)試占到整個(gè)工作的40%-60%。所以,如何能夠在較低成本的情況下大幅度提高測(cè)試的質(zhì)量,對(duì)軟件的最終質(zhì)量起到非常重要的作用。另一方面,當(dāng)應(yīng)用軟件投入使用之后,隨著應(yīng)用的不斷發(fā)展和變化,將會(huì)提出大量的新增需求。新功能對(duì)用戶非常重要,能夠給用戶不斷發(fā)展的業(yè)務(wù)提供更強(qiáng)大的支撐。當(dāng)開(kāi)發(fā)人員修改軟件的功能、增加軟件功能,新增功能部分導(dǎo)致原有系統(tǒng)運(yùn)行不夠穩(wěn)定的幾率必然增加,可靠性降低:由于修改一個(gè)小錯(cuò)誤造成大量業(yè)務(wù)無(wú)法正常運(yùn)行的情況。這就需要做大量的回歸測(cè)試來(lái)保證系統(tǒng)的可靠性,通過(guò)回歸測(cè)試驗(yàn)證以往的功能是正確的、可靠的。傳統(tǒng)的回歸測(cè)試是由人工來(lái)實(shí)現(xiàn)的,需要大量的人員來(lái)完成固定的輸入和輸出檢查。人工測(cè)試帶來(lái)了一系列問(wèn)題:1、測(cè)試質(zhì)量難以保證。臨時(shí)參加測(cè)試的人員很多都是沒(méi)有受到足夠培訓(xùn)的人員,對(duì)應(yīng)用軟件本身的理解不夠充分,對(duì)測(cè)試技術(shù)也不夠了解,往往導(dǎo)致測(cè)試案例設(shè)計(jì)不夠嚴(yán)密,測(cè)試的質(zhì)量難以得到保證。2、測(cè)試的成本很高。組織一次大規(guī)模的回歸測(cè)試會(huì)導(dǎo)致大量成本發(fā)生:包括人工成本和管理成本等等。首先是測(cè)試人員自身的成本,然后是由于測(cè)試進(jìn)度比較緩慢造成的開(kāi)發(fā)人員延誤造成的成本,此外,管理測(cè)試人員,協(xié)調(diào)測(cè)試和開(kāi)發(fā)人員之間的關(guān)系也需要很多的工作和成本。3、測(cè)試進(jìn)度難以控制。由于人員、系統(tǒng)穩(wěn)定性等眾多方面的原因,導(dǎo)致測(cè)試的進(jìn)度比較難以度量和控制,造成項(xiàng)目風(fēng)險(xiǎn)防范困難。4、測(cè)試案例無(wú)法保存和管理。作為一個(gè)項(xiàng)目,測(cè)試案例是一個(gè)重要的財(cái)富:同軟件代碼一樣,是具有版本和價(jià)值的。傳統(tǒng)的做法是使用文檔來(lái)保存測(cè)試案例,無(wú)法提供一種標(biāo)準(zhǔn)格式來(lái)保存測(cè)試案例。這樣就會(huì)導(dǎo)致測(cè)試案例的存放非常困難,使用非常困難,造成了資源的浪費(fèi):但需要再做一次回歸測(cè)試的時(shí)候,往往原來(lái)的案例都被丟棄了,還需要重新設(shè)計(jì)和完成測(cè)試案例。解決方案企業(yè)可以建立一整套軟件自動(dòng)測(cè)試體系,包括:需求管理、測(cè)試分析、測(cè)試管理、缺陷跟蹤,并且把這個(gè)過(guò)程納入整個(gè)軟件項(xiàng)目開(kāi)發(fā)和軟件產(chǎn)品開(kāi)發(fā)過(guò)程。實(shí)際上,在CMM的規(guī)范中,測(cè)試本身就是SQA的一部分。自動(dòng)測(cè)試的基礎(chǔ)就在于測(cè)試工具,只有采用了優(yōu)秀的自動(dòng)測(cè)試軟件,才能夠解決自動(dòng)測(cè)試的問(wèn)題。自動(dòng)測(cè)試工具能夠在兩個(gè)階段給軟件開(kāi)發(fā)企業(yè)帶來(lái)價(jià)值:第一,對(duì)于軟件開(kāi)發(fā)人員來(lái)說(shuō),高效率的自動(dòng)測(cè)試工具能夠提供給程序員自己完成開(kāi)發(fā)過(guò)程中的冒煙測(cè)試,便于在頻繁修改的軟件過(guò)程中迅速完成測(cè)試,保證編碼的穩(wěn)定性;第二,對(duì)于項(xiàng)目和產(chǎn)品的測(cè)試階段來(lái)說(shuō),能夠提供穩(wěn)定的回歸測(cè)試,保證產(chǎn)品的可靠性。眾所周知,在測(cè)試階段發(fā)現(xiàn)問(wèn)題的投入,相對(duì)與在軟件投產(chǎn)之后出現(xiàn)錯(cuò)誤再去解決問(wèn)題要小的多。上海澤眾軟件科技有限公司開(kāi)發(fā)出了國(guó)內(nèi)第一個(gè)擁有自主知識(shí)產(chǎn)權(quán)的自動(dòng)測(cè)試軟件——自動(dòng)測(cè)試引擎(AutoRunner),能夠幫助用戶實(shí)現(xiàn)自動(dòng)化測(cè)試。概述1、本技術(shù)白皮書(shū)適用于上海澤眾軟件科技有限公司自動(dòng)測(cè)試工具(AutoRunner)。2、本技術(shù)白皮書(shū)是上海澤眾軟件科技有限公司自動(dòng)測(cè)試工具(AutoRunner)的技術(shù)說(shuō)明,也是技術(shù)談判的主要內(nèi)容,是采購(gòu)方詢價(jià)、系統(tǒng)選型以及系統(tǒng)測(cè)試和驗(yàn)收的主要技術(shù)依據(jù)。3、本技術(shù)白皮書(shū)是根據(jù)信息產(chǎn)業(yè)部頒布的有關(guān)技術(shù)體制和技術(shù)政策并結(jié)合上海澤眾軟件科技有限公司的實(shí)際情況制定的。本技術(shù)白皮書(shū)沒(méi)有提出而信息產(chǎn)業(yè)部的技術(shù)體制以及技術(shù)標(biāo)準(zhǔn)已有具體規(guī)定的內(nèi)容,應(yīng)按信息產(chǎn)業(yè)部的技術(shù)體制以及技術(shù)標(biāo)準(zhǔn)執(zhí)行,如果存在不一致應(yīng)以信息產(chǎn)業(yè)部頒布的最新技術(shù)體制及技術(shù)標(biāo)準(zhǔn)內(nèi)容為準(zhǔn)。本技術(shù)白皮書(shū)在內(nèi)容或技術(shù)指標(biāo)上如果存在錯(cuò)誤(包括印刷錯(cuò)誤),經(jīng)雙方確認(rèn)后可對(duì)該錯(cuò)誤內(nèi)容或技術(shù)指標(biāo)進(jìn)行修正。自動(dòng)測(cè)試工具(AutoRunner)版本升級(jí)之后,上海澤眾軟件科技有限公司有權(quán)對(duì)本技術(shù)白皮書(shū)進(jìn)行修改,并不需要主動(dòng)通知用戶。本技術(shù)白皮書(shū)以下內(nèi)容為用戶重點(diǎn)考察內(nèi)容:軟件的功能、性能、技術(shù)指標(biāo)和環(huán)境要求;設(shè)備容量計(jì)算和配置方法;所提供的數(shù)據(jù)庫(kù)的功能和性能指標(biāo);軟件安裝要求;提供軟件的接口、協(xié)議等工程技術(shù)要求;乙方供貨范圍、交貨能力和時(shí)間、運(yùn)輸、安裝、調(diào)測(cè)驗(yàn)收和培訓(xùn)等項(xiàng)內(nèi)容的日程安排;其他有關(guān)技術(shù)資料。本軟件對(duì)涉及專利、知識(shí)產(chǎn)權(quán)等法律條款承擔(dān)有限責(zé)任。本技術(shù)白皮書(shū)提供了對(duì)上海澤眾軟件科技有限公司的自動(dòng)測(cè)試工具(AutoRunner)的相關(guān)技術(shù)描述,由于用戶使用造成損失,上海澤眾軟件科技有限公司不承擔(dān)責(zé)任。本技術(shù)白皮書(shū)以中文編寫(xiě),未經(jīng)上海澤眾軟件科技有限公司同意或授權(quán)的其它語(yǔ)言或形式的技術(shù)白皮書(shū)無(wú)效。本技術(shù)規(guī)范書(shū)的解釋權(quán)歸上海澤眾軟件科技有限公司。
2.系統(tǒng)概述2.1系統(tǒng)定位AutoRunner是一個(gè)自動(dòng)測(cè)試工具的集合,也是一個(gè)自動(dòng)測(cè)試框架,加載不同的測(cè)試組件,就能夠?qū)崿F(xiàn)面向不同應(yīng)用的測(cè)試。AutoRunner支持瀏覽器測(cè)試和其他各種技術(shù)平臺(tái)的AUT(applicationundertest),包括:瀏覽器、java、win32、silverlight、flex、.NET等。2.2自動(dòng)功能測(cè)試工具的概念測(cè)試腳本自動(dòng)測(cè)試,就是使用一個(gè)程序來(lái)測(cè)試另一個(gè)程序(被測(cè)試的應(yīng)用系統(tǒng))功能的正確性。如果用來(lái)測(cè)試的程序本身非常復(fù)雜,也需要被測(cè)試,或者編寫(xiě)困難,那么自動(dòng)測(cè)試就失去了意義。因此,用來(lái)測(cè)試另外一個(gè)程序的程序往往是非常簡(jiǎn)單的,我們把這個(gè)程序稱為“測(cè)試腳本”。測(cè)試腳本通常在測(cè)試工具的IDE里執(zhí)行,并且獲得IDE的支持。自動(dòng)記錄當(dāng)我們編寫(xiě)測(cè)試腳本的時(shí)候,往往發(fā)現(xiàn)編寫(xiě)腳本本身是很困難的:了解腳本的語(yǔ)法、了解測(cè)試過(guò)程、把測(cè)試過(guò)程轉(zhuǎn)換稱為測(cè)試腳本語(yǔ)句。自動(dòng)記錄,就是通過(guò)記錄一個(gè)操作過(guò)程來(lái)獲得測(cè)試腳本的功能。通過(guò)自動(dòng)記錄,我們就能夠得到一個(gè)操作的基本的腳本,通過(guò)修改這個(gè)腳本,我們得到更通用的測(cè)試腳本。同步點(diǎn)在執(zhí)行測(cè)試腳本的時(shí)候,測(cè)試腳本語(yǔ)句的操作對(duì)象是GUI的組件。測(cè)試腳本通過(guò)這個(gè)組件的屬性(如:名稱、位置、winclass、disable等)來(lái)確定那個(gè)組件是我們需要操作的組件。這個(gè)查找組件的過(guò)程如果失敗,意味著:第一,應(yīng)用系統(tǒng)的響應(yīng)比較慢,需要等待一段時(shí)間再進(jìn)行一次定位;或者第二,該組件不存在。這個(gè)查找、定位組件的過(guò)程,我們稱為同步點(diǎn)。AutoRunner的同步點(diǎn)都是隱含方式的:在操作對(duì)象的時(shí)候進(jìn)行自動(dòng)同步,自動(dòng)設(shè)置同步點(diǎn)。檢查點(diǎn)測(cè)試的目的是檢查數(shù)據(jù)是否正確。在測(cè)試的過(guò)程中,我們需要檢查某個(gè)組件的某些屬性滿足某個(gè)條件。這個(gè)檢查的位置和條件,我們稱為檢查點(diǎn)。在AutoRunner中,使用check(“objectname”,“property”,“期望值”)來(lái)作為檢查點(diǎn)的腳本語(yǔ)句,它檢查對(duì)象objectname的屬性property是否和期望值一致。在使用使用中,可以使用檢查點(diǎn)來(lái)檢驗(yàn)系統(tǒng)的各個(gè)方面,如數(shù)據(jù)庫(kù)、GUI屬性等。參數(shù)化與數(shù)據(jù)驅(qū)動(dòng)測(cè)試腳本是針對(duì)一個(gè)測(cè)試過(guò)程的。一個(gè)測(cè)試過(guò)程往往需要眾多的數(shù)據(jù)來(lái)測(cè)試。通過(guò)自動(dòng)錄制得到的腳本,所有的輸入數(shù)據(jù)都是常數(shù),是固定的。如果需要使用一個(gè)測(cè)試腳本測(cè)試多組數(shù)據(jù),就需要對(duì)腳本進(jìn)行參數(shù)化,把固定的常數(shù)修改為來(lái)自數(shù)據(jù)源變量。這個(gè)過(guò)程我們稱為參數(shù)化。采用了參數(shù)化的腳本,我們稱為數(shù)據(jù)驅(qū)動(dòng)的模式。2.3業(yè)務(wù)提供所謂業(yè)務(wù)提供,就是指使用本自動(dòng)測(cè)試工具能夠提供的功能。2.3.1AutoRunner適用性說(shuō)明AutoRunner是一個(gè)產(chǎn)品家族,不是一個(gè)單個(gè)的產(chǎn)品。這個(gè)產(chǎn)品家族的特點(diǎn)是共同使用了一個(gè)標(biāo)準(zhǔn)的IDE,并且使用相同的測(cè)試腳本語(yǔ)言。從腳本的角度上看,他們是完全相同的。所不同的是相同的IDE采用不同的測(cè)試plugin組件。我們提供不同的組件以滿足不同的測(cè)試需求:2.3.2自動(dòng)化的功能測(cè)試AutoRunner的基本功能,就是對(duì)軟件進(jìn)行功能測(cè)試。功能測(cè)試本身是面向需求的黑盒測(cè)試工具。它以需求點(diǎn)為出發(fā)點(diǎn),為了滿足需求點(diǎn)(即需求),進(jìn)行測(cè)試分析,得到測(cè)試案例。然后使用測(cè)試工具得到測(cè)試案例庫(kù)(測(cè)試案例庫(kù)包括測(cè)試腳本和案例數(shù)據(jù)),并且根據(jù)測(cè)試案例庫(kù)對(duì)功能進(jìn)行測(cè)試,得到被測(cè)試軟件的錯(cuò)誤報(bào)告和缺陷跟蹤報(bào)告,進(jìn)而反饋給軟件開(kāi)發(fā)人員,幫助他們確定問(wèn)題,修改錯(cuò)誤,提高軟件的質(zhì)量。2.3.3自動(dòng)化的回歸測(cè)試由于軟件開(kāi)發(fā)是面向用戶需求的,而用戶需求也是不斷變化的。修改軟件會(huì)經(jīng)常性的引入錯(cuò)誤,根據(jù)統(tǒng)計(jì),每修改3個(gè)錯(cuò)誤可能會(huì)引入1個(gè)錯(cuò)誤。雖然修改了很小的一部分,卻存在引入巨大錯(cuò)誤的風(fēng)險(xiǎn)。防范風(fēng)險(xiǎn)的手段就是回歸測(cè)試。手工回歸測(cè)試往往需要大量的人力才能夠?qū)崿F(xiàn),這就出現(xiàn)了:減少測(cè)試(降低了成本)就增加了風(fēng)險(xiǎn);降低了風(fēng)險(xiǎn)(引入大量測(cè)試人員進(jìn)行全面的回歸測(cè)試)就會(huì)增加成本。采用AutoRunner的自動(dòng)化測(cè)試工具就能夠解決這個(gè)問(wèn)題。2.3.4每日構(gòu)建與冒煙測(cè)試程序員往往通過(guò)單元測(cè)試來(lái)對(duì)他(她)所負(fù)責(zé)的部分進(jìn)行測(cè)試。當(dāng)測(cè)試完成后,又需要進(jìn)行集成測(cè)試(即幾個(gè)模塊組裝在一起之后的測(cè)試)。單元測(cè)試是白盒測(cè)試,往往和最后的功能測(cè)試存在一定的差異。目前,很多先進(jìn)的做法(如微軟)都采用每日構(gòu)建和冒煙測(cè)試的方法,就是在每天程序員都需要提交自己的代碼,并且構(gòu)建一個(gè)版本進(jìn)行測(cè)試,第二天把測(cè)試的結(jié)果反饋給開(kāi)發(fā)者。每日構(gòu)建和冒煙測(cè)試能夠很大程度上提高軟件的開(kāi)發(fā)效率,并且對(duì)與SQA而言是增加了軟件度量的指標(biāo)。每日構(gòu)建和冒煙測(cè)試必然要建立在自動(dòng)測(cè)試工具的基礎(chǔ)上,依靠人是無(wú)法在每天晚上完成一次完整的功能測(cè)試的。2.3.5版本升級(jí)測(cè)試新軟件開(kāi)發(fā)完畢,即將發(fā)布的時(shí)候,用戶非常關(guān)心:新的版本是否能夠完成原來(lái)來(lái)版本的功能、是否和老版本功能兼容。重新測(cè)試一邊老版本的所有功能是必要的,會(huì)提前發(fā)現(xiàn)版本兼容的問(wèn)題、數(shù)據(jù)的問(wèn)題等等。實(shí)現(xiàn)這個(gè)測(cè)試的基礎(chǔ)就是自動(dòng)測(cè)試功能,基于AutoRunner的測(cè)試案例能夠在很短的時(shí)間之內(nèi)完成一次測(cè)試,防止問(wèn)題發(fā)生。2.3.6特性概述AutoRunner作為自動(dòng)測(cè)試工具,采用最流行的Javabeanshell腳本語(yǔ)言作為測(cè)試腳本,增加了測(cè)試人員對(duì)測(cè)試工具的接收程度,也能夠在測(cè)試人員學(xué)習(xí)測(cè)試工具的過(guò)程中學(xué)會(huì)java的基本知識(shí)。AutoRunner具有優(yōu)秀的錄制功能,能夠一次錄制非常完善的腳本和資源,降低了測(cè)試人員修改腳本的工作量。對(duì)于測(cè)試過(guò)程中遭遇不斷回放錯(cuò)誤的測(cè)試人員來(lái)說(shuō),是非常有價(jià)值的。強(qiáng)大的對(duì)象識(shí)別技術(shù)。在測(cè)試執(zhí)行的過(guò)程中,由于版本不同,可能會(huì)導(dǎo)致各個(gè)版本之間的組件發(fā)生名稱、位置、屬性等方面的變化,從而導(dǎo)致上一次錄制的腳本無(wú)法工作。AutoRunner的對(duì)象識(shí)別技術(shù),能夠不以來(lái)于對(duì)象的位置,并且具有自動(dòng)識(shí)別的功能,在無(wú)法精確定位組件的情況下,能夠選中一個(gè)最可能的組件,使得腳本的更改下降到最低。簡(jiǎn)便的腳本。對(duì)于使用java語(yǔ)言作為腳本,很多測(cè)試人員可能會(huì)擔(dān)心過(guò)于復(fù)雜。實(shí)際上,所有的測(cè)試腳本都是繼承一個(gè)標(biāo)準(zhǔn)的類TestCase,并且使用它提供的基本方法,因此是非常簡(jiǎn)單的,沒(méi)有復(fù)雜的java成分,便于那些已經(jīng)學(xué)習(xí)過(guò)其他測(cè)試工具的測(cè)試人員遷移到這個(gè)工具上來(lái)。自動(dòng)化的數(shù)據(jù)驅(qū)動(dòng)。AutoRunner提供了自動(dòng)化的數(shù)據(jù)驅(qū)動(dòng)功能:在錄制腳本的時(shí)候,已經(jīng)在腳本中實(shí)現(xiàn)了數(shù)據(jù)驅(qū)動(dòng)。用戶可以把不需要的數(shù)據(jù)驅(qū)動(dòng)修改為常量。因此,測(cè)試人員不需要自己來(lái)編寫(xiě)復(fù)雜的數(shù)據(jù)驅(qū)動(dòng)。另外AutoRunner還提供了一個(gè)數(shù)據(jù)驅(qū)動(dòng)框架,便于測(cè)試人員使用。關(guān)鍵字驅(qū)動(dòng)。AutoRunner實(shí)現(xiàn)了關(guān)鍵字驅(qū)動(dòng),IDE提供關(guān)鍵字視圖和專家視圖(編輯測(cè)試腳本),不熟悉腳本的用戶通過(guò)拖拽的方式也能夠編輯測(cè)試腳本;經(jīng)過(guò)編輯的測(cè)試腳本也能夠被轉(zhuǎn)換成關(guān)鍵字來(lái)查看和編輯。關(guān)鍵字驅(qū)動(dòng)的引入,降低了自動(dòng)測(cè)試的難度,使得不熟悉測(cè)試腳本的測(cè)試工程師也能夠編寫(xiě)和維護(hù)測(cè)試腳本。對(duì)象指示器。AutoRunner的對(duì)象指示器能夠在錄制腳本的時(shí)刻,指示識(shí)別到的對(duì)象,并且保存此對(duì)象的圖片,作為對(duì)象屬性的一部分。在關(guān)鍵字視圖上,能夠查看每個(gè)語(yǔ)句關(guān)聯(lián)的腳本;在對(duì)象瀏覽器上,可以在查看對(duì)象屬性的同時(shí)顯示對(duì)象的圖片,便于用戶理解當(dāng)前對(duì)象的位置信息。靈活的驗(yàn)證方式。案例執(zhí)行的正確與否需要數(shù)據(jù)比對(duì)來(lái)驗(yàn)證。AutoRunner提供了強(qiáng)大驗(yàn)證方式,用戶可以非常簡(jiǎn)便的通過(guò)編寫(xiě)腳本來(lái)使用,如提供對(duì)字符串的正則表達(dá)式驗(yàn)證。良好的擴(kuò)展性。一般的腳本雖然很簡(jiǎn)便,但是對(duì)于特殊的測(cè)試,往往需要更復(fù)雜的功能,例如:需要對(duì)網(wǎng)絡(luò)上的另一臺(tái)系統(tǒng)中的數(shù)據(jù)庫(kù)的某些數(shù)據(jù)進(jìn)行同步?;镜腁utoRunner不提供這個(gè)功能。由于AutoRunner使用了標(biāo)準(zhǔn)的java(目前為最新的JDK1.5)那么用戶可以自己編寫(xiě)一個(gè)同步方法(或者類)加入到系統(tǒng)中來(lái)使用,只要是java已經(jīng)提供的功能,都可以得到完善的支持。標(biāo)準(zhǔn)化。AutoRunner符合測(cè)試工具的基本要求,如:同步點(diǎn)、驗(yàn)證點(diǎn)、錯(cuò)誤報(bào)告等,都遵守了國(guó)際化測(cè)試標(biāo)準(zhǔn),便于用戶理解和使用,也便于用戶比較各個(gè)不同測(cè)試工具之間的差異。2.4產(chǎn)品設(shè)計(jì)目標(biāo)提高回歸測(cè)試的覆蓋率,提高測(cè)試質(zhì)量。對(duì)于功能已經(jīng)完整和成熟的軟件,每次發(fā)布一個(gè)新的版本,其中大部分功能和界面都和上一個(gè)版本相似或完全相同,這部分功能特別適合于自動(dòng)化測(cè)試,從而可以讓測(cè)試達(dá)到測(cè)試每個(gè)特征的目的。通過(guò)AutoRunner來(lái)編寫(xiě)回歸測(cè)試的測(cè)試案例,并且再每次發(fā)布版本的時(shí)候通過(guò)執(zhí)行所有的測(cè)試案例來(lái)進(jìn)行回歸測(cè)試,能夠覆蓋大量的功能——人工測(cè)試無(wú)法進(jìn)行測(cè)試的功能。每日測(cè)試的高效率。DCC版本的發(fā)布周期往往比較短,也就是開(kāi)發(fā)周期只有短短的幾個(gè)月,而在測(cè)試期間是每天/每2天都要發(fā)布一個(gè)版本供測(cè)試人員測(cè)試,一個(gè)系統(tǒng)的功能點(diǎn)有幾千個(gè)上萬(wàn)個(gè),人工測(cè)試是非常的耗時(shí)和繁瑣,這樣必然會(huì)使測(cè)試效率低下。AutoRunner通過(guò)高效率的自動(dòng)執(zhí)行測(cè)試案例,允許每天對(duì)版本進(jìn)行測(cè)試,提高測(cè)試效率。具有一致性和可重復(fù)性。由于每次自動(dòng)化測(cè)試運(yùn)行的腳本是相同的,所以每次執(zhí)行的測(cè)試具有一致性,人是很難做到的.由于自動(dòng)化測(cè)試的一致性,很容易發(fā)現(xiàn)被測(cè)軟件的任何改變。更好的利用資源--周未/晚上。理想的自動(dòng)化測(cè)試能夠按計(jì)劃完全自動(dòng)的運(yùn)行,在開(kāi)發(fā)人員和測(cè)試人員不可能實(shí)行三班倒的情況下,自動(dòng)化測(cè)試可以勝任這個(gè)任務(wù),完全可以在周末和晚上執(zhí)行測(cè)試.這樣充分的利用了公司的資源,也避免了開(kāi)發(fā)和測(cè)試之間的等待。解決測(cè)試與開(kāi)發(fā)之間的矛盾。通常在開(kāi)發(fā)的末期,進(jìn)入集成測(cè)試階段,由于每次發(fā)布一個(gè)版本的初期,測(cè)試系統(tǒng)的錯(cuò)誤比較少,這時(shí)開(kāi)發(fā)人員有等待測(cè)試人員測(cè)試出錯(cuò)誤的時(shí)間.事實(shí)上在迭代周期很短的開(kāi)發(fā)模式中,存在更多的矛盾,但自動(dòng)化測(cè)試可以解決其中的主要矛盾。將煩瑣的任務(wù)轉(zhuǎn)化為自動(dòng)化測(cè)試。大量重復(fù)的測(cè)試是非常繁瑣的,并且需要消耗大量的人力才能夠完成。自動(dòng)測(cè)試能夠很好的解決這個(gè)問(wèn)題,不需要繁瑣的勞動(dòng),不需要大量的人員。增加軟件信任度。只有經(jīng)過(guò)大量測(cè)試案例測(cè)試過(guò)的版本才是可靠的,而只有使用自動(dòng)測(cè)試才能夠保證在段時(shí)間內(nèi)完成大量的測(cè)試案例。3.系統(tǒng)體系結(jié)構(gòu)特性要求3.1系統(tǒng)要求操作系統(tǒng)環(huán)境:WindowsXPWindows2000Windows2003注:理論上對(duì)于安裝了jdk1.5的windows系統(tǒng)都提供支持。系統(tǒng)要求: JDK1.5 IE5.5以上(針對(duì)IE的plugin)測(cè)試案例數(shù)據(jù)格式 XML EXCEL注:理論上支持jdbc接口的數(shù)據(jù)庫(kù)。AutoRunner是一個(gè)自動(dòng)化的功能測(cè)試工具,它可以和測(cè)試管理工具、缺陷跟蹤工具一起來(lái)使用,以達(dá)到更好的效果:AutoRunnerAutoRunner測(cè)試管理工具缺陷跟蹤工具測(cè)試需求管理測(cè)試案例管理測(cè)試計(jì)劃測(cè)試執(zhí)行測(cè)試結(jié)構(gòu)設(shè)計(jì)測(cè)試腳本錄制、編寫(xiě)、調(diào)試查看測(cè)試結(jié)果查看缺陷查看缺陷跟蹤報(bào)告3.2系統(tǒng)性能AutoRunner針對(duì)與系統(tǒng)的功能測(cè)試自動(dòng)化,對(duì)性能要求不高:自動(dòng)測(cè)試的腳本執(zhí)行速度,超過(guò)人工執(zhí)行的速度。3.3擴(kuò)展能力擴(kuò)展驗(yàn)證點(diǎn)所謂的驗(yàn)證點(diǎn),就是用來(lái)驗(yàn)證被測(cè)試系統(tǒng)返回?cái)?shù)據(jù)或者狀態(tài)是否和預(yù)期一致的點(diǎn)。AutoRunner提供了完整的驗(yàn)證點(diǎn)功能,用來(lái)驗(yàn)證字符串、bitmap文件是否正確,對(duì)字符串可以驗(yàn)證是否符合定義的“正則表達(dá)式”。當(dāng)然,由于驗(yàn)證往往是非常復(fù)雜的,例如:當(dāng)我們使用一個(gè)功能向database中增加一條記錄后,通過(guò)jdbc來(lái)查看該記錄是否已經(jīng)被增加。這就需要用戶根據(jù)具體的數(shù)據(jù)庫(kù)來(lái)編寫(xiě)一個(gè)功能來(lái)實(shí)現(xiàn)特殊的校驗(yàn)點(diǎn)。系統(tǒng)提供了基本的校驗(yàn)方法,允許用戶自己來(lái)通過(guò)編寫(xiě)一個(gè)特殊校驗(yàn)的類,或者一個(gè)特殊的方法來(lái)定義特殊的校驗(yàn)點(diǎn)(調(diào)用的結(jié)果如果希望反映的標(biāo)準(zhǔn)的測(cè)試報(bào)告中,就需要調(diào)用系統(tǒng)提供的基本方法),最終實(shí)現(xiàn)對(duì)驗(yàn)證點(diǎn)功能的擴(kuò)展。自動(dòng)錄制時(shí)候的針對(duì)用戶自定義組件的識(shí)別根據(jù)國(guó)外測(cè)試人員的經(jīng)驗(yàn),編寫(xiě)腳本的工作中,大量的工作都被用戶的自定義組件消耗了。由于很多的測(cè)試工具本身支持一組標(biāo)準(zhǔn)的控件,在自動(dòng)錄制的時(shí)候,系統(tǒng)能夠根據(jù)這些組件來(lái)生成測(cè)試腳本,并且允許回放這個(gè)腳本來(lái)執(zhí)行測(cè)試。當(dāng)用戶自定義了一個(gè)組件之后,用戶定義的組件是基于基本組件的,系統(tǒng)就往往無(wú)法自動(dòng)識(shí)別這些組件,導(dǎo)致測(cè)試人員錄制腳本的時(shí)候非常復(fù)雜:名稱不同、識(shí)別困難、運(yùn)行時(shí)刻同步點(diǎn)錯(cuò)誤。AutoRunner提供了對(duì)組件的定義功能:所有的組件類型必須被定義,并且只有最上層的已定義類型組件被識(shí)別,其他的組件都不會(huì)被識(shí)別。如果用戶定義了自己的組件,那么他只需要把他自己定義組件的:類名、contexttype增加到組件定義文件中就可以了。AutoRunner的這個(gè)功能大大增強(qiáng)了對(duì)用戶自定義組件的支持,使得測(cè)試人員能夠錄制正確的腳本、編寫(xiě)正確的腳本,減少差錯(cuò)。對(duì)第三方測(cè)試管理工具的支持AutoRunner提供了對(duì)第三方測(cè)試管理工具的支持:通過(guò)數(shù)據(jù)文件或者數(shù)據(jù)庫(kù),就可以傳遞測(cè)試案例信息、測(cè)試案例數(shù)據(jù)信息。AutoRunner提供了命令行的支持,支持用戶在遠(yuǎn)程啟動(dòng)和調(diào)用,這就為第三方的測(cè)試管理工具提供了一個(gè)執(zhí)行調(diào)用接口。對(duì)第三方缺陷跟蹤工具的支持同樣的,AutoRunner可以提供針對(duì)缺陷跟蹤工具的API的調(diào)用,和第三方缺陷跟蹤工具達(dá)到“無(wú)縫連接”。3.4可靠性和可用性系統(tǒng)的可用性和可靠性由幾個(gè)指標(biāo)來(lái)衡量:系統(tǒng)的出錯(cuò)處理能力。也就是,當(dāng)系統(tǒng)出現(xiàn)錯(cuò)誤之后,是否能夠提供完善的錯(cuò)誤處理機(jī)制,跳過(guò)錯(cuò)誤,繼續(xù)執(zhí)行允許執(zhí)行的下一個(gè)功能點(diǎn)測(cè)試。系統(tǒng)執(zhí)行過(guò)程中工具不會(huì)出現(xiàn)異常,導(dǎo)致測(cè)試無(wú)法正常執(zhí)行。測(cè)試腳本出現(xiàn)異常,提供強(qiáng)大的調(diào)試功能。當(dāng)AutoRunner升級(jí)之后,原有測(cè)試腳本能夠兼容,繼續(xù)使用。具體到AutoRunner,如下:系統(tǒng)的出錯(cuò)處理能力對(duì)所有的測(cè)試案例來(lái)說(shuō),每一個(gè)測(cè)試案例都是一個(gè)繼承自classTestCase的子類,在測(cè)試過(guò)程中的動(dòng)作都是調(diào)用父類TestCase中的方法來(lái)實(shí)現(xiàn)的,如:setWindow(),setValue(),getValue(),setProperty(),getProperty()等。這些方法在出錯(cuò)的時(shí)候(一般都是同步點(diǎn)錯(cuò)誤),會(huì)拋出一個(gè)異常syncException。案例只有一個(gè)主要的測(cè)試過(guò)程類:test()throwssyncException。當(dāng)test()執(zhí)行的時(shí)候,如果出現(xiàn)異常,就會(huì)拋出一個(gè)syncException,外部的方法會(huì)catch到這個(gè)syncException,然后使用一個(gè)通用的方法來(lái)處理錯(cuò)誤。測(cè)試人員只需要編寫(xiě)一個(gè)標(biāo)準(zhǔn)的錯(cuò)誤處理方法就可以完成這些所有的工作。當(dāng)然,這個(gè)測(cè)試人員需要對(duì)java有一定的了解和熟悉,但是這樣的人員只需要一個(gè)就可以了,因?yàn)槌鲥e(cuò)處理程序只需要一個(gè),它用來(lái)處理所有的錯(cuò)誤,并且使得下一個(gè)測(cè)試案例可以被執(zhí)行。IDE的穩(wěn)定性。在一個(gè)大量的測(cè)試案例被執(zhí)行的時(shí)候,實(shí)際上IDE并沒(méi)有工作,它只是在等待響應(yīng)。執(zhí)行測(cè)試的過(guò)程,就是執(zhí)行java各個(gè)不同的類的過(guò)程。而TestCase是一個(gè)非常健壯的類,不會(huì)導(dǎo)致系統(tǒng)出現(xiàn)異常。因此,IDE從理論上是非常堅(jiān)固的。另外基于java的系統(tǒng)一般而言,穩(wěn)定性都非常好。特別是所有的測(cè)試案例基本上都是繼承自classTestCase。產(chǎn)品升級(jí)當(dāng)產(chǎn)品升級(jí)的時(shí)候,對(duì)原有測(cè)試案例影響最大的就是TestCase類的變化。classTestCase實(shí)際上只是一個(gè)abstract,只實(shí)現(xiàn)了一個(gè)基本的interface,實(shí)際的功能都是由底層的組件來(lái)實(shí)現(xiàn)的,這個(gè)組件在IDE啟動(dòng)的時(shí)候被load,跟測(cè)試人員自己編寫(xiě)的測(cè)試案例沒(méi)有任何直接關(guān)系。因此當(dāng)?shù)讓拥念惏l(fā)生變化的時(shí)候——系統(tǒng)升級(jí)可能會(huì)帶來(lái)底層類的變化——對(duì)測(cè)試腳本沒(méi)有影響。3.5國(guó)際支持支持多種語(yǔ)言Unicode編碼形式;用戶可以選擇中英文界面的版本。系統(tǒng)對(duì)語(yǔ)言編碼的識(shí)別是由系統(tǒng)自動(dòng)完成,用戶不必考慮選碼的問(wèn)題。4.系統(tǒng)基本功能4.1測(cè)試案例創(chuàng)建與錄制創(chuàng)建測(cè)試案例用戶能夠創(chuàng)建一個(gè)測(cè)試案例。創(chuàng)建的測(cè)試案例腳本是空的,需要用戶自己來(lái)加入包的名字、類的名字等等。創(chuàng)建測(cè)試案例可以在項(xiàng)目瀏覽器中使用右鍵菜單或者系統(tǒng)的菜單。如果用戶是一個(gè)非常熟悉測(cè)試案例的測(cè)試人員,他(她)就可以自己手工來(lái)編寫(xiě)測(cè)試案例的代碼了。但是,由于資源文件不存在,所以他(她)如果希望自己編寫(xiě)的測(cè)試案例能夠執(zhí)行的化,還需要手工編寫(xiě)對(duì)應(yīng)的xml資源文件。創(chuàng)建測(cè)試案例的過(guò)程都是從錄制開(kāi)始的。通過(guò)錄制創(chuàng)建測(cè)試腳本當(dāng)你從菜單或者工具條啟動(dòng)“錄制”命令,系統(tǒng)開(kāi)始記錄你的所有操作,并且在記錄過(guò)程中把生成的腳本文件顯示在編輯器上面。錄制的結(jié)果是,你得到了:1)一個(gè)可以被執(zhí)行的測(cè)試腳本文件;2)測(cè)試腳本相關(guān)的資源文件,這個(gè)資源文件用來(lái)記錄所有腳本中用到的窗口、組件的屬性(如:名稱、位置、tabindex、類型等)。4.2測(cè)試案例編輯測(cè)試案例的結(jié)構(gòu)測(cè)試案例是具有結(jié)構(gòu)的,它能夠運(yùn)行,首先要符合java的語(yǔ)法和主程序入口。并且它需要使用測(cè)試基本類提供的功能來(lái)完成測(cè)試。測(cè)試案例編輯AutoRunner提供了強(qiáng)大的測(cè)試案例編輯功能:第一,提供了java腳本的關(guān)鍵字識(shí)別技術(shù),能夠識(shí)別系統(tǒng)的關(guān)鍵字,避免語(yǔ)法錯(cuò)誤;第二,提供了實(shí)時(shí)語(yǔ)法分析的功能,在編輯過(guò)程中動(dòng)態(tài)分析語(yǔ)法,并且對(duì)語(yǔ)法錯(cuò)誤動(dòng)態(tài)報(bào)警,盡量避免編譯時(shí)刻再出現(xiàn)錯(cuò)誤。4.3測(cè)試案例參數(shù)化什么是數(shù)據(jù)驅(qū)動(dòng)?錄制完成測(cè)試案例之后,你就得到了一個(gè)測(cè)試腳本。如果這個(gè)測(cè)試腳本只能夠被執(zhí)行一組數(shù)據(jù),并且數(shù)據(jù)是固定不變的,那么你每一次的測(cè)試就只能夠執(zhí)行很簡(jiǎn)單的功能了。邊界條件、路徑覆蓋,需要使用一個(gè)腳本、很多組數(shù)據(jù)輸入才能夠完成,固定的數(shù)據(jù)無(wú)法滿足要求。數(shù)據(jù)驅(qū)動(dòng)就是指能夠把需要輸入(和驗(yàn)證)的數(shù)據(jù)參數(shù)化,通過(guò)腳本執(zhí)行不同的數(shù)據(jù),就實(shí)現(xiàn)了數(shù)據(jù)驅(qū)動(dòng),也就是數(shù)據(jù)與腳本分離。AutoRunner實(shí)現(xiàn)了腳本與數(shù)據(jù)分離:腳本使用java的腳本,在腳本執(zhí)行的時(shí)候,從數(shù)據(jù)源中讀取數(shù)據(jù)。AutoRunner使用了DataSource這樣一個(gè)接口來(lái)實(shí)現(xiàn)參數(shù)化。DataSource通過(guò)外部定義的組件實(shí)現(xiàn)對(duì)外部數(shù)據(jù)源的操作功能,從外部獲取數(shù)據(jù)。DataSource本身就是通過(guò)插件來(lái)實(shí)現(xiàn)的,IDE只定義了interface,外部插件決定系統(tǒng)的行為。通過(guò)加載不同的插件,用戶可以使用不同的數(shù)據(jù)源來(lái)訪問(wèn)數(shù)據(jù)。如:excel、xml、db和其他。測(cè)試案例參數(shù)化 AutoRunner在自動(dòng)錄制完成之后,可以通過(guò)菜單“參數(shù)化”,AutoRunner會(huì)彈出所有的對(duì)象樹(shù),提供給用戶勾選,選中部分進(jìn)行自動(dòng)參數(shù)化。參數(shù)化的結(jié)果:1)腳本變?yōu)閰?shù)化腳本;2)數(shù)據(jù)池自動(dòng)增加了選擇的參數(shù)列表。在測(cè)試案例參數(shù)化之后,用戶仍然可以手工來(lái)修改,實(shí)現(xiàn)進(jìn)一步的參數(shù)編輯工作。創(chuàng)建外部數(shù)據(jù)源只有訪問(wèn)數(shù)據(jù)源的腳本,沒(méi)有外部數(shù)據(jù)源,那么所有的腳本訪問(wèn)都會(huì)失敗。用戶需要?jiǎng)?chuàng)建外部的數(shù)據(jù)源。有兩種方式創(chuàng)建數(shù)據(jù)源:第一,自動(dòng)通過(guò)IDE創(chuàng)建。在腳本文件中,選中該腳本的右鍵菜單中的“創(chuàng)建/維護(hù)腳本”,IDE會(huì)自動(dòng)查找所有的datasource操作,并且更新數(shù)據(jù)源。第二,通過(guò)手工創(chuàng)建。需要在外面手工編輯文件。4.4增加同步點(diǎn)和驗(yàn)證點(diǎn)同步點(diǎn)的概念在進(jìn)行輸入輸出之前,就需要對(duì)系統(tǒng)進(jìn)行同步,使得輸入和輸出能夠針對(duì)正確的窗口或者組件,以免出現(xiàn)異常和錯(cuò)誤。如果同步條件沒(méi)有出現(xiàn),系統(tǒng)就需要等待一段時(shí)間,來(lái)滿足運(yùn)行系統(tǒng)的要求,使得需要操作的組件能夠顯示出來(lái)。自動(dòng)同步和手工同步點(diǎn)所謂的自動(dòng)同步點(diǎn),是只在操作過(guò)程中,由于本身需要執(zhí)行操作,如對(duì)某個(gè)組件輸入一串字符,而需要等待這個(gè)組件出現(xiàn),這種同步點(diǎn)是系統(tǒng)在操作過(guò)程中自動(dòng)加入的,我們稱為“自動(dòng)同步點(diǎn)”。也有一些情況,需要手工增加一些同步點(diǎn),當(dāng)系統(tǒng)執(zhí)行到一定時(shí)候,需要等待一個(gè)條件出現(xiàn)再繼續(xù)執(zhí)行,這種同步點(diǎn)我們稱為“手工同步點(diǎn)”。用戶需要關(guān)心的是手工同步點(diǎn),例如:需要等待一個(gè)image能夠正確顯示,然后再繼續(xù)下面的工作。它不是單純的等待,而是每間隔一段時(shí)間就去查看是否滿足同步條件,如果滿足系統(tǒng)就繼續(xù)執(zhí)行,如果不滿足而系統(tǒng)超時(shí)時(shí)間沒(méi)有達(dá)到,就繼續(xù)等待。如果出現(xiàn)超時(shí),那么就拋出SyncException。驗(yàn)證點(diǎn)測(cè)試的目的是看執(zhí)行一個(gè)過(guò)程,結(jié)果是否和預(yù)期結(jié)果一致。驗(yàn)證的方法就是查看結(jié)果是否一致,這個(gè)點(diǎn)我們稱作“驗(yàn)證點(diǎn)”。驗(yàn)證成功則繼續(xù)執(zhí)行,驗(yàn)證不成功也需要繼續(xù)執(zhí)行,并且把結(jié)果寫(xiě)入測(cè)試報(bào)告。AutoRunner的驗(yàn)證點(diǎn)需要手工加入——AutoRunner不知道用戶需要驗(yàn)證那些內(nèi)容。增加驗(yàn)證點(diǎn) 用戶可以使用編輯器來(lái)增加驗(yàn)證點(diǎn),AutoRunner提供了方法讓用戶來(lái)增加驗(yàn)證點(diǎn)。4.5測(cè)試案例執(zhí)行測(cè)試案例執(zhí)行當(dāng)測(cè)試案例只有能夠被執(zhí)行才有意義。在AutoRunner里,測(cè)試案例是一個(gè)java的類(特殊的java類)。這個(gè)類首先被編譯,然后執(zhí)行。通過(guò)菜單上的“執(zhí)行”項(xiàng),你可以執(zhí)行這個(gè)測(cè)試案例。如果編譯出現(xiàn)錯(cuò)誤,則會(huì)在信息欄中提示錯(cuò)誤。執(zhí)行支持標(biāo)準(zhǔn)輸出,并且把標(biāo)準(zhǔn)輸出顯示在AutoRunner下面的輸出框里面。多次執(zhí)行當(dāng)測(cè)試用例被執(zhí)行的時(shí)候,AutoRunner會(huì)提示,需要用戶輸入當(dāng)前測(cè)試腳本被參數(shù)化之后,需要使用的數(shù)據(jù)列表的行號(hào)范圍。輸入之后,會(huì)多次執(zhí)行這個(gè)測(cè)試腳本,每次使用一行的數(shù)據(jù),達(dá)到一個(gè)腳本中執(zhí)行多次的目標(biāo)。測(cè)試跟蹤調(diào)試測(cè)試腳本本身也可能出錯(cuò),也可能由于被測(cè)試對(duì)象的變化(如缺少了一個(gè)對(duì)象)而出現(xiàn)錯(cuò)誤。因此,定位和排除錯(cuò)誤的方法,我們使用了跟蹤調(diào)試。AutoRunner使用了java作為測(cè)試腳本,并且每個(gè)測(cè)試腳本都是一個(gè)java的類。因此AutoRunner實(shí)現(xiàn)了java的跟蹤體系結(jié)構(gòu):JDA。AutoRunner允許用戶設(shè)置斷點(diǎn)、查看本地變量值、查看指定的變量的值,并且提供了單步執(zhí)行的各種模式。5.AutoRunner的特點(diǎn)評(píng)估自動(dòng)測(cè)試工具的關(guān)鍵在于:第一,很高的建立測(cè)試案例的生產(chǎn)率;第二,降低用戶的二次開(kāi)發(fā)成本;第三,便于維護(hù)使用;第四,便于測(cè)試案例的數(shù)據(jù)驅(qū)動(dòng)擴(kuò)展;第五,測(cè)試案例資源的延續(xù)性;第六,擴(kuò)展性。下面,我們就AutoRunner在這幾個(gè)方面的特點(diǎn)簡(jiǎn)要介紹:AutoRunner具有很高的生產(chǎn)率。自動(dòng)測(cè)試工具建立一個(gè)測(cè)試案例腳本的時(shí)間成本為手工測(cè)試一次的3-10倍,可見(jiàn)建立自動(dòng)測(cè)試的起始是需要一定的成本的。如何降低建立測(cè)試案例的成本,是自動(dòng)測(cè)試工具的關(guān)鍵。AutoRunner的優(yōu)勢(shì)在于:首先,優(yōu)秀的自動(dòng)識(shí)別組件功能。腳本能夠在錄制完成之后直接使用,能夠自動(dòng)適應(yīng)出現(xiàn)的各種情況,如:窗口位置、title、大小等的變化,組件位置、名稱的變化。通過(guò)自動(dòng)識(shí)別能夠識(shí)別處組件,從而降低對(duì)編寫(xiě)腳本的要求,提高了自動(dòng)錄制的可用性。第二,提供了數(shù)據(jù)驅(qū)動(dòng)框架。很多測(cè)試工具雖然支持參數(shù)化的功能,但是需要手工完成數(shù)據(jù)驅(qū)動(dòng)框架,才能夠?qū)崿F(xiàn)數(shù)據(jù)驅(qū)動(dòng):從指定的文件中獲取數(shù)據(jù)。AutoRunner自動(dòng)定義標(biāo)準(zhǔn)的數(shù)據(jù)驅(qū)動(dòng)模式,定義了標(biāo)準(zhǔn)的數(shù)據(jù)驅(qū)動(dòng)格式,降低了增加測(cè)試案例的成本。雖然建立一個(gè)測(cè)試腳本需要一定的時(shí)間,但是在測(cè)試腳本建立之后增加一組數(shù)據(jù)的時(shí)間卻非常短。模糊識(shí)別。AutoRunner對(duì)每種組件定義了標(biāo)準(zhǔn)的模糊識(shí)別指標(biāo)。在錄制測(cè)試案例之后,系統(tǒng)的資源文件就會(huì)根據(jù)系統(tǒng)的配置文件生成確定識(shí)別權(quán)重的指標(biāo)。在測(cè)試腳本被執(zhí)行的時(shí)候,通過(guò)權(quán)重算法來(lái)進(jìn)行模糊識(shí)別和匹配。關(guān)鍵字驅(qū)動(dòng)。AutoRunner提供了領(lǐng)先的關(guān)鍵字驅(qū)動(dòng)技術(shù),支持腳本編寫(xiě)使用專家視圖,不熟悉腳本的用戶使用關(guān)鍵字視圖,并且實(shí)現(xiàn)在腳本視圖與關(guān)鍵字視圖之間的相互轉(zhuǎn)換,既提升了效率,也提升了易用性,既能夠給熟悉腳本的測(cè)試工程師提供高效的工作平臺(tái),也能夠給不熟悉測(cè)試腳本的測(cè)試工程師使用方便。用戶可以對(duì)系統(tǒng)配置文件的識(shí)別參數(shù)進(jìn)行調(diào)整,達(dá)到修改整個(gè)錄制腳本識(shí)別參數(shù)權(quán)重的目標(biāo),便于提高整個(gè)項(xiàng)目中腳本開(kāi)發(fā)的效率。在用戶錄制完成腳本之后,可以對(duì)對(duì)應(yīng)的資源文件的權(quán)重屬性進(jìn)行修改,使系統(tǒng)能夠定制具體的模糊識(shí)別對(duì)象,對(duì)腳本組件識(shí)別算法作特殊處理。通過(guò)模糊識(shí)別算法,能夠極大地提高腳本執(zhí)行的可靠性,對(duì)于由于類似組件位置、大小等變化之下的腳本執(zhí)行,能夠起到非常良好的效果:用戶不需要因?yàn)榻缑嫘〉男薷亩鴮?dǎo)致來(lái)修改測(cè)試腳本。便于維護(hù)使用。案例完成之后,隨著應(yīng)用系統(tǒng)的修改、應(yīng)用系統(tǒng)版本的提升,同樣需要維護(hù)這個(gè)測(cè)試用例庫(kù),因此維護(hù)使用是非常重要的功能。維護(hù)方便性主要體現(xiàn)在幾個(gè)方面:簡(jiǎn)潔的框架、容易理解的腳本、方便的調(diào)試功能。AutoRunner提供了針對(duì)測(cè)試案例的框架,這個(gè)框架包括:案例層次劃分(AutoRunner的案例由Action組成,每個(gè)Action包含對(duì)一個(gè)Window的所有操作,AutoRunner允許在案例之間共享Action來(lái)提高系統(tǒng)的可維護(hù)性)、數(shù)據(jù)驅(qū)動(dòng)框架、自動(dòng)同步、數(shù)據(jù)校驗(yàn)?zāi)J降?。使用這些框架能夠非常容易的維護(hù)測(cè)試案例庫(kù)。AutoRunner采用了java的語(yǔ)法,測(cè)試人員使用的語(yǔ)法非常簡(jiǎn)單,便于理解和使用。并且,由于系統(tǒng)提供了關(guān)鍵字驅(qū)動(dòng)的框架,所以對(duì)一般的維護(hù)而言,根本不需要了解java,只需要知道最基本的操作就可以。AutoRunner遵守JDA的標(biāo)準(zhǔn),提供了最強(qiáng)大的系統(tǒng)調(diào)試功能:從設(shè)置斷點(diǎn)、單步執(zhí)行、變量查看、表達(dá)式查看等方面提供支持,便于測(cè)試人員容易排除錯(cuò)誤。另外,AutoRunner提供了強(qiáng)大的編輯器,在一般編輯器能夠動(dòng)態(tài)識(shí)別語(yǔ)法關(guān)鍵字的基礎(chǔ)上,還能夠同時(shí)提供語(yǔ)法檢查——在編輯的時(shí)候從事語(yǔ)法檢查,對(duì)錯(cuò)誤的語(yǔ)法實(shí)時(shí)提示。這個(gè)編輯器對(duì)于比較缺乏編程經(jīng)驗(yàn)的程序員來(lái)說(shuō),非常重要。測(cè)試案例資源的延續(xù)性和擴(kuò)展性。測(cè)試案例庫(kù)本身也是一種資源它和應(yīng)用版本是對(duì)映的關(guān)系,隨著應(yīng)用系統(tǒng)版本的升級(jí),案例庫(kù)也會(huì)升級(jí),那么回歸測(cè)試的效果才能夠最大化。對(duì)于測(cè)試工具來(lái)說(shuō),要保證這個(gè)資源,就需要保證:測(cè)試腳本的兼容性。另外由于隨著應(yīng)用的發(fā)展,測(cè)試工具的功能需要大幅度的提升,因此工具的可擴(kuò)展性也需要保證才能夠保證測(cè)試案例資源的延續(xù)性。AutoRunner使用了java語(yǔ)言作為基礎(chǔ),并且實(shí)現(xiàn)了java調(diào)試功能,可以隨著java的發(fā)展不斷的發(fā)展,擴(kuò)展自己的功能。采用java語(yǔ)言是一個(gè)巨大的優(yōu)勢(shì),比測(cè)試工具自己使用一種語(yǔ)言要方便的多。從根本上說(shuō),AutoRunner不是采用了哪種語(yǔ)言的語(yǔ)法,而是從根本上就是java語(yǔ)言。這和采用vbscript或者c語(yǔ)言語(yǔ)法的工具是截然不同的。在擴(kuò)展外部功能方面,由于AutoRunner使用了java語(yǔ)言,允許使用外部的包,也就是說(shuō)可以任意增加腳本本身的功能而不受語(yǔ)法的限制和工具本身是否支持外部包的限制——在最大程度上提高了擴(kuò)展性。6.廠商支持能力提供完備的用戶手冊(cè),管理員使用手冊(cè),系統(tǒng)技術(shù)手冊(cè)并再系統(tǒng)升級(jí)后及時(shí)修改更新服務(wù)。廠商能夠根據(jù)在實(shí)際應(yīng)用中的問(wèn)題,迅速給予解答(2小時(shí)內(nèi)),并給出解決方案(48小時(shí)內(nèi))。400免費(fèi)售后電話:400-035-7887
PAGE5 PAGE2公司治理的核心原則黃一義
編譯什么是公司治理?
公司治理是調(diào)整公司企業(yè)各方參與者關(guān)系的規(guī)范,這些參與者主要包括三個(gè)方面:股東;(以CEO為首的)公司管理層;董事會(huì)及其成員。這些參與者決定著公司的發(fā)展方向和績(jī)效。公司治理結(jié)構(gòu)的目標(biāo)是要在這三方面參與者之間建立起兩種有效的負(fù)責(zé)任(accountable)的關(guān)系,即董事會(huì)對(duì)管理層的有效監(jiān)督和股東對(duì)董事會(huì)的有效制約。經(jīng)驗(yàn)表明,股東積極行使其所有者權(quán)力參與公司事務(wù),會(huì)使公司管理層更加負(fù)責(zé)且更加關(guān)注公司的業(yè)績(jī),因而對(duì)股東的投資帶來(lái)更多的回報(bào)。美國(guó)的一家大型信托機(jī)構(gòu)棗擁有1000多億美元資產(chǎn)的加州雇員退休系統(tǒng)1996年的一項(xiàng)研究表明,這種積極的參與使美國(guó)公司新增利潤(rùn)達(dá)1.5億美元。公司治理的核心原則
公司治理的核心原則對(duì)維持一個(gè)公開(kāi)、公平的資本市場(chǎng)是必須的,是資本市場(chǎng)吸引投資者的廣泛參與并保持其競(jìng)爭(zhēng)力和吸引力的重要規(guī)范。它包含如下要點(diǎn):可信賴性(Accountability)對(duì)股東的義務(wù)公司董事會(huì)和管理層必須對(duì)股東負(fù)責(zé)。尤其是公司董事在以下幾方面有特殊的責(zé)任:(1)樹(shù)立公司的戰(zhàn)略觀念,以確保股東長(zhǎng)期價(jià)值的增加成為公司的首要考慮;(2)依據(jù)第一項(xiàng)要求,對(duì)其自身以及公司管理班子的績(jī)效進(jìn)行持續(xù)的評(píng)估。對(duì)股東提出的關(guān)于公司狀況和管理層績(jī)效的問(wèn)題,董事會(huì)和管理層應(yīng)該保持開(kāi)放性并使之易于得到解答,董事會(huì)應(yīng)當(dāng)向市場(chǎng)披露其做出一些重大決定的方式,這些決定涉及公司經(jīng)理的薪酬如何確定,公司的戰(zhàn)略規(guī)劃,新董事的提名和公司經(jīng)理人員的任命和考核等。新董事侯選人的背景,包括其與公司的經(jīng)濟(jì)關(guān)系也應(yīng)向公司股東披露。監(jiān)督董事會(huì)應(yīng)當(dāng)具有對(duì)公司管理層進(jìn)行有效監(jiān)督的能力,股東對(duì)董事會(huì)應(yīng)具有同樣的能力。為此,股東應(yīng)能通過(guò)適當(dāng)?shù)耐镀背绦蛐惺蛊錂?quán)力。經(jīng)理的薪酬建立可信賴性的一種最有效的方法是使經(jīng)理人員的利益與股東的利益保持一致。管理層的薪酬應(yīng)與公司的長(zhǎng)期業(yè)績(jī)表現(xiàn)掛鉤。透明度公開(kāi)性一個(gè)自由、有效的具有全球競(jìng)爭(zhēng)力的資本市場(chǎng)必須建立在公開(kāi)性的基礎(chǔ)上。如果一個(gè)市場(chǎng)不能使投資者對(duì)其公開(kāi)性具有信心,投資者就會(huì)退出這一市場(chǎng)。會(huì)計(jì)準(zhǔn)則目前不同的市場(chǎng)采用不同的會(huì)計(jì)準(zhǔn)則,這使國(guó)際投資者的有效分析難以進(jìn)行。公司應(yīng)努力采用國(guó)際會(huì)計(jì)準(zhǔn)則。一致性報(bào)告在某些市場(chǎng)一些機(jī)構(gòu)頒布“最佳行為準(zhǔn)則”作為一種標(biāo)準(zhǔn)的公司治理規(guī)范。在采納這些準(zhǔn)則的市場(chǎng),公司應(yīng)向股東報(bào)告其是否遵守這些準(zhǔn)則,并說(shuō)明其不遵守的理由。公平公平對(duì)待在所有的市場(chǎng)對(duì)所有的股東均應(yīng)以公平相待的方式一視同仁,包括外國(guó)股東在內(nèi)。公司應(yīng)特別注意尊重少數(shù)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度新型環(huán)保材料鋪設(shè)打地坪合同范本3篇
- 2024聘用退休人員勞務(wù)合同范本
- 2025年度專業(yè)打印機(jī)租賃合同包含打印耗材及維護(hù)4篇
- 2025年度智能家居系統(tǒng)安裝與維護(hù)承包合同8篇
- 2025年度生物科技出借咨詢與服務(wù)協(xié)議4篇
- 2024年高端裝備制造與技術(shù)轉(zhuǎn)讓協(xié)議
- 2024版洗車(chē)服務(wù)單位協(xié)議2篇
- 2024網(wǎng)絡(luò)游戲運(yùn)營(yíng)特許權(quán)合同
- 2024石材幕墻工程竣工驗(yàn)收備案合同3篇
- 2025年度商場(chǎng)公共區(qū)域承攬保潔服務(wù)合同范本4篇
- 餐飲行業(yè)智慧餐廳管理系統(tǒng)方案
- 2025年度生物醫(yī)藥技術(shù)研發(fā)與許可協(xié)議3篇
- 電廠檢修安全培訓(xùn)課件
- 殯葬改革課件
- 2024企業(yè)答謝晚宴會(huì)務(wù)合同3篇
- 雙方個(gè)人協(xié)議書(shū)模板
- 車(chē)站安全管理研究報(bào)告
- 瑪米亞RB67中文說(shuō)明書(shū)
- 植物和五行關(guān)系解說(shuō)
- 滬教牛津版初中英語(yǔ)七年級(jí)下冊(cè)全套單元測(cè)試題
- 因式分解法提公因式法公式法
評(píng)論
0/150
提交評(píng)論