動(dòng)裝置100b,……,100η接收與該錯(cuò)誤信息有關(guān)的復(fù)制信息。在一個(gè)實(shí)現(xiàn)方式中,計(jì)算裝置40可以從一個(gè)或者多個(gè)其它移動(dòng)裝置100b,……,100η接收復(fù)制信息。復(fù)制信息可以包括與嘗試由其他移動(dòng)裝置100b,……,100η復(fù)制該錯(cuò)誤的結(jié)果有關(guān)的信息。復(fù)制信息可以包括與從其接收復(fù)制信息的移動(dòng)裝置100η有關(guān)的信息。例如,復(fù)制信息可以包括與從其接收復(fù)制信息的移動(dòng)裝置100η的屬性(例如移動(dòng)裝置100η的硬件、操作系統(tǒng)、操作系統(tǒng)版本和/或其它屬性)有關(guān)的信息。錯(cuò)誤處理模塊134a可以基于從其他移動(dòng)裝置100η接收的復(fù)制信息和與錯(cuò)誤出現(xiàn)處的操作有關(guān)的錯(cuò)誤信息的比較來(lái)確定另一個(gè)移動(dòng)裝置100η是否能夠復(fù)制錯(cuò)誤。
[0081]響應(yīng)于移動(dòng)裝置100b,……,100η能夠復(fù)制錯(cuò)誤的確定,錯(cuò)誤處理模塊134a可以確定與該錯(cuò)誤有關(guān)的特征。例如,錯(cuò)誤處理模塊134a可以確定錯(cuò)誤可以出現(xiàn)在共享一個(gè)或者多個(gè)屬性(例如硬件組件、操作系統(tǒng)、操作系統(tǒng)的版本和/或其它屬性)的移動(dòng)裝置100b,......,100η 處。
[0082]測(cè)試模塊130a的錯(cuò)誤復(fù)制模塊136a可以被配置為接收錯(cuò)誤信息以復(fù)制在另一個(gè)移動(dòng)裝置100η處出現(xiàn)的錯(cuò)誤,存儲(chǔ)與錯(cuò)誤復(fù)制嘗試有關(guān)的結(jié)果,向另一個(gè)移動(dòng)裝置100η和/或向計(jì)算裝置40發(fā)送結(jié)果,并且/或者執(zhí)行與錯(cuò)誤復(fù)制有關(guān)的其它功能。
[0083]錯(cuò)誤復(fù)制模塊136a可以從另一個(gè)移動(dòng)裝置100η接收錯(cuò)誤信息。例如,錯(cuò)誤信息可以包括與測(cè)試應(yīng)用有關(guān)的標(biāo)識(shí)符、錯(cuò)誤出現(xiàn)期間的操作、與被執(zhí)行以再現(xiàn)錯(cuò)誤的一個(gè)或者多個(gè)操作有關(guān)的信息、當(dāng)錯(cuò)誤出現(xiàn)時(shí)與測(cè)試應(yīng)用有關(guān)的狀態(tài)信息、當(dāng)錯(cuò)誤出現(xiàn)時(shí)與移動(dòng)裝置100η有關(guān)的狀態(tài)信息、至操作的數(shù)據(jù)輸入和至錯(cuò)誤出現(xiàn)處的操作之前的任何操作的數(shù)據(jù)輸入、包括被執(zhí)行(和對(duì)應(yīng)的數(shù)據(jù)輸入)以再現(xiàn)錯(cuò)誤的操作的測(cè)試腳本和/或與錯(cuò)誤和/或其再現(xiàn)有關(guān)的其它信息。
[0084]響應(yīng)于錯(cuò)誤信息包括與測(cè)試腳本有關(guān)的信息的確定,錯(cuò)誤復(fù)制模塊136a可以嘗試通過(guò)執(zhí)行在測(cè)試腳本中提出的有關(guān)操作來(lái)自動(dòng)復(fù)制錯(cuò)誤。
[0085]在一個(gè)實(shí)現(xiàn)方式中,錯(cuò)誤信息可以包括到測(cè)試應(yīng)用的鏈接。響應(yīng)于存取到測(cè)試應(yīng)用的鏈接的用戶輸入的接收,錯(cuò)誤復(fù)制模塊136a可以打開(kāi)測(cè)試應(yīng)用。錯(cuò)誤復(fù)制模塊136a可以通過(guò)使用在錯(cuò)誤信息中接收的數(shù)據(jù)輸入來(lái)自動(dòng)執(zhí)行測(cè)試應(yīng)用的操作,以嘗試再現(xiàn)錯(cuò)誤。在一個(gè)實(shí)現(xiàn)方式中,錯(cuò)誤再現(xiàn)模塊136a可以打開(kāi)測(cè)試應(yīng)用并且可以顯示與如何復(fù)制錯(cuò)誤有關(guān)的指令。錯(cuò)誤復(fù)制模塊136a可以接收用戶輸入以執(zhí)行再現(xiàn)錯(cuò)誤的操作。
[0086]響應(yīng)于由錯(cuò)誤復(fù)制模塊136a執(zhí)行的操作,移動(dòng)裝置100a的度量收集模塊132a可以收集與該操作有關(guān)的信息。響應(yīng)于執(zhí)行錯(cuò)誤出現(xiàn)處的操作的錯(cuò)誤復(fù)制模塊136a,錯(cuò)誤復(fù)制模塊136a可以向移動(dòng)裝置100η (從該移動(dòng)裝置接收錯(cuò)誤信息)傳輸用于該操作的、由度量收集模塊132a收集的信息。
[0087]再次參照?qǐng)D2,當(dāng)錯(cuò)誤在移動(dòng)裝置處在測(cè)試應(yīng)用的測(cè)試期間出現(xiàn)時(shí),移動(dòng)裝置可以用作發(fā)送裝置100a。當(dāng)接收與在發(fā)送裝置100a處在測(cè)試應(yīng)用的測(cè)試期間出現(xiàn)的錯(cuò)誤有關(guān)的信息時(shí),錯(cuò)誤移動(dòng)裝置也可以用作接收裝置100η。響應(yīng)于錯(cuò)誤出現(xiàn)在發(fā)送裝置100a處的確定,一個(gè)或者多個(gè)移動(dòng)裝置可以用作相應(yīng)的一個(gè)或者多個(gè)接收裝置100b,……,100η。接收裝置100η可以執(zhí)行測(cè)試模塊130a的錯(cuò)誤復(fù)制模塊136a的功能。發(fā)送裝置100a和接收裝置100η 二者可以執(zhí)行測(cè)試模塊130a的錯(cuò)誤處理模塊134a的功能的一些或者全部。
[0088]計(jì)算裝置
[0089]根據(jù)本發(fā)明的一個(gè)方面,計(jì)算裝置40可以包括:非暫時(shí)電子存儲(chǔ)介質(zhì)50,其被配置為存儲(chǔ)與一個(gè)或者多個(gè)測(cè)試應(yīng)用的現(xiàn)場(chǎng)用戶測(cè)試有關(guān)的信息;一個(gè)或者多個(gè)物理處理器42,其被配置為執(zhí)行一個(gè)或者多個(gè)計(jì)算機(jī)模塊;和/或其它組件。例如,計(jì)算裝置40的一個(gè)或者多個(gè)計(jì)算機(jī)模塊可以包括:網(wǎng)絡(luò)模塊44,其被配置為促進(jìn)與網(wǎng)絡(luò)20和多個(gè)移動(dòng)裝置100a, 100b,……,100η的通信;錯(cuò)誤分析模塊46,其被配置為提供與測(cè)試應(yīng)用有關(guān)的分析;報(bào)告模塊48,其被配置為促進(jìn)分析且報(bào)告與非暫時(shí)電子存儲(chǔ)介質(zhì)50處存儲(chǔ)的信息有關(guān)的信息;和/或其它模塊。
[0090]計(jì)算裝置40可以為任何計(jì)算裝置,例如服務(wù)器、臺(tái)式計(jì)算機(jī)、膝上型計(jì)算機(jī)、個(gè)人數(shù)字助理、智能電話、平板電腦和/或任何其它計(jì)算裝置。計(jì)算裝置40可以能夠在網(wǎng)絡(luò)20
上與一個(gè)或者多個(gè)移動(dòng)裝置100a, 100b,......,100η通信。計(jì)算裝置40也可以包括通常在計(jì)算裝置中找到的其它組件,例如包括用戶輸入特征(例如觸摸屏、麥克風(fēng)、鍵盤和/或其它用戶輸入特征)、揚(yáng)聲器、天線(和對(duì)應(yīng)的信號(hào)處理能力)和其它特征。在系統(tǒng)10處的其它計(jì)算裝置可以包括類似特征。
[0091]處理器42可以提供計(jì)算裝置40內(nèi)的信息處理能力。像這樣,處理器42可以包括:數(shù)字處理器、模擬處理器、被設(shè)計(jì)為處理信息的數(shù)字電路、被設(shè)計(jì)為處理信息的模擬電路、狀態(tài)機(jī)和/或用于電子處理信息的其它機(jī)制等中的一個(gè)或者多個(gè)。雖然處理器42在圖2中被示出為單個(gè)實(shí)體,但是這不旨在限制,因?yàn)樘幚砥?2可以包括在協(xié)調(diào)或者合作中操作的多個(gè)處理器。這可以包括以下實(shí)現(xiàn),在該實(shí)現(xiàn)方式中,計(jì)算裝置40包括多處理器裝置、一起操作的farm服務(wù)器裝置和/或由云提供的虛擬資源。處理器42可以被配置為執(zhí)行模塊44,46和/或48。處理器42可以被配置為通過(guò)軟件、硬件、固件、軟件、硬件和/或固件的某些組合和/或用于配置處理器42上處理能力的其它機(jī)制來(lái)執(zhí)行模塊44,46和/或48。
[0092]應(yīng)當(dāng)明白的是,雖然模塊44,46和/或48在圖2中被示出為共同位于單個(gè)計(jì)算裝置內(nèi),但是在其中處理器42包括多個(gè)處理單元的實(shí)現(xiàn)方式中,模塊44,46和/或48中的一個(gè)或者多個(gè)可以遠(yuǎn)離其它模塊放置。下面描述的、由不同模塊44,46和/或48提供的功能的描述出于說(shuō)明性目的而不旨在限制,因?yàn)槟K44,46和/或48中的任一個(gè)可以提供比所描述的更多或更少的功能。例如,可以消除模塊44,46和/或48中的一個(gè)或多個(gè),并且其功能中的一些或者全部可以由模塊44,46和/或48中的其它模塊提供。作為另一個(gè)示例,處理器42可以被配置為執(zhí)行一個(gè)或者多個(gè)額外模塊,這些模塊可以執(zhí)行下面歸因于模塊44,46和/或48中的一個(gè)模塊的功能中的一些或者所有。
[0093]非暫時(shí)電子存儲(chǔ)介質(zhì)50可以包括電子存儲(chǔ)介質(zhì),其非暫時(shí)性地電子地存儲(chǔ)信息、非暫時(shí)電子存儲(chǔ)介質(zhì)50的電子存儲(chǔ)介質(zhì)可以包括系統(tǒng)存儲(chǔ)(其一體地(即基本非可移除的)設(shè)置有計(jì)算裝置40)和/或可移除存儲(chǔ)(其經(jīng)由例如端口(例如USB端口、火線端口等)或驅(qū)動(dòng)器(例如磁盤驅(qū)動(dòng)器等)可移除地連接到計(jì)算裝置40)中的一個(gè)或者二者皆有。非暫時(shí)電子存儲(chǔ)介質(zhì)50可以包括:光學(xué)可讀存儲(chǔ)介質(zhì)(例如光盤等)、磁性可讀存儲(chǔ)介質(zhì)(例如磁帶、磁性硬盤驅(qū)動(dòng)器、軟盤驅(qū)動(dòng)器等)、基于電荷的存儲(chǔ)介質(zhì)(例如EEPROM、RAM等)、固態(tài)存儲(chǔ)介質(zhì)(例如閃盤驅(qū)動(dòng)器等)和/或其它電子可讀存儲(chǔ)介質(zhì)中的一個(gè)或者多個(gè)。非暫時(shí)電子存儲(chǔ)介質(zhì)50可以包括一個(gè)或者多個(gè)虛擬存儲(chǔ)源(例如云存儲(chǔ)、虛擬私人網(wǎng)絡(luò)和/或其它虛擬存儲(chǔ)源)。非暫時(shí)電子存儲(chǔ)介質(zhì)50可以存儲(chǔ)軟件算法、由處理器42確定的信息、從計(jì)算裝置40接收的信息、從一個(gè)或者多個(gè)移動(dòng)裝置100a,100b,……,100η接收的信息、和/或使計(jì)算裝置40能夠執(zhí)行如本文所述功能的其它信息。
[0094]在一些實(shí)現(xiàn)方式中,非暫時(shí)電子存儲(chǔ)介質(zhì)50可以包括至少一個(gè)數(shù)據(jù)庫(kù),其存儲(chǔ)系統(tǒng)數(shù)據(jù),例如與系統(tǒng)使用有關(guān)的信息、客戶信息、蒸餾室內(nèi)容和/或其它數(shù)據(jù)。非暫時(shí)電子存儲(chǔ)介質(zhì)50可以與計(jì)算裝置40相關(guān)聯(lián)且與計(jì)算裝置40通信。例如,包括非暫時(shí)電子存儲(chǔ)介質(zhì)50的一個(gè)或者多個(gè)數(shù)據(jù)庫(kù)可以為、包括、或者接入由Oracle公司商業(yè)銷售的Oracle?有關(guān)數(shù)據(jù)庫(kù)。其它數(shù)據(jù)庫(kù)例如Informix?、DB2 (數(shù)據(jù)庫(kù)2)或者其它數(shù)據(jù)存儲(chǔ),包括基于文件的、目標(biāo)或者查詢格式、平臺(tái)或者資源例如0LAP(在線分析處理)、SQL(標(biāo)準(zhǔn)查詢語(yǔ)言)、NoSQL、SAN(存儲(chǔ)區(qū)域網(wǎng)絡(luò))、Microsoft Access?或者其他形式的數(shù)據(jù)庫(kù)也可以被使用、被包含或者被存取。數(shù)據(jù)庫(kù)可以包括一個(gè)或者多個(gè)以下這種數(shù)據(jù)庫(kù),其駐留在一個(gè)或者多個(gè)物理裝置和一個(gè)或者多個(gè)物理位置中。數(shù)據(jù)庫(kù)可以存儲(chǔ)多個(gè)類型的數(shù)據(jù)和/或文件和相關(guān)聯(lián)的數(shù)據(jù)或者文件描述、管理信息或者任何其它數(shù)據(jù)。
[0095]在一些實(shí)現(xiàn)方式中,非暫時(shí)電子存儲(chǔ)介質(zhì)50可以為計(jì)算裝置的一部分或者在網(wǎng)絡(luò)20上由計(jì)算裝置主控。在一些實(shí)現(xiàn)方式中,非暫時(shí)電子存儲(chǔ)介質(zhì)50可以為計(jì)算裝置40的一部分或者由計(jì)算裝置40主控。在一些實(shí)現(xiàn)方式中,非暫時(shí)電子存儲(chǔ)50可以物理地與計(jì)算裝置40分離但是可以可操作地與其通信。
[0096](計(jì)算裝置40的)非暫時(shí)電子存儲(chǔ)介質(zhì)50可以被配置為存儲(chǔ)一個(gè)或者多個(gè)測(cè)試應(yīng)用、與一個(gè)或者多個(gè)移動(dòng)裝置100a,100b,……,100η有關(guān)的信息、與由一個(gè)或者多個(gè)移動(dòng)裝置100a,100b,……,100η處的測(cè)試應(yīng)用執(zhí)行的一個(gè)或者多個(gè)操作有關(guān)的信息、從一個(gè)或者多個(gè)移動(dòng)裝置100a,100b,……,100η接收的錯(cuò)誤信息、從一個(gè)或者多個(gè)移動(dòng)裝置100a, 100b,……,100η接收的復(fù)制信息、與一個(gè)或者多個(gè)測(cè)試應(yīng)用的分析有關(guān)的數(shù)據(jù)和/或與一個(gè)或者多個(gè)測(cè)試應(yīng)用的現(xiàn)場(chǎng)用戶測(cè)試有關(guān)的其它信息。在一個(gè)實(shí)現(xiàn)方式中,非暫時(shí)電子存儲(chǔ)介質(zhì)50可以包括錯(cuò)誤記錄,其被配置為存儲(chǔ)與在測(cè)試應(yīng)用的測(cè)試期間發(fā)生的一個(gè)或者多個(gè)錯(cuò)誤有關(guān)的其它信息。在一個(gè)實(shí)現(xiàn)方式中,非暫時(shí)電子存儲(chǔ)介質(zhì)50可以存儲(chǔ)測(cè)試應(yīng)用被部署到的移動(dòng)裝置100a,100b,……,100η的列表。該列表可以包括與移動(dòng)裝置100a, 100b,……,100η中的一個(gè)或者多個(gè)有關(guān)的屬性。
[0097]針對(duì)每個(gè)測(cè)試應(yīng)用,非暫時(shí)電子存儲(chǔ)介質(zhì)50可以存儲(chǔ)與基于測(cè)試應(yīng)用的操作的執(zhí)行的期望結(jié)果有關(guān)的信息。非暫時(shí)電子存儲(chǔ)介質(zhì)50可以存儲(chǔ)與指示錯(cuò)誤出現(xiàn)的一個(gè)或者多個(gè)事件有關(guān)的信息。與一個(gè)或者多個(gè)事件有關(guān)的信息可以指示出錯(cuò)誤與測(cè)試應(yīng)用的操作和移動(dòng)裝置100η的操作一起出現(xiàn),并且/或者指示出另一個(gè)類型的錯(cuò)誤出現(xiàn)。
[0098](計(jì)算裝置40的)錯(cuò)誤分析模塊46可以被配置為從發(fā)送裝置100a接收與由發(fā)送裝置100a處的測(cè)試應(yīng)用執(zhí)行的一個(gè)或者多個(gè)操作有關(guān)的信息。例如,錯(cuò)誤分析模塊46可以被配置為,響應(yīng)于從計(jì)算裝置40傳輸?shù)桨l(fā)送裝置100a的信息的請(qǐng)求并且/或者響應(yīng)于其它信息,來(lái)在預(yù)先確定間隔處從發(fā)送裝置100a接收信息。在一個(gè)實(shí)現(xiàn)方式中,錯(cuò)誤分析模塊46可以被配置為向一個(gè)或者多個(gè)接收裝置100b,……,100η傳輸接收到的信息。
[0099]錯(cuò)誤分析模塊46可以將與操作有關(guān)的接收到的信息和與該操作有關(guān)的、在非暫時(shí)電子存儲(chǔ)介質(zhì)50處存儲(chǔ)的信息進(jìn)行比較。響應(yīng)于接收到的信息未匹配與期望結(jié)果有關(guān)的存儲(chǔ)的信息的確定,錯(cuò)誤分析模塊46可以指示錯(cuò)誤與該操作一起出現(xiàn)。
[0100]錯(cuò)誤分析模塊46可以將接收到的信息和與一個(gè)或者多個(gè)事件有關(guān)的、在非暫時(shí)電子存儲(chǔ)介質(zhì)50處存儲(chǔ)的信息進(jìn)行比較。響應(yīng)于接收到的信息匹配與一個(gè)或者多個(gè)事件有關(guān)的信息的確定,錯(cuò)誤分析模塊46可以指示出錯(cuò)誤與該操作一起出現(xiàn)。
[0101]錯(cuò)誤分析模塊46可以被配置為也接收與該測(cè)試應(yīng)用的操作一起出現(xiàn)的錯(cuò)誤有關(guān)的信息。
[0102]錯(cuò)誤分析模塊46可以在非暫時(shí)電子存儲(chǔ)介質(zhì)50的錯(cuò)誤記錄處存儲(chǔ)與錯(cuò)誤出現(xiàn)處的操作有關(guān)的接收到的信息、接收到的錯(cuò)誤信息和/或與發(fā)送裝置100a處出現(xiàn)的錯(cuò)誤有關(guān)的其它信息。計(jì)算裝置40可以促進(jìn)與測(cè)試應(yīng)用相關(guān)聯(lián)的應(yīng)用開(kāi)發(fā)者對(duì)與測(cè)試應(yīng)用相關(guān)聯(lián)的錯(cuò)誤記錄處的信息的存取。
[0103]在一個(gè)實(shí)現(xiàn)方式中,錯(cuò)誤分析模塊46可以從一個(gè)或者多個(gè)接收裝置100b,……,100η接收復(fù)制信息。復(fù)制信息可以包括與嘗試由一個(gè)或者多個(gè)接收裝置100b,……,100η復(fù)制該錯(cuò)誤的結(jié)果有關(guān)的信息。復(fù)制信息可以包括與從其接收復(fù)制信息的接收裝置100η有關(guān)的信息。例如,復(fù)制信息可以包括與從其接收復(fù)制信息的接收裝置100η的屬性(例如接收裝置100η的硬件、操作系統(tǒng)、操作系統(tǒng)版本和/或其它屬