【正文】
en?, A GUI test case can be defined in many forms, such as a Dmax ??max {d (ei , e j )} . 1?i? j?n piece of test script [5][6], an event [2], or an event sequence [2][7] [8]. In this paper, we follow the definition in [8] that a GUI test case is a “l(fā)egal event sequence” with the state in which the event sequence is executed. That is, a GUI test case can be denoted as ?S0, e1。通過(guò)這些知識(shí),他們可以改變測(cè)試執(zhí)行的策略以提高測(cè)試的效率。 這種模式意味著,如果 K﹤ M 時(shí),使用測(cè)試的情況下,其長(zhǎng)度等于 K 為 1/M 時(shí),沒(méi)有測(cè)試案例的時(shí)間比 M將被用來(lái)測(cè)試,如圖 2所示,這種模式?jīng)]有參數(shù)。 許多其他的特性也可以從 GUI 測(cè)試案例中得到,例如,一個(gè)測(cè)試用例所涵蓋的測(cè)試數(shù)量,主窗口上執(zhí)行一個(gè)事件所占的部分等,在本文中,我 們只研究表 1 中的特點(diǎn)示范。 (二) 、 GUI 測(cè)試案例的特點(diǎn) 一個(gè) GUI 測(cè)試用例包含了一個(gè)事件序列,通過(guò)分析這個(gè)事件序列,我們會(huì)得到很多測(cè)試用例的特性,表 1 顯示了其中的一些特性。進(jìn)一步說(shuō),我們提出了一種能夠提高故障檢測(cè)能力的測(cè)試 控制方案,基于知識(shí)的故障檢測(cè)在測(cè)試中如何影響故障檢測(cè)。幾種型號(hào)的 GUI 測(cè)試型材相繼被提出。很多豐富的信息是包含在事件序列中 的。注意,許多事件處理程序在某些預(yù)編譯的基礎(chǔ)庫(kù)中實(shí) 現(xiàn)(例如, MFC 的 Visual C++了, Java 開(kāi)發(fā)工具包, VCL C++建設(shè)者)。需要注意的是當(dāng)兩個(gè)事件被不同 EFGs 加載時(shí),它們之間的最短路徑是一個(gè)全球性的瑞士 EFG 這是所有的 EFG 和 AUT 的 IT 組合。 (一) 、 測(cè)試資料模型基于 L L(測(cè)試用 例的長(zhǎng)度)是一個(gè)整型值的 GUI 測(cè)試,從理論上講, L 可以使任何正整數(shù),然而在實(shí)踐中,每一個(gè)測(cè)試用例的長(zhǎng)度在一定的范圍內(nèi)變化。其他的模型也可以應(yīng)用這個(gè) 程序。 四、結(jié)論與將來(lái)的工作 在本篇論文中,我們提出了幾個(gè)基于 GUI 測(cè)試案例特點(diǎn)的測(cè)試剖面模型,然后提出了一個(gè)研究試驗(yàn)剖面和故障檢測(cè)之間的方法,一個(gè)可以提高 GUI 測(cè)試的故障檢測(cè)能力也被提出。 a1,a2,… ). This means the controller tries to detect more faults with a given number of test cases. The parameters a1, a2, … need to be learned from history data, following the way proposed in [4]. The history data include the test profiles that were used to generate/select test cases in history, as well as the execution results after each test execution. When a new test case has been executed, the history data are updated. The parameters a1, a2, … are also updated. This procedure is similar with the feedback control procedure in control engineering. Feedback is used to adjust the parameters of the controller in the process of testing. Such a structure can tolerate certain errors in the building of f. V. CONCLUSION AND FUTURE WORK In this paper, we proposed several test profile models for GUI testing based on the characteristics of GUI test cases. Then a methodology of studying the relationship between the test profiles and the fault detection were presented. A control scheme that can improve the fault detection ability of GUI testing based on the relationship was also proposed. In future, large amount of experiments should be done to study how these different test profile models affect the fault detection in GUI testing. The proposed control scheme should be validated by case studies on different kinds of GUI applications. 。 參數(shù) a1,a2,… .需要從歷史數(shù)據(jù)中了解得到,繼在文獻(xiàn)【 4】中提到的方式,歷史數(shù)據(jù)包括測(cè)試,被用來(lái)產(chǎn)生 /選擇測(cè)試的配置文件,在歷史測(cè)試的情況下,以及每個(gè)測(cè)試執(zhí)行后的執(zhí)行結(jié)果,當(dāng)歷史數(shù)據(jù)更新時(shí)就代表一個(gè)新的測(cè)試用例已被處決,隨之參數(shù) a1,a2, … 也將被更新。 (一)、 研究試驗(yàn)資料和故障檢測(cè)之間的關(guān)系 假設(shè)試驗(yàn)剖面( TP) ,其中 S是一套試驗(yàn)剖面的模型,具體來(lái)說(shuō),如果模型( 1),( 3),( 6)被使用,則 S={λ } ;如果模型( 5)被使用,則 S={α , β };如果模型( 2),( 3),( 7)被使用,則 S=Φ ;如果使用模型( 8)則 S={N1, N2, ? MR}。當(dāng)沒(méi)有先驗(yàn)知識(shí)的測(cè)試套件,提供一個(gè)統(tǒng)一的試驗(yàn)剖面模型可能是一個(gè)不錯(cuò)的選擇,但是,如果測(cè)試套件的某些子集是在測(cè)試中更重要的,(例如,在該子集的測(cè)試用例具有較高的缺陷檢測(cè)能力),非均勻的試驗(yàn)剖面模型是比統(tǒng)一的更好一些。他們擴(kuò)大在測(cè)試中的一組可用事件,他們是很重要的 GUI 結(jié)構(gòu)的遍歷。在文獻(xiàn)【 9】中定義到,我們描述了一個(gè) GUI 狀態(tài)作為一套完整的 GUI 對(duì)象和一組這些對(duì)象的特性。 一個(gè)測(cè)試剖面是用來(lái)定量的描述一個(gè)應(yīng)用軟件將如何被測(cè)試的,它用來(lái)描述輸入測(cè)試的行為。在此基礎(chǔ)上,一個(gè)基于這種關(guān)系的控制計(jì)劃也被提議,這個(gè)計(jì)劃也許可以有效地提高 GUI 測(cè)試的效率。結(jié)論和今后的工作在第五節(jié)給出。長(zhǎng)度 L 已顯示著影響測(cè)試的故障檢測(cè)【 11】【 12】中,例如,一個(gè) GUI 測(cè)試案例的長(zhǎng)度 L 是 S0 的 e1。然而,如何將輸入域劃分成等價(jià)類是不關(guān)心的。 (三)、 基于 PR的測(cè)試資料模型 可達(dá)性事件( PR)的比例是在 0 和 1 之間的值,是具有一定 PR值的測(cè)試比其他測(cè)試更深入,文章闡述 β 分布作為一個(gè) GUI 測(cè)試 PR的側(cè)面,密度分布函數(shù): 其中 α,β是積極的分布參數(shù),試驗(yàn)剖面模型如下: 其中△是一個(gè)小的時(shí)間間隔,其價(jià)值取決于 PR的準(zhǔn)確度,需要我們?cè)贉y(cè)試。 圖 5是作為泊松分布 L的試驗(yàn)剖面 在測(cè)試開(kāi)始時(shí),有沒(méi)有關(guān)于測(cè)試套件或測(cè)試應(yīng)用程序的先驗(yàn)知識(shí),初步測(cè)試個(gè)人資料(與初始參數(shù)的非均勻的試驗(yàn)剖面)用于選擇 /生成測(cè)試用例,這些生成的測(cè)試用例接著對(duì) AUT 執(zhí)行,執(zhí)行的結(jié)果如果是 Z,即是否有故障檢測(cè),然后重新編碼?!2。本文在試驗(yàn)剖面模型的基礎(chǔ)上,我們將提出一個(gè)網(wǎng)上直銷的方式,來(lái)調(diào)整測(cè)試配置文件。類似的概率分布(如 二項(xiàng)分布),也可以用作試驗(yàn)剖面模型。 Dmax= max{d(ei,ej)} ( 1≦ i﹤ j≦ n) 這一特點(diǎn),介紹了測(cè)試案例在 AUT 的 GUI 中可以達(dá)到的“深度 ”。也就是說(shuō), 一個(gè) GUI 測(cè)試案例可以表示為 S0的 e1。同樣的,在一個(gè)軟件應(yīng)用程序的測(cè)試中,電路的故障檢測(cè)是受測(cè)試剖面的影響?;谶@些摘要信息, GUI 測(cè)試資料可表現(xiàn)在更多的形式中。每個(gè)這些方面的特性都代表了一種測(cè)試用例如何來(lái)測(cè)試應(yīng)用程序的測(cè)試( AUT)??傊绻粋€(gè)預(yù)編譯的代碼庫(kù)事件做出了回應(yīng)或者任何代碼都沒(méi)有被回應(yīng),我們就說(shuō)事件沒(méi)有調(diào)用任何處理器程序。e2。因此,測(cè)試配置文件可以看作泊松分布的 L: TP(λ) = {(L=k, λk1eλ/(k1)!,k=1,2,… .}, ( 1) 其中( k1) !是( k1)的因素 上述的試驗(yàn)剖面模 型,測(cè)試 k 時(shí)的長(zhǎng)度的概率是 λ k1eλ /(k1)!,如圖 1 所示,λ是試驗(yàn)剖面參數(shù),這是一個(gè)非均勻的試驗(yàn)剖面。這些測(cè)試用例執(zhí)行錯(cuò)誤版本 AUT 上的 GUI 測(cè)試,故障尊重每個(gè)測(cè)試配置 TP( λ)的平均數(shù)量。 Third International Conference on Software Testing, Verification, and Validation Workshops On Modeling of GUI Test Profile Lei Zhao and KaiYuan Cai$ Department of Automatic Control Beijing University of Aeronautics and Astronautics Beijing, China 100191 Abstract – GUI (Graphical User Interface) test cases contain much richer information than the test cases in nonGUI testing. Based on the information, the GUI test profiles can be represented in more forms. In this paper, we study the modeling of the test profiles in GUI testing. Several models of GUI test profiles are pro posed. Then we present a methodology of studying the relationship between the test profiles and the fault detection in GUI testing. A control scheme based on this relationship that may be able to improve the efficiency of GUI testing is also proposed. Keywords – GUI testing, test profile modeling, test case characteristics I. INTRODUCTION Due to the widespread usage of Graphical User Interfaces (GUIs) in various software applications/systems, GUI testing has attached much importance to software development. GUI testing means the testing of GUI applications, including the testing of GUIs’ function and structures, as well as the under