<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    qileilove

    blog已經(jīng)轉(zhuǎn)移至github,大家請(qǐng)?jiān)L問(wèn) http://qaseven.github.io/

    使用日程安排自動(dòng)化測(cè)試來(lái)更好地管理時(shí)間與資源

    簡(jiǎn)介:在一個(gè)自動(dòng)化測(cè)試系統(tǒng)中按日程安排一項(xiàng)測(cè)試是實(shí)現(xiàn)在特定的日期和時(shí)間內(nèi)執(zhí)行任務(wù)的重要組成部分。它不但能夠幫助您更有效地使用測(cè)試資源,而且能夠幫助您監(jiān)視測(cè)試結(jié)果。本文介紹了關(guān)于這方面一些應(yīng)當(dāng)考慮的事項(xiàng),日程安排子系統(tǒng)的構(gòu)件的基本情況,它所包含的功能,以及怎樣使用 Java 語(yǔ)言開(kāi)發(fā)一個(gè)日程安排等等。

      向自動(dòng)化測(cè)試添加日程安排的優(yōu)勢(shì)與挑戰(zhàn)

      測(cè)試軟件、系統(tǒng)硬件,以及不同軟件平臺(tái)之間的防火墻都可以使用測(cè)試自動(dòng)化系統(tǒng)。您可以使用為執(zhí)行回歸測(cè)試設(shè)計(jì)的自動(dòng)化框架,以創(chuàng)建任務(wù),執(zhí)行它們,并根據(jù)不同的實(shí)驗(yàn)資源分析測(cè)試結(jié)果。這些框架適用于命令行界面以及圖形用戶界面。自動(dòng)化系統(tǒng)的一個(gè)重要組成部分是安排一項(xiàng)任務(wù)的過(guò)程。

      本文可以讓您對(duì)自動(dòng)化系統(tǒng)的結(jié)構(gòu)有一個(gè)基本的了解,該系統(tǒng)與日程安排機(jī)理集成在一起,以支持您使用日程安排功能來(lái)設(shè)計(jì)和開(kāi)發(fā)一個(gè)自動(dòng)化框架。文中還向您提供了使用 Java 語(yǔ)言開(kāi)發(fā)一個(gè)自動(dòng)化框架的概述。

      日程安排中測(cè)試自動(dòng)化的優(yōu)勢(shì)

      您可以將日程安排看做自動(dòng)化系統(tǒng)的子系統(tǒng)。在自動(dòng)化框架中加入日程安排功能,使得您可以安排每日的,每周的,每月的任務(wù),如有需要可以重復(fù)安排。您還可以使用日程安排者來(lái)選擇實(shí)驗(yàn)資源來(lái)執(zhí)行測(cè)試回歸。這減少了人為干預(yù)的概率,并在未來(lái)指定的時(shí)間自動(dòng)執(zhí)行。日程安排者可以幫助您管理回歸測(cè)試的時(shí)間與資源,并有助于提高測(cè)試的性能,因此提高了成功率。

      挑戰(zhàn)

      ● 收集關(guān)于執(zhí)行環(huán)境的信息

      當(dāng)您需要資源來(lái)執(zhí)行任務(wù)時(shí),得到適當(dāng)狀態(tài)的實(shí)驗(yàn)室資源通常來(lái)說(shuō)是非常困難的。檢入是非常重要的。

      ● 團(tuán)隊(duì)的地理分布

      使用自動(dòng)化系統(tǒng)的團(tuán)隊(duì)可能來(lái)自于不同的國(guó)家。他們的時(shí)區(qū)與系統(tǒng)的時(shí)區(qū)可能不同,自動(dòng)化服務(wù)器就是在系統(tǒng)上運(yùn)行的。每個(gè)日程的時(shí)間與日期必須與自動(dòng)化系統(tǒng)的時(shí)間保持同步化。

      ● 飛行時(shí)提供需要的信息

      有時(shí),需要提供一些額外的信息,例如在執(zhí)行時(shí),構(gòu)建和沙箱層次。日程安排者應(yīng)該能夠處理執(zhí)行期間用戶執(zhí)行的更改。

      ● 與自動(dòng)化系統(tǒng)的其他構(gòu)件聯(lián)合工作

      日程安排是自動(dòng)化系統(tǒng)的子系統(tǒng),這樣它就可以與自動(dòng)化系統(tǒng)的其余構(gòu)件集成了,以產(chǎn)生需要的結(jié)果。構(gòu)件之間交流或者協(xié)調(diào)不足在測(cè)試實(shí)驗(yàn)資源中產(chǎn)生嚴(yán)重的硬件問(wèn)題。

      ● 滿足每一個(gè)和所有團(tuán)隊(duì)的日程安排需求

      每一個(gè)團(tuán)隊(duì)都有其自己的自動(dòng)化需求。有些團(tuán)隊(duì)可能需要執(zhí)行日常的任務(wù)。挑戰(zhàn)在于理解來(lái)自所有團(tuán)隊(duì)的需求,并開(kāi)發(fā)一種日程安排機(jī)理,來(lái)處理所有不同的需求。

      自動(dòng)化系統(tǒng)的結(jié)構(gòu)

      測(cè)試自動(dòng)化系統(tǒng)有兩個(gè)主要的構(gòu)件:

      ● 用戶界面

        → 圖形化用戶界面

        → 命令行界面

      ● 測(cè)試引擎

      圖形用戶界面(GUI)提供了一種管理測(cè)試的簡(jiǎn)單方法。它有助于創(chuàng)建運(yùn)行不同實(shí)驗(yàn)資源的測(cè)試回歸,以測(cè)試安裝在其上的圖片。

      命令行界面是執(zhí)行測(cè)試的另外一種方法。在這里,用戶必須要執(zhí)行一點(diǎn)更多的操作,以創(chuàng)建和管理其測(cè)試和測(cè)試回歸,因?yàn)闇y(cè)試與測(cè)試回歸的創(chuàng)建與管理需要頻繁的用戶交流。

      測(cè)試引擎會(huì)接受來(lái)自 GUI 或者命令行界面,或者兩者的測(cè)試與測(cè)試回歸,并在實(shí)驗(yàn)資源上

      自動(dòng)化系統(tǒng)的構(gòu)件如圖1 所示。它包含了用戶界面,測(cè)試引擎以及測(cè)試系統(tǒng)。接下來(lái)的章節(jié)描述了這些構(gòu)件的功能

    圖 1. 一個(gè)自動(dòng)化系統(tǒng)的功能

      用戶界面

      這種界面可以是一種基于網(wǎng)絡(luò)的 GUI 或者命令行。您可以使用網(wǎng)絡(luò)技術(shù)來(lái)開(kāi)發(fā)一個(gè)基于網(wǎng)絡(luò)的界面。對(duì)于一個(gè)不使用瀏覽器的程序來(lái)說(shuō),一個(gè)命令行界面起的作用十分有限。作為測(cè)試自動(dòng)化系統(tǒng)的一部分,用戶界面發(fā)揮著重要的作用。這就是測(cè)試自動(dòng)化開(kāi)始的地方。不同的用戶界面伴隨著不同的特性。其中有些界面包含了以團(tuán)隊(duì)的格式維護(hù)用戶工作區(qū)域。下面就是用戶界面的主要任務(wù):

      1、提供一個(gè)用戶友好性的界面

      2、提供一種輕松的方式來(lái)創(chuàng)建測(cè)試和測(cè)試回歸

      3、為測(cè)試提供測(cè)試執(zhí)行環(huán)境

      4、顯示測(cè)試結(jié)果

      5、分配管理的資源

      測(cè)試引擎

      測(cè)試引擎就是測(cè)試自動(dòng)化系統(tǒng)的核心,因?yàn)樗褂貌煌膶?shí)驗(yàn)資源來(lái)運(yùn)行測(cè)試。這種類型的軟件用于測(cè)試軟件,硬件,或者一個(gè)完整的系統(tǒng)。選擇一個(gè)合適的測(cè)試引擎非常重要。它取決于您想要實(shí)現(xiàn)自動(dòng)化的測(cè)試的類型。不同的測(cè)試引擎提供了不同的功能。例如,IBM? Rational? Build Forge? 以及開(kāi)放源 STAX 引擎提供了并發(fā)特性以及測(cè)試的序列性執(zhí)行。有時(shí),測(cè)試自動(dòng)化框架包含了測(cè)試引擎,它支持框架處理的自動(dòng)化。測(cè)試引擎主要有以下任務(wù):

      1、對(duì)程序或者圖片執(zhí)行(運(yùn)行)測(cè)試或者測(cè)試回歸

      2、重復(fù)測(cè)試

      3、收集測(cè)試結(jié)果

      4、分析測(cè)試結(jié)果

      5、監(jiān)視執(zhí)行結(jié)果

      6、向測(cè)試員發(fā)送關(guān)于失敗信息的電子郵件通知

      自動(dòng)化進(jìn)程

      多個(gè)平臺(tái)的微觀開(kāi)發(fā)需要收集來(lái)自開(kāi)發(fā)員的源代碼,并將代碼整合成一個(gè)單元。當(dāng)實(shí)驗(yàn)資源安裝該單元之后,它需要多種測(cè)試來(lái)確認(rèn)它的正確性。這種測(cè)試的自動(dòng)化降低了測(cè)試員執(zhí)行測(cè)試所需要的時(shí)間,這樣他們就可以將更多的注意力放在微觀開(kāi)發(fā)上了。

      很明顯,自動(dòng)化需要減少手動(dòng)與測(cè)試相交流所需要的時(shí)間與工作量。通過(guò)運(yùn)行腳本或者運(yùn)行命令都可以執(zhí)行測(cè)試。您可以以任何語(yǔ)言來(lái)編寫腳本。測(cè)試引擎應(yīng)該能夠分析這些腳本訪問(wèn)并執(zhí)行測(cè)試。

      框架的選擇,與測(cè)試引擎一起,都是自動(dòng)化進(jìn)程的重要部分。測(cè)試自動(dòng)化系統(tǒng)中可以使用多種框架,例如開(kāi)放源軟件測(cè)試自動(dòng)化框架(STAF),或者您可以創(chuàng)建自己的框架。

      許多公司通過(guò)創(chuàng)建自己的自動(dòng)化框架和測(cè)試引擎,來(lái)處理自動(dòng)化。在您擁有自動(dòng)化系統(tǒng)的兩個(gè)構(gòu)件之后,您可以在自動(dòng)化進(jìn)程之中使用它們來(lái)執(zhí)行以下的任務(wù):

      1、使用用戶界面來(lái)創(chuàng)建和管理測(cè)試以及測(cè)試回歸

      2、提交測(cè)試以在程序或者圖片上運(yùn)行

      3、對(duì)程序或者圖片(測(cè)試引擎)執(zhí)行測(cè)試

      4、通知測(cè)試員需要注意的事項(xiàng)

      5、生成和分析測(cè)試結(jié)果(測(cè)試引擎)

      6、如果測(cè)試失敗的話向測(cè)試員發(fā)送電子郵件

      日程安排的自動(dòng)化系統(tǒng)

      帶有日程安排功能的自動(dòng)化系統(tǒng)如圖2 所示。

    圖 2. 日程安排者的自動(dòng)化系統(tǒng)

      它包含了一個(gè)或者多個(gè)名為安排者的構(gòu)件。安排者的作用在于識(shí)別您想要執(zhí)行任務(wù)的類型。如果它的類型是安排類型的,那么安排者將會(huì)指導(dǎo)引擎安排任務(wù);或者,他會(huì)讓測(cè)試引擎直接執(zhí)行測(cè)試。您可以通過(guò)用戶界面來(lái)安排執(zhí)行。

      構(gòu)建在日程安排功能之上的自動(dòng)化框架

      自動(dòng)化框架,它包含了日程安排特性,可能需要在一個(gè)系統(tǒng)上運(yùn)行自動(dòng)化服務(wù)器。來(lái)自不同團(tuán)隊(duì)的用戶可能位于不同的地理區(qū)域,這使得日程安排的時(shí)間也有差異。日程安排者應(yīng)該能夠識(shí)別時(shí)區(qū)差異,并根據(jù)用戶的請(qǐng)求來(lái)安排任務(wù)。

      自動(dòng)化框架可以幫助您基于 圖3中給出的選項(xiàng)來(lái)創(chuàng)建日程安排。如果有需要,您還可以指定安排的日期和時(shí)間,并重復(fù)日程安排。圖3 中描述的安排表安排了日常的任務(wù),并計(jì)劃到三天之后。它還顯示了運(yùn)行測(cè)試的日期。用戶界面還提供了安排準(zhǔn)備期間選擇測(cè)試系統(tǒng)和任務(wù)的選項(xiàng)(屏幕截圖中沒(méi)有顯示出來(lái))。

    圖 3. 帶有日程安排者 UI 的自動(dòng)化框架




      使用 Java 技術(shù)實(shí)施日程安排特性

      Java 提供了計(jì)時(shí)器框架,使得程序員能夠更輕松地執(zhí)行日程安排。它包含了一個(gè) java.util.Timer 以及 java.util.TimerTask 類。Timer 與 TimerTask 協(xié)同工作以提供日程安排功能。您可以使用計(jì)時(shí)器來(lái)安排一項(xiàng)任務(wù)。任務(wù)可以是 TimerTask 的一個(gè)實(shí)例。在創(chuàng)建一個(gè)任務(wù)之后,您可以使用 Timer 實(shí)例來(lái)安排它。計(jì)時(shí)器使用以下的方法來(lái)幫助日程安排:

      ● 空白日程(TimerTask TTask,等待較長(zhǎng)的時(shí)間)

      ● 空白日程(TimerTask TTask,等待較長(zhǎng)的時(shí)間,長(zhǎng)時(shí)間的重復(fù))

      ● 空白日程(TimerTask TTask,Date targetTime)

      ● 空白日程(TimerTask TTask,Date targetTime,長(zhǎng)時(shí)間重復(fù))

      ● 測(cè)試引擎生成了測(cè)試結(jié)果并分析它

      ● 空白的 scheduleAtFixedRate(TimerTask TTask,長(zhǎng)時(shí)間的重復(fù),長(zhǎng)時(shí)間的重復(fù))

      ● 空白 scheduleAtFixedRate(TimerTask TTask,Date targetTime,長(zhǎng)時(shí)間的重復(fù))

      這種方法清晰地告訴了您怎樣去計(jì)劃一項(xiàng)任務(wù)。為了提供更大的靈活性,您可以使用觀察者模式來(lái)提供一系列的日程安排機(jī)理。使用這種方法,可以提供一種內(nèi)線程的交流方式,通過(guò)通知您新安排的產(chǎn)生來(lái)通知日程安排者。這種方法基于 Java 技術(shù)。您可以實(shí)施日程安排機(jī)理,它最適合于自動(dòng)化的框架。

      圖 4 描述了日程安排構(gòu)件之間的交流。一旦有人添加了一條安排,那么安排者會(huì)自動(dòng)通知執(zhí)行者或者測(cè)試啟動(dòng)者構(gòu)件以執(zhí)行測(cè)試。一旦給出了日程安排,它就必須從安排列表中刪除,并讓下一個(gè)安排的測(cè)試在指定的時(shí)間運(yùn)行。

    圖 4. 日程安排構(gòu)件之間的交流

      創(chuàng)建和刪除一條任務(wù)

      注意:

      您可以使用 Java 中的 Timer 類,用以下的方法取消或者甚至刪除安排的任務(wù):

      ● void cancel() // cancel the timer thread

      ● int purge () // delete the cancelled task from timers queue

      擁有日程安排功能的自動(dòng)化系統(tǒng)的框架

      接下來(lái)的框架描述就是一種解決方案,您可以使用它來(lái)理解自動(dòng)化框架的操作。正如前面所描述的那樣,自動(dòng)化系統(tǒng)包括用戶界面,測(cè)試引擎,測(cè)試的系統(tǒng)。自動(dòng)化框架包含了以下的基本構(gòu)件:

      ● 用戶界面,它可以是基于網(wǎng)絡(luò)的

      ● 存儲(chǔ)您想要執(zhí)行任務(wù)的數(shù)據(jù)庫(kù)

      ● 一個(gè)持續(xù)性檢查執(zhí)行任務(wù)數(shù)據(jù)庫(kù)的進(jìn)程

      ● 從以上進(jìn)程中獲取任務(wù)的安排者

      ● 執(zhí)行日程安排者提供任務(wù)的測(cè)試引擎






     圖 5 描述了自動(dòng)化系統(tǒng)構(gòu)件之間的完整交流:

      用戶添加執(zhí)行的任務(wù),以及安排的日期與時(shí)間,和測(cè)試的系統(tǒng)。

      該信息存儲(chǔ)在數(shù)據(jù)庫(kù)之中。

      daemon 會(huì)不斷運(yùn)行進(jìn)程,以從數(shù)據(jù)庫(kù)中獲得任務(wù),將其交給日程安排者,然后添加包含系統(tǒng)健康狀況測(cè)試的信息。

      然后日程安排者會(huì)將任務(wù)交給測(cè)試執(zhí)行引擎,與測(cè)試系統(tǒng)相交流。

    圖 5. 自動(dòng)化系統(tǒng)構(gòu)件之間的完整交流

      網(wǎng)絡(luò)框架的其他責(zé)任在于得到測(cè)試的結(jié)果并分析它。日程安排者幫助您管理自動(dòng)化系統(tǒng)的以下方面:

      ● 測(cè)試回歸,它包含了您對(duì)測(cè)試系統(tǒng)想要執(zhí)行的任務(wù)

      ● 測(cè)試系統(tǒng)

      ● 如有需要的話,執(zhí)行測(cè)試回歸和重復(fù)的日期與時(shí)間

      性能評(píng)價(jià)

      自動(dòng)化不但能夠幫助您更有效地管理花在重復(fù)性測(cè)試上的時(shí)間,而且能夠幫助您分析測(cè)試的結(jié)果。它能讓您將更多的注意力放在微觀開(kāi)發(fā)上,而不是把大把的時(shí)間花在測(cè)試上。一旦開(kāi)發(fā)員進(jìn)行微觀開(kāi)發(fā),那么通過(guò)管理和安排回歸測(cè)試,執(zhí)行構(gòu)建的全部測(cè)試操作,只不過(guò)是一次點(diǎn)擊的操作而已。因此,它降低了手動(dòng)測(cè)試期間人為交流和干預(yù)的頻率。

      日程安排功能,在另一方面上,降低了重復(fù)測(cè)試期間的出錯(cuò)率。圖 6 中的圖顯示了測(cè)試系統(tǒng)最新構(gòu)建全部測(cè)試的性能改進(jìn)。條形圖顯示了每日,每周,每月進(jìn)行的測(cè)試,測(cè)試自動(dòng)化框架的日程安排功能能夠幫助您實(shí)現(xiàn)全部這些功能。

    圖 6. 性能評(píng)價(jià)條形圖

      為了進(jìn)一步深入研究 Rational 軟件為測(cè)試和自動(dòng)化提供的功能,您可以查看其他相關(guān)資料。

    posted on 2012-10-22 10:15 順其自然EVO 閱讀(273) 評(píng)論(0)  編輯  收藏 所屬分類: selenium and watir webdrivers 自動(dòng)化測(cè)試學(xué)習(xí)

    <2012年10月>
    30123456
    78910111213
    14151617181920
    21222324252627
    28293031123
    45678910

    導(dǎo)航

    統(tǒng)計(jì)

    常用鏈接

    留言簿(55)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    搜索

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 福利免费在线观看| 亚洲av无码专区在线| 四虎成人精品永久免费AV| 久久亚洲AV无码精品色午夜| 国产成人免费高清激情视频| 九九久久精品国产免费看小说 | 亚洲AⅤ优女AV综合久久久| 中国精品一级毛片免费播放| 亚洲成a人片毛片在线| 免费一区二区三区四区五区| 无码国产精品一区二区免费式芒果 | 无码天堂亚洲国产AV| 亚洲乱码一区二区三区在线观看 | 免费国产在线精品一区| 亚洲网址在线观看你懂的| 日韩一级视频免费观看| 免费日本一区二区| 另类小说亚洲色图| 亚洲国产视频一区| 亚洲精品国产美女久久久| 免费高清小黄站在线观看| 久久中文字幕免费视频| 日韩毛片在线免费观看| 丁香婷婷亚洲六月综合色| 亚洲AV无码专区亚洲AV伊甸园| 国产精品国产自线拍免费软件| 99久久精品免费精品国产| 国产精品无码免费专区午夜| 日韩亚洲国产综合高清| 亚洲国产人成在线观看69网站| 一本色道久久88综合亚洲精品高清| 亚洲毛片免费观看| 国内精品久久久久影院免费| 美女一级毛片免费观看| 亚洲真人无码永久在线观看| 日韩亚洲AV无码一区二区不卡| 国产日韩成人亚洲丁香婷婷| 日本一区免费电影| 天天摸天天操免费播放小视频| 最近免费中文字幕mv电影| 九九美女网站免费|