TestComplete中的跨瀏覽器測(cè)試教程(一):關(guān)于TestComplete中的跨瀏覽器測(cè)試
TestComplete是一款具有人工智能的自動(dòng)UI測(cè)試工具,利用自動(dòng)化測(cè)試工具和人工智能支持的混合對(duì)象識(shí)別引擎,輕松檢測(cè)和測(cè)試每個(gè)桌面,Web和移動(dòng)應(yīng)用程序。使用TestComplete,可以提高測(cè)試覆蓋率并幫助提供經(jīng)過實(shí)戰(zhàn)考驗(yàn)的高質(zhì)量軟件。本文介紹了TestComplete中的跨瀏覽器測(cè)試第一部分內(nèi)容——關(guān)于TestComplete中的跨瀏覽器測(cè)試。
跨瀏覽器測(cè)試有助于確保您的Web站點(diǎn)或Web應(yīng)用程序在各種Web瀏覽器中都能正常運(yùn)行。通常,質(zhì)量檢查工程師會(huì)為每個(gè)瀏覽器創(chuàng)建單獨(dú)的測(cè)試,或者使用大量條件語句創(chuàng)建測(cè)試,這些條件語句會(huì)檢查使用的瀏覽器類型并執(zhí)行特定于瀏覽器的命令。
TestComplete包含許多功能,這些功能使創(chuàng)建跨瀏覽器測(cè)試變得更加容易。您可以為一種受支持的Web瀏覽器記錄或創(chuàng)建測(cè)試,然后在其他受支持的Web瀏覽器中進(jìn)行幾乎沒有任何修改的測(cè)試,步驟如下:
跨瀏覽器測(cè)試設(shè)施
1、統(tǒng)一的對(duì)象模型和Page對(duì)象的位置。為了簡化跨瀏覽器測(cè)試的創(chuàng)建,TestComplete對(duì)Web瀏覽器和頁面使用統(tǒng)一的對(duì)象模型。您可以使用Sys.Browser方法訪問Web瀏覽器?!盀g覽器”節(jié)點(diǎn)包含Page用于訪問在該瀏覽器中打開的網(wǎng)頁的對(duì)象。
Page節(jié)點(diǎn)下的對(duì)象層次結(jié)構(gòu)與瀏覽器無關(guān)。因此,您可以統(tǒng)一使用各種瀏覽器中顯示的頁面內(nèi)容。
2、支持的瀏覽器集合。通過TestComplete Browsers 對(duì)象,可以訪問計(jì)算機(jī)上所有受支持的瀏覽器的集合。您可以輕松地遍歷收集項(xiàng)并輕松地在不同的瀏覽器下執(zhí)行相同的Web測(cè)試。
3、輕松更換經(jīng)過測(cè)試的瀏覽器。在Web測(cè)試中,第一個(gè)測(cè)試命令通常是啟動(dòng)Web瀏覽器或在瀏覽器中打開經(jīng)過測(cè)試的網(wǎng)頁的命令。在這些命令中,瀏覽器只是可以輕松更改的參數(shù)。因此,您可以輕松地在其他瀏覽器上運(yùn)行測(cè)試。
4、當(dāng)前的瀏覽器概念。使用關(guān)鍵字測(cè)試操作或腳本方法從測(cè)試中啟動(dòng)瀏覽器時(shí),TestComplete會(huì)將由操作或方法參數(shù)指定的瀏覽器作為測(cè)試的當(dāng)前瀏覽器。換句話說,所有其他通過Web應(yīng)用程序模擬用戶操作的命令都將與由operation(或method)參數(shù)指定的瀏覽器一起使用。這適用于“運(yùn)行”和“導(dǎo)航”操作以及腳本方法。
默認(rèn)情況下,名稱映射功能在TestComplete項(xiàng)目中啟用,并且TestComplete通過Aliases.browser映射的名稱訪問Web瀏覽器:
Aliases.browser...
瀏覽器進(jìn)程的默認(rèn)映射設(shè)置僅使用進(jìn)程類型(“瀏覽器”),而不使用實(shí)際的瀏覽器名稱。使用TestComplete關(guān)鍵字測(cè)試操作或腳本方法啟動(dòng)瀏覽器或打開網(wǎng)頁后,該Aliases.browser項(xiàng)目引用當(dāng)前的測(cè)試瀏覽器,即由操作的或方法的參數(shù)指定的瀏覽器。
而且,當(dāng)引用當(dāng)前瀏覽器中未顯示的網(wǎng)頁時(shí),TestComplete可能會(huì)自動(dòng)切換到包含指定頁面的瀏覽器實(shí)例,并使該瀏覽器成為當(dāng)前瀏覽器。
要獲得有關(guān)腳本中當(dāng)前瀏覽器的信息,您還可以使用對(duì)象的CurrentBrowser屬性Browsers。
5、統(tǒng)一訪問文檔對(duì)象和元素的數(shù)據(jù)。
- 不同的瀏覽器使用不同的屬性來返回頁面的文檔對(duì)象。 在TestComplete中,您可以使用Page(...)。contentDocument屬性來提供對(duì)該對(duì)象的訪問,而與使用的瀏覽器無關(guān)。
- 不同的瀏覽器使用不同的屬性來返回網(wǎng)頁元素的文本內(nèi)容。例如,在Firefox和Chrome中使用textContent屬性,而在Internet Explorer和Edge中則必須使用innerText屬性。TestComplete提供了綜合屬性- contentText在所有受支持的瀏覽器的測(cè)試中都可用,并且可以讓您以與瀏覽器無關(guān)的方式創(chuàng)建測(cè)試。
6、支持JavaScript消息和瀏覽器對(duì)話框。網(wǎng)頁可以顯示各種消息和對(duì)話框。處理它們通常是一項(xiàng)艱巨的任務(wù),因?yàn)椴煌臑g覽器對(duì)其使用不同的GUI實(shí)現(xiàn)。TestComplete支持常用的模式對(duì)話框,例如JavaScript警報(bào)、提示和確認(rèn)、標(biāo)準(zhǔn)身份驗(yàn)證對(duì)話框等。這意味著您的測(cè)試以統(tǒng)一的方式使用這些對(duì)話框和消息框,使用不依賴于用于測(cè)試的web瀏覽器的相同API。
要求
- 僅當(dāng)TestComplete項(xiàng)目的Web樹模型屬性設(shè)置為Tree時(shí),跨瀏覽器功能才起作用。其他Web樹模型可以在不同的瀏覽器下分配不同的名稱,因此記錄的測(cè)試可能與瀏覽器有關(guān)。
- 啟用項(xiàng)目的“使用舊版Web測(cè)試功能”選項(xiàng)時(shí),跨瀏覽器功能不起作用。此選項(xiàng)用于向后兼容,并將Web測(cè)試功能和對(duì)象模型還原為早期版本的TestComplete中應(yīng)用的功能。
創(chuàng)建跨瀏覽器測(cè)試
跨瀏覽器Web測(cè)試的創(chuàng)建類似于為一個(gè)瀏覽器創(chuàng)建測(cè)試,但有一個(gè)例外:在生產(chǎn)中使用測(cè)試之前,建議您確保它們?cè)诿糠N經(jīng)過測(cè)試的瀏覽器上都能正常運(yùn)行。
運(yùn)行跨瀏覽器測(cè)試
記錄Web測(cè)試時(shí),TestComplete會(huì)“記住”所使用的瀏覽器,然后使用該瀏覽器回放測(cè)試。當(dāng)您需要在另一個(gè)瀏覽器中執(zhí)行測(cè)試時(shí),無需重新記錄整個(gè)測(cè)試,只需修改獲取或啟動(dòng)瀏覽器的說明即可。
要在另一個(gè)瀏覽器中運(yùn)行測(cè)試,可以執(zhí)行以下操作:
- 明確更改當(dāng)前瀏覽器以進(jìn)行測(cè)試。
- 修改測(cè)試,使其接受目標(biāo)瀏覽器作為參數(shù)。這樣,您可以以編程方式定義目標(biāo)瀏覽器,并從另一個(gè)“父”測(cè)試中調(diào)用修改后的測(cè)試,或?qū)⑵渥鳛闇y(cè)試項(xiàng)目啟動(dòng)。
- 修改測(cè)試,以便在TestComplete支持并安裝在您的計(jì)算機(jī)上的所有瀏覽器中執(zhí)行該測(cè)試。
跨瀏覽器測(cè)試的局限性
- 盡管TestComplete Web測(cè)試功能是跨瀏覽器的,但仍有一些特定情況需要您注意和特殊處理。
例如,大多數(shù)瀏覽器GUI元素(菜單、工具欄、選項(xiàng)卡等)上的操作均與瀏覽器有關(guān),因此不應(yīng)在跨瀏覽器測(cè)試中使用。另一個(gè)示例是某些情況下某些瀏覽器顯示的特殊對(duì)話框。
- 您必須管理手動(dòng)運(yùn)行測(cè)試的環(huán)境。
例如,如果您在本地計(jì)算機(jī)上運(yùn)行測(cè)試,則需要確保在計(jì)算機(jī)上安裝了所有必需的Web瀏覽器的正確版本并準(zhǔn)備進(jìn)行測(cè)試。如果在遠(yuǎn)程計(jì)算機(jī)上運(yùn)行測(cè)試,則還必須手動(dòng)準(zhǔn)備這些遠(yuǎn)程計(jì)算機(jī)和Web瀏覽器。另外,您將必須復(fù)制測(cè)試項(xiàng)目,運(yùn)行它們并在這些計(jì)算機(jī)上手動(dòng)收集測(cè)試結(jié)果,或者使用第三方QA管理工具來執(zhí)行此操作。
有關(guān)如何自動(dòng)化測(cè)試環(huán)境管理的信息,請(qǐng)參閱以下部分。
在CrossBrowserTesting Cloud中運(yùn)行測(cè)試
CrossBrowserTesting是一項(xiàng)云服務(wù),為運(yùn)行功能正常的Web測(cè)試提供虛擬環(huán)境。在TestComplete中,您可以直接從TestComplete IDE 連接到CrossBrowserTesting服務(wù),并在其虛擬環(huán)境中運(yùn)行Web測(cè)試。如果您需要在各種Web瀏覽器中運(yùn)行測(cè)試而無需實(shí)際購買其他軟件和硬件,那么這可能是一個(gè)很好的解決方案:
- 您可以在任何Web瀏覽器和TestComplete支持的任何操作系統(tǒng)上測(cè)試Web應(yīng)用程序。另外,您可以根據(jù)需要設(shè)置測(cè)試環(huán)境的屏幕分辨率。
- 您不需要手動(dòng)準(zhǔn)備測(cè)試環(huán)境。CrossBrowserTesting環(huán)境已經(jīng)為運(yùn)行TestComplete測(cè)試做好了準(zhǔn)備。
- 您不需要將測(cè)試項(xiàng)目分發(fā)到遠(yuǎn)程環(huán)境并從中手動(dòng)收集測(cè)試結(jié)果。在CrossBrowserTesting環(huán)境中運(yùn)行測(cè)試時(shí),您的測(cè)試項(xiàng)目會(huì)自動(dòng)復(fù)制到環(huán)境中(并在測(cè)試運(yùn)行結(jié)束后刪除)。測(cè)試結(jié)果將復(fù)制到本地計(jì)算機(jī),并自動(dòng)累積在單個(gè)項(xiàng)目套件中。
- CrossBrowserTesting環(huán)境中的測(cè)試可以同時(shí)運(yùn)行。您可以在多個(gè)環(huán)境中并行運(yùn)行多個(gè)測(cè)試,這將大大減少測(cè)試時(shí)間。
要在CrossBrowserTesting環(huán)境中運(yùn)行測(cè)試,您必須擁有一個(gè)帶有正確訂閱計(jì)劃的CrossBrowserTesting帳戶。
本文內(nèi)容就是這樣了,這一系列教程后面將會(huì)不斷更新哦,歡迎大家繼續(xù)關(guān)注我們網(wǎng)站!感興趣的朋友可以下載TestComplete試用版免費(fèi)體驗(yàn)~
相關(guān)內(nèi)容推薦: