本發(fā)明涉及推送系統(tǒng)領(lǐng)域,具體地,涉及一種用于測試推送系統(tǒng)的方法及裝置。
背景技術(shù):
推送系統(tǒng)是運(yùn)營團(tuán)隊(duì)研發(fā)的給手機(jī)、電視等終端發(fā)送通知和消息的系統(tǒng)。隨著終端數(shù)量的快速增長、產(chǎn)品全球化升級及運(yùn)營方的需求增加,推送系統(tǒng)需要快速的迭代來進(jìn)行重構(gòu)和增加功能。此外,推送系統(tǒng)邏輯復(fù)雜、接收的并發(fā)請求大,一旦出錯(cuò),對手機(jī)、電視等終端內(nèi)的所有內(nèi)置app以及使用推送服務(wù)的第三方app都有直接的影響。
因此,需要在上線前針對推送系統(tǒng)進(jìn)行完整的功能和性能測試,該測試結(jié)果直接影響推送服務(wù)上線的正確性和穩(wěn)定性。
現(xiàn)有的測試方案是通過一個(gè)測試腳本,模擬客戶端與推送系統(tǒng)之間的簡單的交互功能,包括驗(yàn)證TCP連接、init初始化、register注冊等功能。
在實(shí)現(xiàn)本發(fā)明過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在如下問題:上述測試方案只能覆蓋于推送系統(tǒng)的協(xié)議測試,僅占測試場景的10%,無法構(gòu)建復(fù)雜的交互場景,無法驗(yàn)證各種類型的消息發(fā)送及離線消息,無法驗(yàn)證各種異常情況,無法進(jìn)行壓測,無法對線上系統(tǒng)進(jìn)行回歸測試。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例的目的是提供一種用于測試推送系統(tǒng)的方法及裝置,其能夠構(gòu)建復(fù)雜的交互場景,驗(yàn)證推送系統(tǒng)所推送的各種類型的消息的準(zhǔn)確性及時(shí)效性。
為了實(shí)現(xiàn)上述目的,本發(fā)明實(shí)施例提供一種用于測試推送系統(tǒng)的方法,該方法包括:生成一個(gè)或多個(gè)模擬客戶端;建立所述一個(gè)或多個(gè)模擬客戶端與所述推送系統(tǒng)之間的協(xié)議連接;觸發(fā)所述推送系統(tǒng)按照指定方式向所述一個(gè)或多個(gè)模擬客戶端推送消息;以及驗(yàn)證所述消息的準(zhǔn)確性和/或?qū)崟r(shí)性。
可選地,所述消息包括以下中的一者或多者:在線消息、離線消息、異常消息、批量消息。
可選地,所述一個(gè)或多個(gè)模擬客戶端按照功能邏輯而被劃分為一個(gè)或多個(gè)組,所述方法還包括:觸發(fā)所述推送系統(tǒng)向所述一個(gè)或多個(gè)組中的每一組推送不同的消息。
可選地,所述方法還包括:對所述推送系統(tǒng)進(jìn)行壓力測試和/或回歸測試。
可選地,所述對所述推送系統(tǒng)進(jìn)行壓力測試包括以下中的一者或多者:針對不同種類的消息,測試所述推送系統(tǒng)的能夠承受的最大推送量;以及測試所述推送系統(tǒng)向指定數(shù)量的模擬客戶端推送消息所使用的時(shí)間。
相應(yīng)地,本發(fā)明實(shí)施例還提供一種用于測試推送系統(tǒng)的裝置,該裝置包括:生成模塊,用于生成一個(gè)或多個(gè)模擬客戶端;連接模塊,用于建立所述一個(gè)或多個(gè)模擬客戶端與所述推送系統(tǒng)之間的協(xié)議連接;觸發(fā)模塊,用于觸發(fā)所述推送系統(tǒng)按照指定方式向所述一個(gè)或多個(gè)模擬客戶端推送消息;以及驗(yàn)證模塊,用于驗(yàn)證所述消息的準(zhǔn)確性和/或?qū)崟r(shí)性。
可選地,所述消息包括以下中的一者或多者:在線消息、離線消息、異常消息、批量消息。
可選地,所述一個(gè)或多個(gè)模擬客戶端按照功能邏輯而劃分為一個(gè)或多個(gè)組,所述觸發(fā)模塊還用于觸發(fā)所述推送系統(tǒng)向所述一個(gè)或多個(gè)組中的每一組推送不同的消息。
可選地,所述裝置還可以包括:壓力測試模塊,用于對所述推送系統(tǒng)進(jìn)行壓力測試;和/或回歸測試模塊,用于對所述推送系統(tǒng)進(jìn)行回歸測試。
可選地,所述壓力測試模塊用于執(zhí)行以下中的一者或多者:針對不同種類的消息,測試所述推送系統(tǒng)的能夠承受的最大推送量;以及測試所述推送系統(tǒng)向指定數(shù)量的模擬客戶端推送消息所使用的時(shí)間。
通過上述技術(shù)方案,觸發(fā)推送系統(tǒng)按照指定方式向模擬客戶端推送消息并驗(yàn)證所述消息的準(zhǔn)確性和/或?qū)崟r(shí)性,可以實(shí)現(xiàn)對推送系統(tǒng)的各種推送方式以及推送系統(tǒng)推送的各種消息進(jìn)行全面的測試及驗(yàn)證,進(jìn)而有效測試推送系統(tǒng)的正確性及穩(wěn)定性。
本發(fā)明實(shí)施例的其它特征和優(yōu)點(diǎn)將在隨后的具體實(shí)施方式部分予以詳細(xì)說明。
附圖說明
附圖是用來提供對本發(fā)明的進(jìn)一步理解,并且構(gòu)成說明書的一部分,與下面的具體實(shí)施方式一起用于解釋本發(fā)明,但并不構(gòu)成對本發(fā)明的限制。在附圖中:
圖1示出了一實(shí)施例中用于測試推送系統(tǒng)的裝置的結(jié)構(gòu)框圖;
圖2示出了一實(shí)施例中模擬客戶端的分組示意圖;
圖3示出了一實(shí)施例中用于測試推送系統(tǒng)的裝置的結(jié)構(gòu)框圖;
圖4示出了一實(shí)施例中用于測試推送系統(tǒng)的方法的流程圖;以及
圖5示出了根據(jù)本發(fā)明實(shí)施例提供的用于實(shí)現(xiàn)用于測試推送系統(tǒng)的裝置的計(jì)算機(jī)系統(tǒng)的結(jié)構(gòu)示意圖。
附圖標(biāo)記說明
1,2,3,4,5…N 模擬客戶端
10 生成模塊 20 連接模塊
30 觸發(fā)模塊 40 驗(yàn)證模塊
50 壓力測試模塊 60 回歸測試模塊
70 推送系統(tǒng) 500 計(jì)算機(jī)系統(tǒng)
501 中央處理模塊 502 只讀存儲(chǔ)器
503 隨機(jī)訪問存儲(chǔ)器 504 總線
505 輸入/輸出接口 506 輸入部分
507 輸出部分 508 存儲(chǔ)部分
509 通信部分 510 驅(qū)動(dòng)器
511 可拆卸介質(zhì)
具體實(shí)施方式
以下結(jié)合附圖對本發(fā)明的具體實(shí)施方式進(jìn)行詳細(xì)說明。應(yīng)當(dāng)理解的是,此處所描述的具體實(shí)施方式僅用于說明和解釋本發(fā)明,并不用于限制本發(fā)明。
實(shí)施例一
圖1示出了一實(shí)施例中用于測試推送系統(tǒng)的裝置的結(jié)構(gòu)框圖。如圖1所示,本發(fā)明實(shí)施例提供一種用于測試推送系統(tǒng)的裝置,該裝置包括:生成模塊10、連接模塊20、觸發(fā)模塊30及驗(yàn)證模塊40??蛇x地,該用于測試推送系統(tǒng)的裝置可以根據(jù)被測的推測系統(tǒng)的地址適應(yīng)性地修改配置文件。
生成模塊10用于生成一個(gè)或多個(gè)模擬客戶端,該模擬客戶端能夠?qū)崿F(xiàn)與推送系統(tǒng)之間的交互功能,此外,所生成的每個(gè)模擬客戶端均含有各自的ID,該ID可以包括不同模式的ID,如,設(shè)備ID或用戶ID等,并且在每個(gè)模擬客戶端可以被封裝有各種屬性和行為。
連接模塊20用于建立所述一個(gè)或多個(gè)模擬客戶端與所述推送系統(tǒng)之間的協(xié)議連接,其中,協(xié)議可以是任何一種網(wǎng)絡(luò)協(xié)議,如,TCP/IP(Transmission Control Protocol/Internet Protocol,傳輸控制/網(wǎng)絡(luò)協(xié)議)協(xié)議、IPX(Internetwork Packet Exchange,網(wǎng)間數(shù)據(jù)包交換)協(xié)議等,模擬客戶端和推送系統(tǒng)通過上述協(xié)議進(jìn)行數(shù)據(jù)交換。
觸發(fā)模塊30用于觸發(fā)所述推送系統(tǒng)按照指定方式向所述一個(gè)或多個(gè)模擬客戶端推送消息,該指定方式可以包括推送系統(tǒng)可以執(zhí)行的任意類型的推送方式,如,按組推送、按廣播推送、按照不同ID進(jìn)行推送等。
驗(yàn)證模塊40,用于驗(yàn)證所述消息的準(zhǔn)確性和/或?qū)崟r(shí)性。該驗(yàn)證模塊可以實(shí)現(xiàn)對上述的各種推送方式以及推送系統(tǒng)推送的各種消息進(jìn)行全面的測試及驗(yàn)證,進(jìn)而有效測試推送系統(tǒng)的正確性及穩(wěn)定性。
實(shí)施例二
基于上述實(shí)施例,用于測試推送系統(tǒng)的裝置可以對推送系統(tǒng)的各種推送方式進(jìn)行測試或者可以對推送系統(tǒng)進(jìn)行協(xié)議測試。其中按照各種推送方式推送的消息可以包括在線消息、離線消息、異常消息、批量消息等。
例如,可以對推送系統(tǒng)按照設(shè)備ID進(jìn)行推送消息的方式進(jìn)行測試,具體地,在測試過程中,觸發(fā)模塊30可以通過調(diào)用推送系統(tǒng)的相應(yīng)API(Application Programming Interface,應(yīng)用程序編程接口)來觸發(fā)推送系統(tǒng)按照設(shè)備ID向模擬客戶端推送消息,并且觸發(fā)模塊30在調(diào)用該相應(yīng)API的同時(shí)向推送系統(tǒng)指定一個(gè)或多個(gè)模擬客戶端的ID,以觸發(fā)推送系統(tǒng)向該一個(gè)或多個(gè)模擬客戶端推送消息。在該推送方式中,推送系統(tǒng)推送的消息可以包括在線消息或離線消息。
在上述一個(gè)或多個(gè)模擬客戶端接收到推送系統(tǒng)所推送的消息后,驗(yàn)證模塊40可以對這些消息進(jìn)行驗(yàn)證,包括驗(yàn)證這些消息的格式與內(nèi)容是否準(zhǔn)確,若其中有一者或二者不準(zhǔn)確,則可認(rèn)為推送系統(tǒng)發(fā)送的該消息為異常消息,用于測試推送系統(tǒng)的裝置可以針對異常消息而生成異常消息日志,供工作人員對這些異常消息進(jìn)行分析,確定推送系統(tǒng)的產(chǎn)生該異常消息的原因。
進(jìn)一步地,還可以對消息的實(shí)時(shí)性進(jìn)行驗(yàn)證。對于一個(gè)模擬客戶端,可以統(tǒng)計(jì)從推送系統(tǒng)開始推送消息到該一個(gè)模擬客戶端完全接收到消息所經(jīng)歷的時(shí)間,在該時(shí)間小于預(yù)定值的情況下可以認(rèn)為推送系統(tǒng)具有時(shí)效性,該預(yù)定值例如可以是2秒。對于多個(gè)模擬客戶端,可以統(tǒng)計(jì)從推送系統(tǒng)開始推送消息到該多個(gè)模擬客戶端均完全接收到消息所經(jīng)歷的時(shí)間,在該時(shí)間小于預(yù)定值的情況下可以認(rèn)為推送系統(tǒng)具有時(shí)效性,該預(yù)定值例如可以是3秒。否則,認(rèn)為推送系統(tǒng)時(shí)效性效果不佳,需要進(jìn)行改進(jìn)。
進(jìn)一步地,觸發(fā)模塊30可以觸發(fā)推送系統(tǒng)推送批量消息,該批量消息可以為廣播消息或者按組推送的消息。對于廣播消息,驗(yàn)證模塊40可以驗(yàn)證所有模擬客戶端所接收的該廣播消息準(zhǔn)確性和/或?qū)崟r(shí)性,其觸發(fā)和驗(yàn)證過程與上文類似,這里不再贅述。對于按組推送的消息,是指觸發(fā)模塊30觸發(fā)推送系統(tǒng)按照設(shè)備ID的分組來進(jìn)行推送,驗(yàn)證模塊40驗(yàn)證推送系統(tǒng)對每一分組所推送的消息準(zhǔn)確性和/或?qū)崟r(shí)性。
進(jìn)一步地,用于測試推送系統(tǒng)的裝置還可以用來驗(yàn)證推送系統(tǒng)依照其它一些方式所推送的消息的準(zhǔn)確性和/或?qū)崟r(shí)性,包括推送系統(tǒng)按照注冊信息所推送的消息、按照用戶ID所推送的消息、按照主題推送的消息、按照目標(biāo)所推送的消息等,其觸發(fā)和驗(yàn)證過程與上述實(shí)施例類似,這里將不再一一贅述。
此外,用于測試推送系統(tǒng)的裝置還可以用來對推送系統(tǒng)進(jìn)行協(xié)議測試,如驗(yàn)證推送系統(tǒng)針對協(xié)議連接請求、初始化請求、注冊請求而推送的各種應(yīng)答消息的準(zhǔn)確性和/或?qū)崟r(shí)性。
實(shí)施例三
圖2示出了一實(shí)施例中模擬客戶端的分組示意圖。如圖2所示,在一實(shí)施方式中,可以按照功能邏輯將上述一個(gè)或多個(gè)模擬客戶端劃分為多個(gè)組,每一組模擬客戶端中可以包括一個(gè)或多個(gè)模擬客戶端。圖2示意性地示出了三組模擬客戶端,其中第一組包含模擬客戶端1和2,第二組僅包含一個(gè)模擬客戶端3,第三組可以包含模擬客戶端4、5…N,其可以是三個(gè)或更多個(gè)模擬客戶端。每一組模擬客戶端可以被用于接收推送系統(tǒng)70按照不同的指定方式所推送的消息。
舉例而言,可以按照推送系統(tǒng)推送消息的方式將模擬客戶端劃分為七個(gè)組,如,第一組模擬客戶端可以被用于接收推送系統(tǒng)按照設(shè)備ID所推送的消息,第二組模擬客戶端可以被用于接收推送系統(tǒng)按照用戶ID所推送的消息,第三組模擬客戶端可以被用于接收推送系統(tǒng)按照主題所推送的消息,等等,這里將不一一例舉。通過對模擬客戶端進(jìn)行分組可以實(shí)現(xiàn)同時(shí)對推送系統(tǒng)推送的不同種類的推送消息進(jìn)行測試。
實(shí)施例四
圖3示出了一實(shí)施例中用于測試推送系統(tǒng)的裝置的結(jié)構(gòu)框圖。如圖3所示,本發(fā)明實(shí)施例所提供的用于測試推送系統(tǒng)的裝置還可以包括壓力測試模塊50,用于對推送系統(tǒng)進(jìn)行壓力測試。
一方面壓力測試模塊50可以用于針對不同種類的消息,測試所述推送系統(tǒng)的能夠承受的最大推送量,該最大推送量為推送系統(tǒng)一次能夠推送的最大消息數(shù)量。具體地,可以不斷的增加生成模塊10所生成的模擬客戶端的數(shù)量,如可以首先生成100000個(gè)模擬客戶端,觸發(fā)模塊30觸發(fā)推送系統(tǒng)針對這100000個(gè)模擬客戶端推送消息(該推送方式可以不進(jìn)行具體限制),之后每次增加100000個(gè)模擬客戶端,并實(shí)時(shí)監(jiān)控推送系統(tǒng)的內(nèi)存使用率、推送系統(tǒng)的CPU空閑率、通信網(wǎng)絡(luò)的速率。在通信系統(tǒng)的內(nèi)存使用率低于90%或者推送系統(tǒng)的CPU空閑率小于10%或者通信網(wǎng)絡(luò)的速率接近癱瘓的情況下,停止增加所生成的模擬客戶端的數(shù)量,此時(shí)模擬客戶端的數(shù)量即為推送系統(tǒng)一次能夠承受的最大推送量。
另一方面,壓力測試模塊50還可以用于測試推送系統(tǒng)向指定數(shù)量的模擬客戶端推送消息所使用的時(shí)間,該指定數(shù)量例如可以是100萬個(gè)。具體地,生成模塊10可以被設(shè)置為生成10000個(gè)模擬客戶端,觸發(fā)模塊30觸發(fā)推送系統(tǒng)針對這10000個(gè)模擬客戶端推送消息(該推送方式可以不進(jìn)行具體限制),統(tǒng)計(jì)從推送系統(tǒng)開始推送消息到該10000個(gè)模擬客戶端均完全接收到消息所經(jīng)歷的時(shí)間,計(jì)算推送系統(tǒng)每秒可以向多少個(gè)模擬客戶端推送消息,進(jìn)而可以計(jì)算出推送系統(tǒng)向指定數(shù)量的模擬客戶端推送消息所使用的時(shí)間。
進(jìn)一步參考圖3,用于測試推送系統(tǒng)的裝置還可以包括回歸測試模塊60,用于對推送系統(tǒng)進(jìn)行回歸測試。具體地,觸發(fā)模塊30可以觸發(fā)推送系統(tǒng)重復(fù)地向指定的一個(gè)或多個(gè)模擬客戶端推送消息以測試推送系統(tǒng)的穩(wěn)定性。
實(shí)施例五
圖4示出了一實(shí)施例中用于測試推送系統(tǒng)的方法的流程圖。如圖4所示,本發(fā)明實(shí)施例中還提供一種用于測試推送系統(tǒng)的方法,該方法包括:步驟S10,生成一個(gè)或多個(gè)模擬客戶端;步驟S20,建立所述一個(gè)或多個(gè)模擬客戶端與所述推送系統(tǒng)之間的TCP連接;步驟S30,觸發(fā)所述推送系統(tǒng)按照指定方式向所述一個(gè)或多個(gè)模擬客戶端推送消息;以及步驟S40,驗(yàn)證所述消息的準(zhǔn)確性和/或?qū)崟r(shí)性。這里所生成的每個(gè)模擬客戶端均含有各自的ID,該ID可以包括不同模式的ID,如,設(shè)備ID或用戶ID等,并且在每個(gè)模擬客戶端可以被封裝有各種屬性和行為??蛇x地,該用于測試推送系統(tǒng)的裝置可以根據(jù)被測的推測系統(tǒng)的地址適應(yīng)性地修改配置文件。
其中,指定方式可以包括:按照設(shè)備ID進(jìn)行推送消息的方式、按照注冊信息推送的消息的方式、按照用戶ID推送消息的方式、按照主題推送消息的方式、按照目標(biāo)推送消息的方式等。
實(shí)施例六
上述實(shí)施例中的消息可以包括以下中的一者或多者:在線消息、離線消息、異常消息、批量消息。
例如,可以對推送系統(tǒng)按照設(shè)備ID進(jìn)行推送消息的方式進(jìn)行測試,具體地,在測試過程中,可以通過調(diào)用推送系統(tǒng)的相應(yīng)API(Application Programming Interface,應(yīng)用程序編程接口)來觸發(fā)推送系統(tǒng)按照設(shè)備ID向模擬客戶端推送消息,并且在調(diào)用該相應(yīng)API的同時(shí)向推送系統(tǒng)指定一個(gè)或多個(gè)模擬客戶端的ID,以觸發(fā)推送系統(tǒng)向該一個(gè)或多個(gè)模擬客戶端推送消息。在該推送方式中,推送系統(tǒng)推送的消息可以包括在線消息或離線消息。
在上述一個(gè)或多個(gè)模擬客戶端接收到推送系統(tǒng)所推送的消息后,可以對這些消息進(jìn)行驗(yàn)證,包括驗(yàn)證這些消息的格式與內(nèi)容是否準(zhǔn)確,若其中有一者或二者不準(zhǔn)確,則可認(rèn)為推送系統(tǒng)發(fā)送的該消息為異常消息,用于測試推送系統(tǒng)的裝置可以針對異常消息而生成異常消息日志,供工作人員對這些異常消息進(jìn)行分析,確定推送系統(tǒng)的產(chǎn)生該異常消息的原因。
進(jìn)一步地,還可以對消息的實(shí)時(shí)性進(jìn)行驗(yàn)證。對于一個(gè)模擬客戶端,可以統(tǒng)計(jì)從推送系統(tǒng)開始推送消息到該一個(gè)模擬客戶端完全接收到消息所經(jīng)歷的時(shí)間,在該時(shí)間小于預(yù)定值的情況下可以認(rèn)為推送系統(tǒng)具有時(shí)效性,該預(yù)定值例如可以是2秒。對于多個(gè)模擬客戶端,可以統(tǒng)計(jì)從推送系統(tǒng)開始推送消息到該多個(gè)模擬客戶端均完全接收到消息所經(jīng)歷的時(shí)間,在該時(shí)間小于預(yù)定值的情況下可以認(rèn)為推送系統(tǒng)具有時(shí)效性,該預(yù)定值例如可以是3秒。否則,認(rèn)為推送系統(tǒng)時(shí)效性效果不佳,需要進(jìn)行改進(jìn)。
進(jìn)一步地,可以觸發(fā)推送系統(tǒng)推送批量消息,該批量消息可以為廣播消息或者按組推送的消息。對于廣播消息,以驗(yàn)證所有模擬客戶端所接收的該廣播消息準(zhǔn)確性和/或?qū)崟r(shí)性,其觸發(fā)和驗(yàn)證過程與上文類似,這里不再贅述。對于按組推送的消息,是指觸發(fā)推送系統(tǒng)按照設(shè)備ID的分組來進(jìn)行推送,驗(yàn)證推送系統(tǒng)對每一分組所推送的消息準(zhǔn)確性和/或?qū)崟r(shí)性。
進(jìn)一步地,用于測試推送系統(tǒng)的裝置還可以用來驗(yàn)證推送系統(tǒng)依照其它一些方式所推送的消息的準(zhǔn)確性和/或?qū)崟r(shí)性,包括推送系統(tǒng)按照注冊信息所推送的消息、按照用戶ID所推送的消息、按照主題推送的消息、按照目標(biāo)所推送的消息等,其觸發(fā)和驗(yàn)證過程與上述實(shí)施例類似,這里將不再一一贅述。
此外,用于測試推送系統(tǒng)的裝置還可以用來對推送系統(tǒng)進(jìn)行協(xié)議測試,如驗(yàn)證推送系統(tǒng)針對協(xié)議連接請求、初始化請求、注冊請求而推送的各種應(yīng)答消息的準(zhǔn)確性和/或?qū)崟r(shí)性。
本發(fā)明實(shí)施例所提供的用于測試推送系統(tǒng)的方法與上述本發(fā)明所提供的用于測試推送系統(tǒng)的裝置的工作原理與益處相似,這里將不再贅述。
本發(fā)明實(shí)施例所提供的用于測試推送系統(tǒng)的方法及裝置能夠?qū)ν扑拖到y(tǒng)的各種推送方式以及推送系統(tǒng)推送的各種消息進(jìn)行全面的測試及驗(yàn)證,進(jìn)而有效測試推送系統(tǒng)的正確性及穩(wěn)定性。
實(shí)施例七
下面參考圖5,其示出了適于用來實(shí)現(xiàn)本公開實(shí)施例的用于測試推送系統(tǒng)的裝置的計(jì)算機(jī)系統(tǒng)500的結(jié)構(gòu)示意圖。
如圖5所示,計(jì)算機(jī)系統(tǒng)500包括中央處理模塊(CPU)501,其可以根據(jù)存儲(chǔ)在只讀存儲(chǔ)器(ROM)502中的程序或者從存儲(chǔ)部分508加載到隨機(jī)訪問存儲(chǔ)器(RAM)503中的程序而執(zhí)行各種適當(dāng)?shù)膭?dòng)作和處理。在RAM503中,還存儲(chǔ)有系統(tǒng)500操作所需的各種程序和數(shù)據(jù)。CPU 501、ROM 502以及RAM 503通過總線504彼此相連。輸入/輸出(I/O)接口505也連接至總線504。
以下部件連接至I/O接口505:包括鍵盤、鼠標(biāo)等的輸入部分506;包括諸如陰極射線管(CRT)、液晶顯示器(LCD)等以及揚(yáng)聲器等的輸出部分507;包括硬盤等的存儲(chǔ)部分508;以及包括諸如LAN卡、調(diào)制解調(diào)器等的網(wǎng)絡(luò)接口卡的通信部分509。通信部分509經(jīng)由諸如因特網(wǎng)的網(wǎng)絡(luò)執(zhí)行通信處理。驅(qū)動(dòng)器510也根據(jù)需要連接至I/O接口505。可拆卸介質(zhì)511,諸如磁盤、光盤、磁光盤、半導(dǎo)體存儲(chǔ)器等等,根據(jù)需要安裝在驅(qū)動(dòng)器510上,以便于從其上讀出的計(jì)算機(jī)程序根據(jù)需要被安裝入存儲(chǔ)部分508。
特別地,根據(jù)本公開的實(shí)施例,上文參考流程圖描述的過程可以被實(shí)現(xiàn)為計(jì)算機(jī)軟件程序。例如,本公開的實(shí)施例包括一種計(jì)算機(jī)程序產(chǎn)品,其包括有形地包含在機(jī)器可讀介質(zhì)上的計(jì)算機(jī)程序,所述計(jì)算機(jī)程序包含用于執(zhí)行本發(fā)明實(shí)施例所提供的用于測試推送系統(tǒng)的方法的程序代碼。在這樣的實(shí)施例中,該計(jì)算機(jī)程序可以通過通信部分509從網(wǎng)絡(luò)上被下載和安裝,和/或從可拆卸介質(zhì)511被安裝。
本領(lǐng)域技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分步驟是可以通過程序來指令相關(guān)的硬件來完成,該程序存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包括若干指令用以使得一個(gè)設(shè)備(可以是單片機(jī),芯片等)或處理器(processor)執(zhí)行本申請各個(gè)實(shí)施例所述方法的全部或部分步驟。而前述的存儲(chǔ)介質(zhì)包括:U盤、移動(dòng)硬盤、只讀存儲(chǔ)器(ROM,Read-Only Memory)、隨機(jī)存取存儲(chǔ)器(RAM,Random Access Memory)、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。
以上結(jié)合附圖詳細(xì)描述了本發(fā)明的優(yōu)選實(shí)施方式,但是,本發(fā)明并不限于上述實(shí)施方式中的具體細(xì)節(jié),在本發(fā)明的技術(shù)構(gòu)思范圍內(nèi),可以對本發(fā)明的技術(shù)方案進(jìn)行多種簡單變型,這些簡單變型均屬于本發(fā)明的保護(hù)范圍。
另外需要說明的是,在上述具體實(shí)施方式中所描述的各個(gè)具體技術(shù)特征,在不矛盾的情況下,可以通過任何合適的方式進(jìn)行組合,為了避免不必要的重復(fù),本發(fā)明對各種可能的組合方式不再另行說明。
此外,本發(fā)明的各種不同的實(shí)施方式之間也可以進(jìn)行任意組合,只要其不違背本發(fā)明的思想,其同樣應(yīng)當(dāng)視為本發(fā)明所公開的內(nèi)容。