欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種軟件測(cè)試方法和裝置制造方法

文檔序號(hào):6513625閱讀:224來(lái)源:國(guó)知局
一種軟件測(cè)試方法和裝置制造方法
【專利摘要】本發(fā)明實(shí)施例公開(kāi)了一種軟件測(cè)試方法和裝置,其中方法的實(shí)現(xiàn)包括:獲取軟件測(cè)試過(guò)程中的運(yùn)行界面截圖;對(duì)上述運(yùn)行界面截圖進(jìn)行圖像識(shí)別,確定是否包含預(yù)定的操作元素;若上述運(yùn)行界面截圖包含預(yù)定的操作元素,則下發(fā)對(duì)上述運(yùn)行界面截圖中的操作元素的操作指令。通過(guò)對(duì)測(cè)試過(guò)程中的運(yùn)行界面截圖的識(shí)別,確定其包含預(yù)定的操作元素,那么就下發(fā)對(duì)操作元素的操作指令。這樣可以避免完全隨機(jī)地進(jìn)行操作很難命中的問(wèn)題,從而避免自動(dòng)測(cè)試過(guò)程中的停滯現(xiàn)象,從而提高了軟件測(cè)試效率。
【專利說(shuō)明】一種軟件測(cè)試方法和裝置

【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)【技術(shù)領(lǐng)域】,特別涉及一種軟件測(cè)試方法和裝置。

【背景技術(shù)】
[0002]軟件測(cè)試(software testing)是使用人工或者自動(dòng)手段來(lái)運(yùn)行或測(cè)試某軟件的過(guò)程,其目的在于檢驗(yàn)它是否滿足規(guī)定的需求或弄清預(yù)期結(jié)果與實(shí)際結(jié)果之間的差別。軟件測(cè)試主要工作內(nèi)容是驗(yàn)證(verificat1n)和確認(rèn)(validat1n),下面分別給出其概念:
[0003]驗(yàn)證(verificat1n)是保證軟件正確地實(shí)現(xiàn)了一些特定功能的一系列活動(dòng),即保證軟件以正確的方式來(lái)做了這個(gè)事件(Do it right)包括如下幾個(gè)部分:
[0004]1、確定軟件生存周期中的一個(gè)給定階段的產(chǎn)品是否達(dá)到前階段確立的需求的過(guò)程。
[0005]2、程序正確性的形式證明,即采用形式理論證明程序符合設(shè)計(jì)規(guī)約規(guī)定的過(guò)程。
[0006]3、評(píng)市、審查、測(cè)試、檢查、審計(jì)等各類活動(dòng),或?qū)δ承╉?xiàng)處理、服務(wù)或文件等是否和規(guī)定的需求相一致進(jìn)行判斷和提出報(bào)告。
[0007]確認(rèn)(validat1n)是一系列的活動(dòng)和過(guò)程,目的是想證實(shí)在一個(gè)給定的外部環(huán)境中軟件的邏輯正確性。即保證軟件做了你所期望的事情(Do the right thing),包括如下幾個(gè)部分:
[0008]1、靜態(tài)確認(rèn),不在計(jì)算機(jī)上實(shí)際執(zhí)行程序,通過(guò)人工或程序分析來(lái)證明軟件的正確性。
[0009]2、動(dòng)態(tài)確認(rèn),通過(guò)執(zhí)行程序做分析,測(cè)試程序的動(dòng)態(tài)行為,以證實(shí)軟件是否存在問(wèn)題。
[0010]軟件測(cè)試的對(duì)象不僅僅是程序測(cè)試,軟件測(cè)試應(yīng)該包括整個(gè)軟件開(kāi)發(fā)期間各個(gè)階段所產(chǎn)生的文檔,如需求規(guī)格說(shuō)明、概要設(shè)計(jì)文檔、詳細(xì)設(shè)計(jì)文檔,當(dāng)然軟件測(cè)試的主要對(duì)象還是源程序。
[0011]本申請(qǐng)文件主要涉及的是軟件自動(dòng)測(cè)試的內(nèi)容,自動(dòng)測(cè)試一般會(huì)采用軟件測(cè)試工具來(lái)實(shí)現(xiàn),軟件測(cè)試工具是通過(guò)一些工具能夠使軟件的一些簡(jiǎn)單問(wèn)題直觀的顯示在讀者的面前,這樣能使測(cè)試人員更好的找出軟件錯(cuò)誤的所在。軟件測(cè)試工具分為自動(dòng)化軟件測(cè)試工具和測(cè)試管理工具。軟件測(cè)試工具存在的價(jià)值是為了提高測(cè)試效率,用軟件來(lái)代替一些人工輸入。測(cè)試管理工具是為了復(fù)用測(cè)試用例,提高軟件測(cè)試的價(jià)值。一個(gè)好的軟件測(cè)試工具和測(cè)試管理工具結(jié)合起來(lái)使用將會(huì)使軟件測(cè)試效率大大的提高。
[0012]本申請(qǐng)文件主要涉及脫離源代碼或是對(duì)第三方軟件的黑盒測(cè)試,目前的通用方案是采用MTTF (mean time to failure,平均無(wú)故障運(yùn)行時(shí)間)測(cè)試工具完全隨機(jī)地對(duì)應(yīng)用程序的界面進(jìn)行長(zhǎng)時(shí)間點(diǎn)擊、拖拽等操作,統(tǒng)計(jì)軟件長(zhǎng)時(shí)間運(yùn)行的崩潰、異常率,從而衡量軟件的可靠性和穩(wěn)定性。
[0013]以上方案存在如下問(wèn)題:由于在可靠性測(cè)試過(guò)程中,存在一些必須要優(yōu)先點(diǎn)擊\操作的控件,甚至是需要完成指定的操作序列。例如:應(yīng)用程序存在彈出提示框、彈出界面等,此時(shí)必須在特定位置范圍內(nèi)操作才可以關(guān)閉,然而完全隨機(jī)地進(jìn)行操作很難命中,導(dǎo)致自動(dòng)測(cè)試停滯。因此,測(cè)試效率較低。


【發(fā)明內(nèi)容】

[0014]本發(fā)明實(shí)施例提供了一種軟件測(cè)試方法和裝置,用于提高軟件測(cè)試效率。
[0015]一種軟件測(cè)試方法,包括:
[0016]獲取軟件測(cè)試過(guò)程中的運(yùn)行界面截圖;
[0017]對(duì)所述運(yùn)行界面截圖進(jìn)行圖像識(shí)別,確定是否包含預(yù)定的操作元素;
[0018]若所述運(yùn)行界面截圖包含預(yù)定的操作元素,則下發(fā)對(duì)所述運(yùn)行界面截圖中的操作元素的操作指令。
[0019]一種軟件測(cè)試裝置,包括:
[0020]截圖獲取單元,用于獲取軟件測(cè)試過(guò)程中的運(yùn)行界面截圖;
[0021]元素確定單元,用于對(duì)所述截圖獲取單元獲取的所述運(yùn)行界面截圖進(jìn)行圖像識(shí)另O,確定是否包含預(yù)定的操作元素;
[0022]指令下發(fā)單元,用于若所述元素確定單元確定所述運(yùn)行界面截圖包含預(yù)定的操作元素,則下發(fā)對(duì)所述運(yùn)行界面截圖中的操作元素的操作指令。
[0023]從以上技術(shù)方案可以看出,本發(fā)明實(shí)施例具有以下優(yōu)點(diǎn):通過(guò)對(duì)測(cè)試過(guò)程中的運(yùn)行界面截圖的識(shí)別,確定其包含預(yù)定的操作元素,那么就下發(fā)對(duì)操作元素的操作指令。這樣可以避免完全隨機(jī)地進(jìn)行操作很難命中的問(wèn)題,從而避免自動(dòng)測(cè)試過(guò)程中的停滯現(xiàn)象,從而提高了軟件測(cè)試效率。

【專利附圖】

【附圖說(shuō)明】
[0024]為了更清楚地說(shuō)明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖作簡(jiǎn)要介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域的普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0025]圖1為本發(fā)明實(shí)施例方法流程示意圖;
[0026]圖2為本發(fā)明實(shí)施例方法流程示意圖;
[0027]圖3為本發(fā)明實(shí)施例裝置結(jié)構(gòu)示意圖;
[0028]圖4為本發(fā)明實(shí)施例裝置結(jié)構(gòu)示意圖;
[0029]圖5為本發(fā)明實(shí)施例軟件測(cè)試裝置結(jié)構(gòu)示意圖;
[0030]圖6為本發(fā)明實(shí)施例終端結(jié)構(gòu)示意圖。

【具體實(shí)施方式】
[0031]為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步地詳細(xì)描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部份實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其它實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0032]本發(fā)明實(shí)施例提供了一種軟件測(cè)試方法,如圖1所示,包括:
[0033]101:獲取軟件測(cè)試過(guò)程中的運(yùn)行界面截圖;
[0034]在本步驟軟件測(cè)試過(guò)程中,被測(cè)試軟件會(huì)執(zhí)行點(diǎn)擊、拖曳、系統(tǒng)按鍵等各種操作,具體測(cè)試過(guò)程依測(cè)試目的的不同可能有所不同,本發(fā)明實(shí)施例對(duì)被測(cè)試軟件的具體的測(cè)試過(guò)程不予限定。
[0035]本發(fā)明實(shí)施例還提供了運(yùn)行界面截圖的獲取方式,具體如下:上述獲取軟件測(cè)試過(guò)程中的運(yùn)行界面截圖包括:
[0036]在軟件測(cè)試過(guò)程中以預(yù)定時(shí)間為周期獲取運(yùn)行界面截圖;或者,
[0037]監(jiān)測(cè)軟件測(cè)試過(guò)程中的操作執(zhí)行過(guò)程,在操作執(zhí)行完畢后,獲取運(yùn)行界面截圖。
[0038]本實(shí)施例,軟件測(cè)試的過(guò)程可以是由被測(cè)試軟件的運(yùn)行設(shè)備來(lái)執(zhí)行,也可以由專門的測(cè)試設(shè)備來(lái)執(zhí)行。如果是被測(cè)試軟件的運(yùn)行設(shè)備來(lái)執(zhí)行本實(shí)施例的方案,那么運(yùn)行界面截圖獲取以后可以被發(fā)送給控制模塊進(jìn)行相關(guān)(圖像識(shí)別等)處理;如果由專門的測(cè)試設(shè)備來(lái)執(zhí)行本實(shí)施例的方案,那么截圖可以由被測(cè)試軟件的運(yùn)行設(shè)備來(lái)執(zhí)行截圖,截圖的指令可以是由上述專門的測(cè)試設(shè)備下發(fā),也可以由被測(cè)試軟件的運(yùn)行設(shè)備生成。
[0039]例如:上例中,如果由被測(cè)試軟件的運(yùn)行設(shè)備來(lái)執(zhí)行本實(shí)施例的方案,那么上述在軟件測(cè)試過(guò)程中以預(yù)定時(shí)間為周期獲取運(yùn)行界面截圖可以是:被測(cè)試軟件的運(yùn)行設(shè)備在軟件測(cè)試過(guò)程中以預(yù)定時(shí)間為周期獲取運(yùn)行界面截圖;或者是:被測(cè)試軟件的運(yùn)行設(shè)備在軟件測(cè)試過(guò)程中接收以預(yù)定時(shí)間為周期獲取運(yùn)行界面截圖的截圖指令后,以上述截圖指令指定的時(shí)間為周期獲取運(yùn)行界面截圖。
[0040]再例如:上例中,如果由被測(cè)試軟件的運(yùn)行設(shè)備來(lái)執(zhí)行本實(shí)施例的方案,那么上述監(jiān)測(cè)軟件測(cè)試過(guò)程中的操作執(zhí)行過(guò)程,在操作執(zhí)行完畢后,獲取運(yùn)行界面截圖可以是:被測(cè)試軟件的運(yùn)行設(shè)備監(jiān)測(cè)軟件測(cè)試過(guò)程中的操作執(zhí)行過(guò)程,在操作執(zhí)行完畢后,獲取運(yùn)行界面截圖;或者是,被測(cè)試軟件的運(yùn)行設(shè)備接收到來(lái)自測(cè)試設(shè)備發(fā)送的截圖指令,獲取運(yùn)行界面截圖;上述截圖指令在上述測(cè)試設(shè)備監(jiān)測(cè)到軟件測(cè)試過(guò)程中的操作執(zhí)行過(guò)程,并監(jiān)測(cè)到操作執(zhí)行完畢后由上述測(cè)試設(shè)備發(fā)出。
[0041]以上給出了兩種運(yùn)行界面截圖的獲取方案,本領(lǐng)域技術(shù)人員可以理解的是,觸發(fā)對(duì)被測(cè)試軟件的運(yùn)行界面進(jìn)行截圖還可以有別的方式,本發(fā)明實(shí)施例不可能對(duì)此進(jìn)行窮舉,并且具體的觸發(fā)方式并不影響本發(fā)明實(shí)施例的實(shí)現(xiàn),因此本發(fā)明實(shí)施例對(duì)此不予限定,以上優(yōu)選實(shí)現(xiàn)方式的舉例也不應(yīng)理解為對(duì)本發(fā)明實(shí)施例的唯一性限定。
[0042]102:對(duì)上述運(yùn)行界面截圖進(jìn)行圖像識(shí)別,確定是否包含預(yù)定的操作元素;
[0043]上述預(yù)定的操作元素,可以是預(yù)先確定的需要操作的元素圖片,例如在可靠性測(cè)試過(guò)程中存在一些必須要優(yōu)先點(diǎn)擊或操作的控件,或者需要執(zhí)行指定的操作序列,可以使用預(yù)定的操作元素來(lái)確定,例如可以包括:“確定”、“取消”、“關(guān)閉”、“下一步”、“上一步”等。本領(lǐng)域技術(shù)人員可以理解的是具體的操作元素是依據(jù)具體的被測(cè)試軟件而定的,以上舉例僅是常用的幾種常用操作元素的舉例,不應(yīng)理解為對(duì)本發(fā)明實(shí)施例的唯一性限定。
[0044]本發(fā)明實(shí)施例還提供給了如何確定是否包含預(yù)定操作元素的具體實(shí)現(xiàn)方式舉例,如下:上述對(duì)上述運(yùn)行界面截圖進(jìn)行圖像識(shí)別,確定是否包含預(yù)定的操作元素包括:使用預(yù)定的操作元素對(duì)上述運(yùn)行界面截圖執(zhí)行模板匹配,確定是否包含預(yù)定的操作元素。
[0045]以上實(shí)施例給出了采用模板匹配的方式來(lái)實(shí)現(xiàn)圖像識(shí)別,從而確定運(yùn)行界面是否包含有預(yù)定的操作元素。本領(lǐng)域技術(shù)人員可以理解的是,圖像識(shí)別的實(shí)現(xiàn)方式有很多,以上舉例是基于軟件測(cè)試【技術(shù)領(lǐng)域】,操作元素屬于有限集的情況下,一種優(yōu)選的實(shí)現(xiàn)方案。采用其它方案識(shí)別并判斷是否存在預(yù)定的操作元素并不影響本發(fā)明實(shí)施例的實(shí)現(xiàn),因此以上方案不應(yīng)理解為對(duì)本發(fā)明實(shí)施例的唯一性限定。
[0046]103:若上述運(yùn)行界面截圖包含預(yù)定的操作元素,則下發(fā)對(duì)上述運(yùn)行界面截圖中的操作元素的操作指令。
[0047]本實(shí)施例,通過(guò)對(duì)測(cè)試過(guò)程中的運(yùn)行界面截圖的識(shí)別,確定其包含預(yù)定的操作元素,那么就下發(fā)對(duì)操作元素的操作指令。這樣可以避免完全隨機(jī)地進(jìn)行操作很難命中的問(wèn)題,從而避免自動(dòng)測(cè)試過(guò)程中的停滯現(xiàn)象,從而提高了軟件測(cè)試效率。
[0048]由于一個(gè)運(yùn)行界面截圖可能會(huì)存在兩個(gè)或者兩個(gè)以上(即大于一個(gè))的預(yù)定的操作元素,本發(fā)明實(shí)施例還提供了出現(xiàn)此種情況的解決方案,具體如下:若上述運(yùn)行界面截圖包含預(yù)定的操作元素大于一個(gè),上述下發(fā)對(duì)上述運(yùn)行界面截圖中的操作元素的操作指令包括:
[0049]按照上述運(yùn)行界面截圖中的各操作元素的優(yōu)先級(jí),依次下發(fā)操作指令;或者,下發(fā)對(duì)上述運(yùn)行界面截圖中的各操作元素的操作指令以及各操作指令的執(zhí)行優(yōu)先級(jí)。
[0050]以上實(shí)施例通過(guò)優(yōu)先級(jí)的方式確定了存在多個(gè)操作元素時(shí)對(duì)各操作元素如何處理的方案,以上優(yōu)先級(jí)的方式可以實(shí)現(xiàn)過(guò)操作元素時(shí)各操作元素的執(zhí)行順序,為了實(shí)現(xiàn)對(duì)各操作元素執(zhí)行順序的控制,還可以采用順序發(fā)送操作指令,各操作指令間隔預(yù)定時(shí)間,也是可以的。以上舉例相對(duì)于采用間隔時(shí)間方式的方案而言,操作指令的執(zhí)行速度會(huì)更快,也即是說(shuō)軟件測(cè)試的效率將會(huì)更高。以上采用優(yōu)先級(jí)控制各操作元素的執(zhí)行順序的方案舉例作為一個(gè)優(yōu)選實(shí)現(xiàn)方式,不應(yīng)理解為對(duì)本發(fā)明實(shí)施例的唯一限定。
[0051]本發(fā)明實(shí)施例還提供了操作指令的發(fā)送方案的可選實(shí)現(xiàn)方式,具體如下:若上述運(yùn)行界面截圖包含預(yù)定的操作元素,還包括:確定操作元素在運(yùn)行界面截圖中的坐標(biāo);上述下發(fā)對(duì)上述運(yùn)行界面截圖中的操作元素的操作指令包括:下發(fā)對(duì)上述運(yùn)行界面截圖中上述坐標(biāo)的操作指令。
[0052]以上實(shí)施例通過(guò)獲得操作元素的坐標(biāo),在操作指令中直接攜帶該坐標(biāo)使被測(cè)試軟件的運(yùn)行設(shè)備對(duì)操作元素進(jìn)行操作。本領(lǐng)域技術(shù)人員可以理解是,由于操作元素已經(jīng)在運(yùn)行界面截圖中被識(shí)別出來(lái),如何實(shí)現(xiàn)指令對(duì)其進(jìn)行操作,本領(lǐng)域技術(shù)人員可以依據(jù)不同的情況采用不同的選擇方案,因此操作指令不不僅限于采用攜帶坐標(biāo)的方式來(lái)實(shí)現(xiàn)。因此以上舉例不應(yīng)理解為對(duì)本發(fā)明實(shí)施例的唯一性限定。
[0053]以下實(shí)施例將以手機(jī)軟件的可靠性測(cè)試為例進(jìn)行舉例說(shuō)明。
[0054]對(duì)于在手機(jī)軟件的可靠性測(cè)試過(guò)程中,需要優(yōu)先操作某些控件,或者是指定操作控件序列的需求,本方法采用模版匹配的算法,可以準(zhǔn)確地從手機(jī)軟件當(dāng)前界面的截圖中找到需要操作的控件的圖片元素的坐標(biāo),并可通過(guò)預(yù)先設(shè)定的優(yōu)先級(jí)算法完成對(duì)這些控件的操作。請(qǐng)參閱圖2所示,包括如下步驟:
[0055]201:截取被測(cè)試的應(yīng)用程序中需要操作的操作元素的圖片。
[0056]本步驟可以采用手工截取的方式進(jìn)行,手工截取被測(cè)試的應(yīng)用程序中需要操作的操作元素的圖片可以包括:“確定”、“取消”、“關(guān)閉”、“下一步”、“上一步”等圖片。本領(lǐng)域技術(shù)人員可以理解的是具體的操作元素是依據(jù)具體的被測(cè)試軟件而定的,以上舉例僅是常用的幾種常用操作元素的舉例,不應(yīng)理解為對(duì)本發(fā)明實(shí)施例的唯一性限定。截取的操作元素的圖片在后續(xù)步驟中用來(lái)作為待匹配的模板。
[0057]202:穩(wěn)定性測(cè)試執(zhí)行測(cè)試操作。
[0058]本步驟是被測(cè)試軟件在測(cè)試過(guò)程中的運(yùn)行過(guò)程,一般可以使用隨機(jī)按鍵工具執(zhí)行測(cè)試。
[0059]203:截取手機(jī)軟件當(dāng)前的界面圖片到PC (personal computer,個(gè)人計(jì)算機(jī))端。
[0060]本步驟是在使用隨機(jī)按鍵工具執(zhí)行測(cè)試的過(guò)程中,截取手機(jī)軟件當(dāng)前的界面圖片然后發(fā)送到PC端。后續(xù)的匹配在PC端執(zhí)行。
[0061]204:PC端執(zhí)行模版匹配算法分析界面截圖是否包含操作元素圖片,如是,進(jìn)入205,否則進(jìn)入202。
[0062]205:如果當(dāng)前軟件界面截圖中存在多個(gè)操作元素的圖片,可進(jìn)行優(yōu)先級(jí)的定義。例如:點(diǎn)擊“確定”的優(yōu)先級(jí)高于點(diǎn)擊“關(guān)閉”。
[0063]由于不一定會(huì)存在多個(gè)操作元素的圖片,因此,本步驟為可選步驟。
[0064]206:獲取到圖片中包含的圖片元素的坐標(biāo)點(diǎn)。
[0065]207:發(fā)送攜帶坐標(biāo)點(diǎn)的操作指令給手機(jī),使手機(jī)對(duì)被測(cè)試應(yīng)用程序界面進(jìn)行相應(yīng)操作。
[0066]本方法通過(guò)對(duì)手機(jī)軟件界面進(jìn)行模版匹配,可以精確獲取到這些需要優(yōu)先操作,或者是指定操作序列的控件的位置和坐標(biāo),實(shí)現(xiàn)精確點(diǎn)擊,提供了一種提升可靠性測(cè)試效率的方法。例如,手機(jī)軟件提示框、彈出界面的關(guān)閉方式具有很強(qiáng)的共性,如“關(guān)閉”、“確定”、“取消”等控件。通過(guò)在界面截圖中進(jìn)行模版匹配,找到這些控件進(jìn)行精確操作,避免出現(xiàn)長(zhǎng)時(shí)間無(wú)法關(guān)閉提示框、彈出界面,從而可提升軟件測(cè)試效率。
[0067]本發(fā)明實(shí)施例還提供了一種軟件測(cè)試裝置,如圖3所示,包括:
[0068]截圖獲取單元301,用于獲取軟件測(cè)試過(guò)程中的運(yùn)行界面截圖;
[0069]軟件測(cè)試過(guò)程中,被測(cè)試軟件會(huì)執(zhí)行點(diǎn)擊、拖曳、系統(tǒng)按鍵等各種操作,具體測(cè)試過(guò)程依測(cè)試目的的不同可能有所不同,本發(fā)明實(shí)施例對(duì)被測(cè)試軟件的具體的測(cè)試過(guò)程不予限定。
[0070]元素確定單元302,用于對(duì)上述截圖獲取單元301獲取的上述運(yùn)行界面截圖進(jìn)行圖像識(shí)別,確定是否包含預(yù)定的操作元素;
[0071]上述預(yù)定的操作元素,可以是預(yù)先確定的需要操作的元素圖片,例如在可靠性測(cè)試過(guò)程中存在一些必須要優(yōu)先點(diǎn)擊或操作的控件,或者需要執(zhí)行指定的操作序列,可以使用預(yù)定的操作元素來(lái)確定,例如可以包括:“確定”、“取消”、“關(guān)閉”、“下一步”、“上一步”等。本領(lǐng)域技術(shù)人員可以理解的是具體的操作元素是依據(jù)具體的被測(cè)試軟件而定的,以上舉例僅是常用的幾種常用操作元素的舉例,不應(yīng)理解為對(duì)本發(fā)明實(shí)施例的唯一性限定。
[0072]指令下發(fā)單元303,用于若上述元素確定單元302確定上述運(yùn)行界面截圖包含預(yù)定的操作元素,則下發(fā)對(duì)上述運(yùn)行界面截圖中的操作元素的操作指令。
[0073]本實(shí)施例,通過(guò)對(duì)測(cè)試過(guò)程中的運(yùn)行界面截圖的識(shí)別,確定其包含預(yù)定的操作元素,那么就下發(fā)對(duì)操作元素的操作指令。這樣可以避免完全隨機(jī)地進(jìn)行操作很難命中的問(wèn)題,從而避免自動(dòng)測(cè)試過(guò)程中的停滯現(xiàn)象,從而提高了軟件測(cè)試效率。
[0074]可選地,本發(fā)明實(shí)施例還提供了運(yùn)行界面截圖的獲取方式,具體如下:上述截圖獲取單元301,用于在軟件測(cè)試過(guò)程中以預(yù)定時(shí)間為周期獲取運(yùn)行界面截圖;或者,監(jiān)測(cè)軟件測(cè)試過(guò)程中的操作執(zhí)行過(guò)程,在操作執(zhí)行完畢后,獲取運(yùn)行界面截圖。
[0075]本實(shí)施例,軟件測(cè)試的過(guò)程可以是由被測(cè)試軟件的運(yùn)行設(shè)備來(lái)執(zhí)行,也可以由專門的測(cè)試設(shè)備來(lái)執(zhí)行。如果是被測(cè)試軟件的運(yùn)行設(shè)備來(lái)執(zhí)行本實(shí)施例的方案,那么運(yùn)行界面截圖獲取以后可以被發(fā)送給控制模塊進(jìn)行相關(guān)(圖像識(shí)別等)處理;如果由專門的測(cè)試設(shè)備來(lái)執(zhí)行本實(shí)施例的方案,那么截圖可以由被測(cè)試軟件的運(yùn)行設(shè)備來(lái)執(zhí)行截圖,截圖的指令可以是由上述專門的測(cè)試設(shè)備下發(fā),也可以由被測(cè)試軟件的運(yùn)行設(shè)備生成。
[0076]例如:上例中,如果由被測(cè)試軟件的運(yùn)行設(shè)備來(lái)執(zhí)行本實(shí)施例的方案,那么上述在軟件測(cè)試過(guò)程中以預(yù)定時(shí)間為周期獲取運(yùn)行界面截圖可以是:被測(cè)試軟件的運(yùn)行設(shè)備在軟件測(cè)試過(guò)程中以預(yù)定時(shí)間為周期獲取運(yùn)行界面截圖;或者是:被測(cè)試軟件的運(yùn)行設(shè)備在軟件測(cè)試過(guò)程中接收以預(yù)定時(shí)間為周期獲取運(yùn)行界面截圖的截圖指令后,以上述截圖指令指定的時(shí)間為周期獲取運(yùn)行界面截圖。
[0077]再例如:上例中,如果由被測(cè)試軟件的運(yùn)行設(shè)備來(lái)執(zhí)行本實(shí)施例的方案,那么上述監(jiān)測(cè)軟件測(cè)試過(guò)程中的操作執(zhí)行過(guò)程,在操作執(zhí)行完畢后,獲取運(yùn)行界面截圖可以是:被測(cè)試軟件的運(yùn)行設(shè)備監(jiān)測(cè)軟件測(cè)試過(guò)程中的操作執(zhí)行過(guò)程,在操作執(zhí)行完畢后,獲取運(yùn)行界面截圖;或者是,被測(cè)試軟件的運(yùn)行設(shè)備接收到來(lái)自測(cè)試設(shè)備發(fā)送的截圖指令,獲取運(yùn)行界面截圖;上述截圖指令在上述測(cè)試設(shè)備監(jiān)測(cè)到軟件測(cè)試過(guò)程中的操作執(zhí)行過(guò)程,并監(jiān)測(cè)到操作執(zhí)行完畢后由上述測(cè)試設(shè)備發(fā)出。
[0078]以上給出了兩種運(yùn)行界面截圖的獲取方案,本領(lǐng)域技術(shù)人員可以理解的是,觸發(fā)對(duì)被測(cè)試軟件的運(yùn)行界面進(jìn)行截圖還可以有別的方式,本發(fā)明實(shí)施例不可能對(duì)此進(jìn)行窮舉,并且具體的觸發(fā)方式并不影響本發(fā)明實(shí)施例的實(shí)現(xiàn),因此本發(fā)明實(shí)施例對(duì)此不予限定,以上優(yōu)選實(shí)現(xiàn)方式的舉例也不應(yīng)理解為對(duì)本發(fā)明實(shí)施例的唯一性限定。
[0079]可選地,由于一個(gè)運(yùn)行界面截圖可能會(huì)存在兩個(gè)或者兩個(gè)以上(即大于一個(gè))的預(yù)定的操作元素,本發(fā)明實(shí)施例還提供了出現(xiàn)此種情況的解決方案,具體如下:上述指令下發(fā)單元303,用于若上述元素確定單元302確定上述運(yùn)行界面截圖包含預(yù)定的操作元素大于一個(gè),則按照上述運(yùn)行界面截圖中的各操作元素的優(yōu)先級(jí),依次下發(fā)操作指令;或者,下發(fā)對(duì)上述運(yùn)行界面截圖中的各操作元素的操作指令以及各操作指令的執(zhí)行優(yōu)先級(jí)。
[0080]以上實(shí)施例通過(guò)優(yōu)先級(jí)的方式確定了存在多個(gè)操作元素時(shí)對(duì)各操作元素如何處理的方案,以上優(yōu)先級(jí)的方式可以實(shí)現(xiàn)過(guò)操作元素時(shí)各操作元素的執(zhí)行順序,為了實(shí)現(xiàn)對(duì)各操作元素執(zhí)行順序的控制,還可以采用順序發(fā)送操作指令,各操作指令間隔預(yù)定時(shí)間,也是可以的。以上舉例相對(duì)于采用間隔時(shí)間方式的方案而言,操作指令的執(zhí)行速度會(huì)更快,也即是說(shuō)軟件測(cè)試的效率將會(huì)更高。以上采用優(yōu)先級(jí)控制各操作元素的執(zhí)行順序的方案舉例作為一個(gè)優(yōu)選實(shí)現(xiàn)方式,不應(yīng)理解為對(duì)本發(fā)明實(shí)施例的唯一限定。
[0081]進(jìn)一步地,本發(fā)明實(shí)施例還提供了操作指令的發(fā)送方案的可選實(shí)現(xiàn)方式,具體如下:如圖4所示,上述裝置,還包括:
[0082]坐標(biāo)確定單元401,用于若上述元素確定單元302確定上述運(yùn)行界面截圖包含預(yù)定的操作元素,確定操作元素在運(yùn)行界面截圖中的坐標(biāo);
[0083]上述指令下發(fā)單元303,用于下發(fā)對(duì)上述運(yùn)行界面截圖中上述坐標(biāo)確定單元401確定的坐標(biāo)的操作指令。
[0084]以上實(shí)施例通過(guò)獲得操作元素的坐標(biāo),在操作指令中直接攜帶該坐標(biāo)使被測(cè)試軟件的運(yùn)行設(shè)備對(duì)操作元素進(jìn)行操作。本領(lǐng)域技術(shù)人員可以理解是,由于操作元素已經(jīng)在運(yùn)行界面截圖中被識(shí)別出來(lái),如何實(shí)現(xiàn)指令對(duì)其進(jìn)行操作,本領(lǐng)域技術(shù)人員可以依據(jù)不同的情況采用不同的選擇方案,因此操作指令不不僅限于采用攜帶坐標(biāo)的方式來(lái)實(shí)現(xiàn)。因此以上舉例不應(yīng)理解為對(duì)本發(fā)明實(shí)施例的唯一性限定。
[0085]可選地,本發(fā)明實(shí)施例還提供給了如何確定是否包含預(yù)定操作元素的具體實(shí)現(xiàn)方式舉例,如下:上述元素確定單元302,用于使用預(yù)定的操作元素對(duì)上述運(yùn)行界面截圖執(zhí)行模板匹配,確定是否包含預(yù)定的操作元素。
[0086]以上實(shí)施例給出了采用模板匹配的方式來(lái)實(shí)現(xiàn)圖像識(shí)別,從而確定運(yùn)行界面是否包含有預(yù)定的操作元素。本領(lǐng)域技術(shù)人員可以理解的是,圖像識(shí)別的實(shí)現(xiàn)方式有很多,以上舉例是基于軟件測(cè)試【技術(shù)領(lǐng)域】,操作元素屬于有限集的情況下,一種優(yōu)選的實(shí)現(xiàn)方案。采用其它方案識(shí)別并判斷是否存在預(yù)定的操作元素并不影響本發(fā)明實(shí)施例的實(shí)現(xiàn),因此以上方案不應(yīng)理解為對(duì)本發(fā)明實(shí)施例的唯一性限定。
[0087]本發(fā)明實(shí)施例還提供了一種軟件測(cè)試裝置,如圖5所示,包括:接收器501、發(fā)射器502、存儲(chǔ)器503以及處理器504 ;
[0088]其中處理器504,用于獲取軟件測(cè)試過(guò)程中的運(yùn)行界面截圖;對(duì)上述運(yùn)行界面截圖進(jìn)行圖像識(shí)別,確定是否包含預(yù)定的操作元素;若上述運(yùn)行界面截圖包含預(yù)定的操作元素,則下發(fā)對(duì)上述運(yùn)行界面截圖中的操作元素的操作指令。
[0089]在本步驟軟件測(cè)試過(guò)程中,被測(cè)試軟件會(huì)執(zhí)行點(diǎn)擊、拖曳、系統(tǒng)按鍵等各種操作,具體測(cè)試過(guò)程依測(cè)試目的的不同可能有所不同,本發(fā)明實(shí)施例對(duì)被測(cè)試軟件的具體的測(cè)試過(guò)程不予限定。
[0090]上述預(yù)定的操作元素,可以是預(yù)先確定的需要操作的元素圖片,例如在可靠性測(cè)試過(guò)程中存在一些必須要優(yōu)先點(diǎn)擊或操作的控件,或者需要執(zhí)行指定的操作序列,可以使用預(yù)定的操作元素來(lái)確定,例如可以包括:“確定”、“取消”、“關(guān)閉”、“下一步”、“上一步”等。本領(lǐng)域技術(shù)人員可以理解的是具體的操作元素是依據(jù)具體的被測(cè)試軟件而定的,以上舉例僅是常用的幾種常用操作元素的舉例,不應(yīng)理解為對(duì)本發(fā)明實(shí)施例的唯一性限定。
[0091]本實(shí)施例,通過(guò)對(duì)測(cè)試過(guò)程中的運(yùn)行界面截圖的識(shí)別,確定其包含預(yù)定的操作元素,那么就下發(fā)對(duì)操作元素的操作指令。這樣可以避免完全隨機(jī)地進(jìn)行操作很難命中的問(wèn)題,從而避免自動(dòng)測(cè)試過(guò)程中的停滯現(xiàn)象,從而提高了軟件測(cè)試效率。
[0092]可選地,本發(fā)明實(shí)施例還提供了運(yùn)行界面截圖的獲取方式,具體如下:上述處理器504,還用于獲取軟件測(cè)試過(guò)程中的運(yùn)行界面截圖包括:用于在軟件測(cè)試過(guò)程中以預(yù)定時(shí)間為周期獲取運(yùn)行界面截圖;或者,用于監(jiān)測(cè)軟件測(cè)試過(guò)程中的操作執(zhí)行過(guò)程,在操作執(zhí)行完畢后,獲取運(yùn)行界面截圖。
[0093]本實(shí)施例,軟件測(cè)試的過(guò)程可以是由被測(cè)試軟件的運(yùn)行設(shè)備來(lái)執(zhí)行,也可以由專門的測(cè)試設(shè)備來(lái)執(zhí)行。如果是被測(cè)試軟件的運(yùn)行設(shè)備來(lái)執(zhí)行本實(shí)施例的方案,那么運(yùn)行界面截圖獲取以后可以被發(fā)送給控制模塊進(jìn)行相關(guān)(圖像識(shí)別等)處理;如果由專門的測(cè)試設(shè)備來(lái)執(zhí)行本實(shí)施例的方案,那么截圖可以由被測(cè)試軟件的運(yùn)行設(shè)備來(lái)執(zhí)行截圖,截圖的指令可以是由上述專門的測(cè)試設(shè)備下發(fā),也可以由被測(cè)試軟件的運(yùn)行設(shè)備生成。
[0094]例如:上例中,如果由被測(cè)試軟件的運(yùn)行設(shè)備來(lái)執(zhí)行本實(shí)施例的方案,那么上述在軟件測(cè)試過(guò)程中以預(yù)定時(shí)間為周期獲取運(yùn)行界面截圖可以是:被測(cè)試軟件的運(yùn)行設(shè)備在軟件測(cè)試過(guò)程中以預(yù)定時(shí)間為周期獲取運(yùn)行界面截圖;或者是:被測(cè)試軟件的運(yùn)行設(shè)備在軟件測(cè)試過(guò)程中接收以預(yù)定時(shí)間為周期獲取運(yùn)行界面截圖的截圖指令后,以上述截圖指令指定的時(shí)間為周期獲取運(yùn)行界面截圖。
[0095]再例如:上例中,如果由被測(cè)試軟件的運(yùn)行設(shè)備來(lái)執(zhí)行本實(shí)施例的方案,那么上述監(jiān)測(cè)軟件測(cè)試過(guò)程中的操作執(zhí)行過(guò)程,在操作執(zhí)行完畢后,獲取運(yùn)行界面截圖可以是:被測(cè)試軟件的運(yùn)行設(shè)備監(jiān)測(cè)軟件測(cè)試過(guò)程中的操作執(zhí)行過(guò)程,在操作執(zhí)行完畢后,獲取運(yùn)行界面截圖;或者是,被測(cè)試軟件的運(yùn)行設(shè)備接收到來(lái)自測(cè)試設(shè)備發(fā)送的截圖指令,獲取運(yùn)行界面截圖;上述截圖指令在上述測(cè)試設(shè)備監(jiān)測(cè)到軟件測(cè)試過(guò)程中的操作執(zhí)行過(guò)程,并監(jiān)測(cè)到操作執(zhí)行完畢后由上述測(cè)試設(shè)備發(fā)出。
[0096]以上給出了兩種運(yùn)行界面截圖的獲取方案,本領(lǐng)域技術(shù)人員可以理解的是,觸發(fā)對(duì)被測(cè)試軟件的運(yùn)行界面進(jìn)行截圖還可以有別的方式,本發(fā)明實(shí)施例不可能對(duì)此進(jìn)行窮舉,并且具體的觸發(fā)方式并不影響本發(fā)明實(shí)施例的實(shí)現(xiàn),因此本發(fā)明實(shí)施例對(duì)此不予限定,以上優(yōu)選實(shí)現(xiàn)方式的舉例也不應(yīng)理解為對(duì)本發(fā)明實(shí)施例的唯一性限定。
[0097]可選地,由于一個(gè)運(yùn)行界面截圖可能會(huì)存在兩個(gè)或者兩個(gè)以上(即大于一個(gè))的預(yù)定的操作元素,本發(fā)明實(shí)施例還提供了出現(xiàn)此種情況的解決方案,具體如下:若上述運(yùn)行界面截圖包含預(yù)定的操作元素大于一個(gè),上述處理器504,用于下發(fā)對(duì)上述運(yùn)行界面截圖中的操作元素的操作指令包括:用于按照上述運(yùn)行界面截圖中的各操作元素的優(yōu)先級(jí),依次下發(fā)操作指令;或者,用于下發(fā)對(duì)上述運(yùn)行界面截圖中的各操作元素的操作指令以及各操作指令的執(zhí)行優(yōu)先級(jí)。
[0098]以上實(shí)施例通過(guò)優(yōu)先級(jí)的方式確定了存在多個(gè)操作元素時(shí)對(duì)各操作元素如何處理的方案,以上優(yōu)先級(jí)的方式可以實(shí)現(xiàn)過(guò)操作元素時(shí)各操作元素的執(zhí)行順序,為了實(shí)現(xiàn)對(duì)各操作元素執(zhí)行順序的控制,還可以采用順序發(fā)送操作指令,各操作指令間隔預(yù)定時(shí)間,也是可以的。以上舉例相對(duì)于采用間隔時(shí)間方式的方案而言,操作指令的執(zhí)行速度會(huì)更快,也即是說(shuō)軟件測(cè)試的效率將會(huì)更高。以上采用優(yōu)先級(jí)控制各操作元素的執(zhí)行順序的方案舉例作為一個(gè)優(yōu)選實(shí)現(xiàn)方式,不應(yīng)理解為對(duì)本發(fā)明實(shí)施例的唯一限定。
[0099]進(jìn)一步地,本發(fā)明實(shí)施例還提供了操作指令的發(fā)送方案的可選實(shí)現(xiàn)方式,具體如下:若上述運(yùn)行界面截圖包含預(yù)定的操作元素,上述處理器504,還用于確定操作元素在運(yùn)行界面截圖中的坐標(biāo);那么,上述下發(fā)對(duì)上述運(yùn)行界面截圖中的操作元素的操作指令包括:下發(fā)對(duì)上述運(yùn)行界面截圖中上述坐標(biāo)的操作指令。
[0100]以上實(shí)施例通過(guò)獲得操作元素的坐標(biāo),在操作指令中直接攜帶該坐標(biāo)使被測(cè)試軟件的運(yùn)行設(shè)備對(duì)操作元素進(jìn)行操作。本領(lǐng)域技術(shù)人員可以理解是,由于操作元素已經(jīng)在運(yùn)行界面截圖中被識(shí)別出來(lái),如何實(shí)現(xiàn)指令對(duì)其進(jìn)行操作,本領(lǐng)域技術(shù)人員可以依據(jù)不同的情況采用不同的選擇方案,因此操作指令不不僅限于采用攜帶坐標(biāo)的方式來(lái)實(shí)現(xiàn)。因此以上舉例不應(yīng)理解為對(duì)本發(fā)明實(shí)施例的唯一性限定。
[0101]可選地,本發(fā)明實(shí)施例還提供給了如何確定是否包含預(yù)定操作元素的具體實(shí)現(xiàn)方式舉例,如下:上述處理器504,用于對(duì)上述運(yùn)行界面截圖進(jìn)行圖像識(shí)別,確定是否包含預(yù)定的操作元素包括:用于使用預(yù)定的操作元素對(duì)上述運(yùn)行界面截圖執(zhí)行模板匹配,確定是否包含預(yù)定的操作元素。
[0102]以上實(shí)施例給出了采用模板匹配的方式來(lái)實(shí)現(xiàn)圖像識(shí)別,從而確定運(yùn)行界面是否包含有預(yù)定的操作元素。本領(lǐng)域技術(shù)人員可以理解的是,圖像識(shí)別的實(shí)現(xiàn)方式有很多,以上舉例是基于軟件測(cè)試【技術(shù)領(lǐng)域】,操作元素屬于有限集的情況下,一種優(yōu)選的實(shí)現(xiàn)方案。采用其它方案識(shí)別并判斷是否存在預(yù)定的操作元素并不影響本發(fā)明實(shí)施例的實(shí)現(xiàn),因此以上方案不應(yīng)理解為對(duì)本發(fā)明實(shí)施例的唯一性限定。
[0103]本發(fā)明實(shí)施例還提供了另一種軟件測(cè)試裝置,如圖6所示,為了便于說(shuō)明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分,具體技術(shù)細(xì)節(jié)未揭示的,請(qǐng)參照本發(fā)明實(shí)施例方法部分。該裝置以終端為例,終端可以為包括手機(jī)、平板電腦、PDA (Personal Digital Assistant,個(gè)人數(shù)字助理)、POS (Point of Sales,銷售終端)、車載電腦等任意終端設(shè)備,以終端為手機(jī)為例:
[0104]圖6示出的是與本發(fā)明實(shí)施例提供的終端相關(guān)的手機(jī)的部分結(jié)構(gòu)的框圖。參考圖6,手機(jī)包括:射頻(Rad1 Frequency,RF)電路610、存儲(chǔ)器620、輸入單元630、顯示單元640、傳感器650、音頻電路660、無(wú)線保真(wireless fidelity,WiFi)模塊670、處理器680、以及電源690等部件。本領(lǐng)域技術(shù)人員可以理解,圖6中示出的手機(jī)結(jié)構(gòu)并不構(gòu)成對(duì)手機(jī)的限定,可以包括比圖示更多或更少的部件,或者組合某些部件,或者不同的部件布置。
[0105]下面結(jié)合圖6對(duì)手機(jī)的各個(gè)構(gòu)成部件進(jìn)行具體的介紹:
[0106]RF電路610可用于收發(fā)信息或通話過(guò)程中,信號(hào)的接收和發(fā)送,特別地,將基站的下行信息接收后,給處理器680處理;另外,將設(shè)計(jì)上行的數(shù)據(jù)發(fā)送給基站。通常,RF電路包括但不限于天線、至少一個(gè)放大器、收發(fā)信機(jī)、耦合器、低噪聲放大器(Low NoiseAmplifier, LNA)、雙工器等。此外,RF電路60還可以通過(guò)無(wú)線通信與網(wǎng)絡(luò)和其他設(shè)備通信。上述無(wú)線通信可以使用任一通信標(biāo)準(zhǔn)或協(xié)議,包括但不限于全球移動(dòng)通訊系統(tǒng)(Global System of Mobile communicat1n, GSM)、通用分組無(wú)線服務(wù)(General PacketRad1 Service, GPRS)、碼分多址(Code Divis1n Multiple Access, CDMA)、寬帶碼分多址(Wideband Code Divis1n Multiple Access, WCDMA)、長(zhǎng)期演進(jìn)(Long Term Evolut1n,LTE)、電子郵件、短消息服務(wù)(Short Messaging Service, SMS)等。
[0107]存儲(chǔ)器620可用于存儲(chǔ)軟件程序以及模塊,處理器680通過(guò)運(yùn)行存儲(chǔ)在存儲(chǔ)器620的軟件程序以及模塊,從而執(zhí)行手機(jī)的各種功能應(yīng)用以及數(shù)據(jù)處理。存儲(chǔ)器620可主要包括存儲(chǔ)程序區(qū)和存儲(chǔ)數(shù)據(jù)區(qū),其中,存儲(chǔ)程序區(qū)可存儲(chǔ)操作系統(tǒng)、至少一個(gè)功能所需的應(yīng)用程序(比如聲音播放功能、圖像播放功能等)等;存儲(chǔ)數(shù)據(jù)區(qū)可存儲(chǔ)根據(jù)手機(jī)的使用所創(chuàng)建的數(shù)據(jù)(比如音頻數(shù)據(jù)、電話本等)等。此外,存儲(chǔ)器620可以包括高速隨機(jī)存取存儲(chǔ)器,還可以包括非易失性存儲(chǔ)器,例如至少一個(gè)磁盤存儲(chǔ)器件、閃存器件、或其他易失性固態(tài)存儲(chǔ)器件。
[0108]輸入單元630可用于接收輸入的數(shù)字或字符信息,以及產(chǎn)生與手機(jī)600的用戶設(shè)置以及功能控制有關(guān)的鍵信號(hào)輸入。具體地,輸入單元630可包括觸控面板631以及其他輸入設(shè)備632。觸控面板631,也稱為觸摸屏,可收集用戶在其上或附近的觸摸操作(比如用戶使用手指、觸筆等任何適合的物體或附件在觸控面板631上或在觸控面板631附近的操作),并根據(jù)預(yù)先設(shè)定的程式驅(qū)動(dòng)相應(yīng)的連接裝置??蛇x的,觸控面板631可包括觸摸檢測(cè)裝置和觸摸控制器兩個(gè)部分。其中,觸摸檢測(cè)裝置檢測(cè)用戶的觸摸方位,并檢測(cè)觸摸操作帶來(lái)的信號(hào),將信號(hào)傳送給觸摸控制器;觸摸控制器從觸摸檢測(cè)裝置上接收觸摸信息,并將它轉(zhuǎn)換成觸點(diǎn)坐標(biāo),再送給處理器680,并能接收處理器680發(fā)來(lái)的命令并加以執(zhí)行。此外,可以采用電阻式、電容式、紅外線以及表面聲波等多種類型實(shí)現(xiàn)觸控面板631。除了觸控面板631,輸入單元630還可以包括其他輸入設(shè)備632。具體地,其他輸入設(shè)備632可以包括但不限于物理鍵盤、功能鍵(比如音量控制按鍵、開(kāi)關(guān)按鍵等)、軌跡球、鼠標(biāo)、操作桿等中的一種或多種。
[0109]顯示單元640可用于顯示由用戶輸入的信息或提供給用戶的信息以及手機(jī)的各種菜單。顯示單元640可包括顯示面板641,可選的,可以采用液晶顯示器(Liquid CrystalDisplay, IXD)、有機(jī)發(fā)光二極管(Organic Light-Emitting D1de, 0LED)等形式來(lái)配置顯示面板641。進(jìn)一步的,觸控面板631可覆蓋顯示面板641,當(dāng)觸控面板631檢測(cè)到在其上或附近的觸摸操作后,傳送給處理器680以確定觸摸事件的類型,隨后處理器680根據(jù)觸摸事件的類型在顯示面板641上提供相應(yīng)的視覺(jué)輸出。雖然在圖6中,觸控面板631與顯示面板641是作為兩個(gè)獨(dú)立的部件來(lái)實(shí)現(xiàn)手機(jī)的輸入和輸入功能,但是在某些實(shí)施例中,可以將觸控面板631與顯示面板641集成而實(shí)現(xiàn)手機(jī)的輸入和輸出功能。
[0110]手機(jī)600還可包括至少一種傳感器650,比如光傳感器、運(yùn)動(dòng)傳感器以及其他傳感器。具體地,光傳感器可包括環(huán)境光傳感器及接近傳感器,其中,環(huán)境光傳感器可根據(jù)環(huán)境光線的明暗來(lái)調(diào)節(jié)顯示面板641的亮度,接近傳感器可在手機(jī)移動(dòng)到耳邊時(shí),關(guān)閉顯示面板641和/或背光。作為運(yùn)動(dòng)傳感器的一種,加速計(jì)傳感器可檢測(cè)各個(gè)方向上(一般為三軸)加速度的大小,靜止時(shí)可檢測(cè)出重力的大小及方向,可用于識(shí)別手機(jī)姿態(tài)的應(yīng)用(比如橫豎屏切換、相關(guān)游戲、磁力計(jì)姿態(tài)校準(zhǔn))、振動(dòng)識(shí)別相關(guān)功能(比如計(jì)步器、敲擊)等;至于手機(jī)還可配置的陀螺儀、氣壓計(jì)、濕度計(jì)、溫度計(jì)、紅外線傳感器等其他傳感器,在此不再贅述。
[0111]音頻電路660、揚(yáng)聲器661,傳聲器662可提供用戶與手機(jī)之間的音頻接口。音頻電路660可將接收到的音頻數(shù)據(jù)轉(zhuǎn)換后的電信號(hào),傳輸?shù)綋P(yáng)聲器661,由揚(yáng)聲器661轉(zhuǎn)換為聲音信號(hào)輸出;另一方面,傳聲器662將收集的聲音信號(hào)轉(zhuǎn)換為電信號(hào),由音頻電路660接收后轉(zhuǎn)換為音頻數(shù)據(jù),再將音頻數(shù)據(jù)輸出處理器680處理后,經(jīng)RF電路610以發(fā)送給比如另一手機(jī),或者將音頻數(shù)據(jù)輸出至存儲(chǔ)器620以便進(jìn)一步處理。
[0112]WiFi屬于短距離無(wú)線傳輸技術(shù),手機(jī)通過(guò)WiFi模塊670可以幫助用戶收發(fā)電子郵件、瀏覽網(wǎng)頁(yè)和訪問(wèn)流式媒體等,它為用戶提供了無(wú)線的寬帶互聯(lián)網(wǎng)訪問(wèn)。雖然圖6示出了WiFi模塊670,但是可以理解的是,其并不屬于手機(jī)600的必須構(gòu)成,完全可以根據(jù)需要在不改變發(fā)明的本質(zhì)的范圍內(nèi)而省略。
[0113]處理器680是手機(jī)的控制中心,利用各種接口和線路連接整個(gè)手機(jī)的各個(gè)部分,通過(guò)運(yùn)行或執(zhí)行存儲(chǔ)在存儲(chǔ)器620內(nèi)的軟件程序和/或模塊,以及調(diào)用存儲(chǔ)在存儲(chǔ)器620內(nèi)的數(shù)據(jù),執(zhí)行手機(jī)的各種功能和處理數(shù)據(jù),從而對(duì)手機(jī)進(jìn)行整體監(jiān)控??蛇x的,處理器680可包括一個(gè)或多個(gè)處理單元;優(yōu)選的,處理器680可集成應(yīng)用處理器和調(diào)制解調(diào)處理器,其中,應(yīng)用處理器主要處理操作系統(tǒng)、用戶界面和應(yīng)用程序等,調(diào)制解調(diào)處理器主要處理無(wú)線通信??梢岳斫獾氖?,上述調(diào)制解調(diào)處理器也可以不集成到處理器680中。
[0114]手機(jī)600還包括給各個(gè)部件供電的電源690 (比如電池),優(yōu)選的,電源可以通過(guò)電源管理系統(tǒng)與處理器680邏輯相連,從而通過(guò)電源管理系統(tǒng)實(shí)現(xiàn)管理充電、放電、以及功耗管理等功能。
[0115]盡管未示出,手機(jī)600還可以包括攝像頭、藍(lán)牙模塊等,在此不再贅述。
[0116]在本發(fā)明實(shí)施例中,該終端所包括的處理器680還具有以下功能:
[0117]獲取軟件測(cè)試過(guò)程中的運(yùn)行界面截圖;對(duì)上述運(yùn)行界面截圖進(jìn)行圖像識(shí)別,確定是否包含預(yù)定的操作元素;若上述運(yùn)行界面截圖包含預(yù)定的操作元素,則下發(fā)對(duì)上述運(yùn)行界面截圖中的操作元素的操作指令。
[0118]在本步驟軟件測(cè)試過(guò)程中,被測(cè)試軟件會(huì)執(zhí)行點(diǎn)擊、拖曳、系統(tǒng)按鍵等各種操作,具體測(cè)試過(guò)程依測(cè)試目的的不同可能有所不同,本發(fā)明實(shí)施例對(duì)被測(cè)試軟件的具體的測(cè)試過(guò)程不予限定。
[0119]上述預(yù)定的操作元素,可以是預(yù)先確定的需要操作的元素圖片,例如在可靠性測(cè)試過(guò)程中存在一些必須要優(yōu)先點(diǎn)擊或操作的控件,或者需要執(zhí)行指定的操作序列,可以使用預(yù)定的操作元素來(lái)確定,例如可以包括:“確定”、“取消”、“關(guān)閉”、“下一步”、“上一步”等。本領(lǐng)域技術(shù)人員可以理解的是具體的操作元素是依據(jù)具體的被測(cè)試軟件而定的,以上舉例僅是常用的幾種常用操作元素的舉例,不應(yīng)理解為對(duì)本發(fā)明實(shí)施例的唯一性限定。
[0120]本實(shí)施例,通過(guò)對(duì)測(cè)試過(guò)程中的運(yùn)行界面截圖的識(shí)別,確定其包含預(yù)定的操作元素,那么就下發(fā)對(duì)操作元素的操作指令。這樣可以避免完全隨機(jī)地進(jìn)行操作很難命中的問(wèn)題,從而避免自動(dòng)測(cè)試過(guò)程中的停滯現(xiàn)象,從而提高了軟件測(cè)試效率。
[0121]可選地,本發(fā)明實(shí)施例還提供了運(yùn)行界面截圖的獲取方式,具體如下:上述處理器608,還用于獲取軟件測(cè)試過(guò)程中的運(yùn)行界面截圖包括:用于在軟件測(cè)試過(guò)程中以預(yù)定時(shí)間為周期獲取運(yùn)行界面截圖;或者,用于監(jiān)測(cè)軟件測(cè)試過(guò)程中的操作執(zhí)行過(guò)程,在操作執(zhí)行完畢后,獲取運(yùn)行界面截圖。
[0122]本實(shí)施例,軟件測(cè)試的過(guò)程可以是由被測(cè)試軟件的運(yùn)行設(shè)備來(lái)執(zhí)行,也可以由專門的測(cè)試設(shè)備來(lái)執(zhí)行。如果是被測(cè)試軟件的運(yùn)行設(shè)備來(lái)執(zhí)行本實(shí)施例的方案,那么運(yùn)行界面截圖獲取以后可以被發(fā)送給控制模塊進(jìn)行相關(guān)(圖像識(shí)別等)處理;如果由專門的測(cè)試設(shè)備來(lái)執(zhí)行本實(shí)施例的方案,那么截圖可以由被測(cè)試軟件的運(yùn)行設(shè)備來(lái)執(zhí)行截圖,截圖的指令可以是由上述專門的測(cè)試設(shè)備下發(fā),也可以由被測(cè)試軟件的運(yùn)行設(shè)備生成。
[0123]例如:上例中,如果由被測(cè)試軟件的運(yùn)行設(shè)備來(lái)執(zhí)行本實(shí)施例的方案,那么上述在軟件測(cè)試過(guò)程中以預(yù)定時(shí)間為周期獲取運(yùn)行界面截圖可以是:被測(cè)試軟件的運(yùn)行設(shè)備在軟件測(cè)試過(guò)程中以預(yù)定時(shí)間為周期獲取運(yùn)行界面截圖;或者是:被測(cè)試軟件的運(yùn)行設(shè)備在軟件測(cè)試過(guò)程中接收以預(yù)定時(shí)間為周期獲取運(yùn)行界面截圖的截圖指令后,以上述截圖指令指定的時(shí)間為周期獲取運(yùn)行界面截圖。
[0124]再例如:上例中,如果由被測(cè)試軟件的運(yùn)行設(shè)備來(lái)執(zhí)行本實(shí)施例的方案,那么上述監(jiān)測(cè)軟件測(cè)試過(guò)程中的操作執(zhí)行過(guò)程,在操作執(zhí)行完畢后,獲取運(yùn)行界面截圖可以是:被測(cè)試軟件的運(yùn)行設(shè)備監(jiān)測(cè)軟件測(cè)試過(guò)程中的操作執(zhí)行過(guò)程,在操作執(zhí)行完畢后,獲取運(yùn)行界面截圖;或者是,被測(cè)試軟件的運(yùn)行設(shè)備接收到來(lái)自測(cè)試設(shè)備發(fā)送的截圖指令,獲取運(yùn)行界面截圖;上述截圖指令在上述測(cè)試設(shè)備監(jiān)測(cè)到軟件測(cè)試過(guò)程中的操作執(zhí)行過(guò)程,并監(jiān)測(cè)到操作執(zhí)行完畢后由上述測(cè)試設(shè)備發(fā)出。
[0125]以上給出了兩種運(yùn)行界面截圖的獲取方案,本領(lǐng)域技術(shù)人員可以理解的是,觸發(fā)對(duì)被測(cè)試軟件的運(yùn)行界面進(jìn)行截圖還可以有別的方式,本發(fā)明實(shí)施例不可能對(duì)此進(jìn)行窮舉,并且具體的觸發(fā)方式并不影響本發(fā)明實(shí)施例的實(shí)現(xiàn),因此本發(fā)明實(shí)施例對(duì)此不予限定,以上優(yōu)選實(shí)現(xiàn)方式的舉例也不應(yīng)理解為對(duì)本發(fā)明實(shí)施例的唯一性限定。
[0126]可選地,由于一個(gè)運(yùn)行界面截圖可能會(huì)存在兩個(gè)或者兩個(gè)以上(即大于一個(gè))的預(yù)定的操作元素,本發(fā)明實(shí)施例還提供了出現(xiàn)此種情況的解決方案,具體如下:若上述運(yùn)行界面截圖包含預(yù)定的操作元素大于一個(gè),上述處理器680,用于下發(fā)對(duì)上述運(yùn)行界面截圖中的操作元素的操作指令包括:用于按照上述運(yùn)行界面截圖中的各操作元素的優(yōu)先級(jí),依次下發(fā)操作指令;或者,用于下發(fā)對(duì)上述運(yùn)行界面截圖中的各操作元素的操作指令以及各操作指令的執(zhí)行優(yōu)先級(jí)。
[0127]以上實(shí)施例通過(guò)優(yōu)先級(jí)的方式確定了存在多個(gè)操作元素時(shí)對(duì)各操作元素如何處理的方案,以上優(yōu)先級(jí)的方式可以實(shí)現(xiàn)過(guò)操作元素時(shí)各操作元素的執(zhí)行順序,為了實(shí)現(xiàn)對(duì)各操作元素執(zhí)行順序的控制,還可以采用順序發(fā)送操作指令,各操作指令間隔預(yù)定時(shí)間,也是可以的。以上舉例相對(duì)于采用間隔時(shí)間方式的方案而言,操作指令的執(zhí)行速度會(huì)更快,也即是說(shuō)軟件測(cè)試的效率將會(huì)更高。以上采用優(yōu)先級(jí)控制各操作元素的執(zhí)行順序的方案舉例作為一個(gè)優(yōu)選實(shí)現(xiàn)方式,不應(yīng)理解為對(duì)本發(fā)明實(shí)施例的唯一限定。
[0128]進(jìn)一步地,本發(fā)明實(shí)施例還提供了操作指令的發(fā)送方案的可選實(shí)現(xiàn)方式,具體如下:若上述運(yùn)行界面截圖包含預(yù)定的操作元素,上述處理器680,還用于確定操作元素在運(yùn)行界面截圖中的坐標(biāo);那么,上述下發(fā)對(duì)上述運(yùn)行界面截圖中的操作元素的操作指令包括:下發(fā)對(duì)上述運(yùn)行界面截圖中上述坐標(biāo)的操作指令。
[0129]以上實(shí)施例通過(guò)獲得操作元素的坐標(biāo),在操作指令中直接攜帶該坐標(biāo)使被測(cè)試軟件的運(yùn)行設(shè)備對(duì)操作元素進(jìn)行操作。本領(lǐng)域技術(shù)人員可以理解是,由于操作元素已經(jīng)在運(yùn)行界面截圖中被識(shí)別出來(lái),如何實(shí)現(xiàn)指令對(duì)其進(jìn)行操作,本領(lǐng)域技術(shù)人員可以依據(jù)不同的情況采用不同的選擇方案,因此操作指令不不僅限于采用攜帶坐標(biāo)的方式來(lái)實(shí)現(xiàn)。因此以上舉例不應(yīng)理解為對(duì)本發(fā)明實(shí)施例的唯一性限定。
[0130]可選地,本發(fā)明實(shí)施例還提供給了如何確定是否包含預(yù)定操作元素的具體實(shí)現(xiàn)方式舉例,如下:上述處理器680,用于對(duì)上述運(yùn)行界面截圖進(jìn)行圖像識(shí)別,確定是否包含預(yù)定的操作元素包括:用于使用預(yù)定的操作元素對(duì)上述運(yùn)行界面截圖執(zhí)行模板匹配,確定是否包含預(yù)定的操作元素。
[0131]以上實(shí)施例給出了采用模板匹配的方式來(lái)實(shí)現(xiàn)圖像識(shí)別,從而確定運(yùn)行界面是否包含有預(yù)定的操作元素。本領(lǐng)域技術(shù)人員可以理解的是,圖像識(shí)別的實(shí)現(xiàn)方式有很多,以上舉例是基于軟件測(cè)試【技術(shù)領(lǐng)域】,操作元素屬于有限集的情況下,一種優(yōu)選的實(shí)現(xiàn)方案。采用其它方案識(shí)別并判斷是否存在預(yù)定的操作元素并不影響本發(fā)明實(shí)施例的實(shí)現(xiàn),因此以上方案不應(yīng)理解為對(duì)本發(fā)明實(shí)施例的唯一性限定。
[0132]值得注意的是,上述裝置實(shí)施例中,所包括的各個(gè)單元只是按照功能邏輯進(jìn)行劃分的,但并不局限于上述的劃分,只要能夠?qū)崿F(xiàn)相應(yīng)的功能即可;另外,各功能單元的具體名稱也只是為了便于相互區(qū)分,并不用于限制本發(fā)明的保護(hù)范圍。
[0133]另外,本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述各方法實(shí)施例中的全部或部分步驟是可以通過(guò)程序來(lái)指令相關(guān)的硬件完成,相應(yīng)的程序可以存儲(chǔ)于一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,上述提到的存儲(chǔ)介質(zhì)可以是只讀存儲(chǔ)器,磁盤或光盤等。
[0134]以上僅為本發(fā)明較佳的【具體實(shí)施方式】,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本【技術(shù)領(lǐng)域】的技術(shù)人員在本發(fā)明實(shí)施例揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)該以權(quán)利要求的保護(hù)范圍為準(zhǔn)。
【權(quán)利要求】
1.一種軟件測(cè)試方法,其特征在于,包括: 獲取軟件測(cè)試過(guò)程中的運(yùn)行界面截圖; 對(duì)所述運(yùn)行界面截圖進(jìn)行圖像識(shí)別,確定是否包含預(yù)定的操作元素; 若所述運(yùn)行界面截圖包含預(yù)定的操作元素,則下發(fā)對(duì)所述運(yùn)行界面截圖中的操作元素的操作指令。
2.根據(jù)權(quán)利要求1所述方法,其特征在于,所述獲取軟件測(cè)試過(guò)程中的運(yùn)行界面截圖包括: 在軟件測(cè)試過(guò)程中以預(yù)定時(shí)間為周期獲取運(yùn)行界面截圖;或者, 監(jiān)測(cè)軟件測(cè)試過(guò)程中的操作執(zhí)行過(guò)程,在操作執(zhí)行完畢后,獲取運(yùn)行界面截圖。
3.根據(jù)權(quán)利要求1或2所述方法,其特征在于,若所述運(yùn)行界面截圖包含預(yù)定的操作元素大于一個(gè),所述下發(fā)對(duì)所述運(yùn)行界面截圖中的操作元素的操作指令包括: 按照所述運(yùn)行界面截圖中的各操作元素的優(yōu)先級(jí),依次下發(fā)操作指令;或者,下發(fā)對(duì)所述運(yùn)行界面截圖中的各操作元素的操作指令以及各操作指令的執(zhí)行優(yōu)先級(jí)。
4.根據(jù)權(quán)利要求1或2所述方法,其特征在于,若所述運(yùn)行界面截圖包含預(yù)定的操作元素,還包括:確定操作元素在運(yùn)行界面截圖中的坐標(biāo); 所述下發(fā)對(duì)所述運(yùn)行界面截圖中的操作元素的操作指令包括: 下發(fā)對(duì)所述運(yùn)行界面截圖中所述坐標(biāo)的操作指令。
5.根據(jù)權(quán)利要求1或2所述方法,其特征在于,所述對(duì)所述運(yùn)行界面截圖進(jìn)行圖像識(shí)另O,確定是否包含預(yù)定的操作元素包括: 使用預(yù)定的操作元素對(duì)所述運(yùn)行界面截圖執(zhí)行模板匹配,確定是否包含預(yù)定的操作元素。
6.一種軟件測(cè)試裝置,其特征在于,包括: 截圖獲取單元,用于獲取軟件測(cè)試過(guò)程中的運(yùn)行界面截圖; 元素確定單元,用于對(duì)所述截圖獲取單元獲取的所述運(yùn)行界面截圖進(jìn)行圖像識(shí)別,確定是否包含預(yù)定的操作元素; 指令下發(fā)單元,用于若所述元素確定單元確定所述運(yùn)行界面截圖包含預(yù)定的操作元素,則下發(fā)對(duì)所述運(yùn)行界面截圖中的操作元素的操作指令。
7.根據(jù)權(quán)利要求6所述裝置,其特征在于, 所述截圖獲取單元,用于在軟件測(cè)試過(guò)程中以預(yù)定時(shí)間為周期獲取運(yùn)行界面截圖;或者,監(jiān)測(cè)軟件測(cè)試過(guò)程中的操作執(zhí)行過(guò)程,在操作執(zhí)行完畢后,獲取運(yùn)行界面截圖。
8.根據(jù)權(quán)利要求6或7所述裝置,其特征在于, 所述指令下發(fā)單元,用于若所述元素確定單元確定所述運(yùn)行界面截圖包含預(yù)定的操作元素大于一個(gè),則按照所述運(yùn)行界面截圖中的各操作元素的優(yōu)先級(jí),依次下發(fā)操作指令;或者,下發(fā)對(duì)所述運(yùn)行界面截圖中的各操作元素的操作指令以及各操作指令的執(zhí)行優(yōu)先級(jí)。
9.根據(jù)權(quán)利要求6或7所述裝置,其特征在于,還包括: 坐標(biāo)確定單元,用于若所述元素確定單元確定所述運(yùn)行界面截圖包含預(yù)定的操作元素,確定操作元素在運(yùn)行界面截圖中的坐標(biāo); 所述指令下發(fā)單元,用于下發(fā)對(duì)所述運(yùn)行界面截圖中所述坐標(biāo)確定單元確定的坐標(biāo)的操作指令。
10.根據(jù)權(quán)利要求6或7所述裝置,其特征在于, 所述元素確定單元,用于使用預(yù)定的操作元素對(duì)所述運(yùn)行界面截圖執(zhí)行模板匹配,確定是否包含預(yù)定的操作元素。
【文檔編號(hào)】G06F11/36GK104516812SQ201310450584
【公開(kāi)日】2015年4月15日 申請(qǐng)日期:2013年9月27日 優(yōu)先權(quán)日:2013年9月27日
【發(fā)明者】吳英, 李凌虹 申請(qǐng)人:騰訊科技(深圳)有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
应用必备| 宜宾县| 分宜县| 靖宇县| 宜黄县| 垫江县| 广州市| 宜兰市| 汉川市| 昌黎县| 河曲县| 牙克石市| 于都县| 山东省| 武义县| 庆元县| 张家界市| 方城县| 花莲县| 嵊州市| 怀化市| 同江市| 丹阳市| 临颍县| 姜堰市| 新宾| 张家港市| 宜兰县| 红桥区| 德兴市| 阿城市| 文水县| 新竹县| 历史| 安庆市| 思茅市| 孟州市| 石景山区| 安泽县| 开远市| 永兴县|