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

數(shù)字終端應(yīng)用軟件基于開放接口代理的測試方法

文檔序號(hào):6618814閱讀:174來源:國知局
專利名稱:數(shù)字終端應(yīng)用軟件基于開放接口代理的測試方法
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)字終端應(yīng)用測試領(lǐng)域,尤其涉及一種使用代理程序輔助數(shù)字終端 進(jìn)行測試的方式。
背景技術(shù)
目前國內(nèi)外的數(shù)字終端應(yīng)用正在處于一個(gè)高速成長的階段,無論是個(gè)人應(yīng)用, 還是企業(yè)級(jí)應(yīng)用,都逐漸成為近年來終端業(yè)務(wù)的新興模式和潮流。伴隨著應(yīng)用的快 速發(fā)展,軟件質(zhì)量問題也逐漸成為終端用戶、應(yīng)用開發(fā)商以及運(yùn)營商所關(guān)注的焦點(diǎn)。 但是,對于應(yīng)用軟件的測試,大部分都還是以人工測試為主要的測試手段,雖
然一些測試工具已經(jīng)面世,例如美國Test Quest公司的TestQuestPro,但應(yīng)用的 快速發(fā)展使得應(yīng)用測試一直無法研究出成型、有效、且更具針對性的方法。
解決應(yīng)用測試中所面臨的這種困境,需要從應(yīng)用軟件需求本身入手,對于不同 的應(yīng)用軟件提出其功能相關(guān)的測試方案。但這帶來另一個(gè)棘手問題,即應(yīng)用需求千 差萬別,且如上所述發(fā)展迅速,而測試方案又往往取決于其實(shí)施所依賴的測試環(huán)境, 很難滿足快速適應(yīng)需求的要求。因此,如何構(gòu)建一種測試方法,其具體的實(shí)施能夠 根據(jù)應(yīng)用軟件需求進(jìn)行靈活調(diào)整,成為解決應(yīng)用軟件測試的重點(diǎn)。

發(fā)明內(nèi)容
本發(fā)明的目的在于,通過提供一種數(shù)字終端應(yīng)用軟件基于開放接口代理的測試 方法,從測試手段上將應(yīng)用軟件的內(nèi)部信息也考慮在內(nèi),在測試平臺(tái)中提供接口以 及控制手段,以提供應(yīng)用軟件與測試平臺(tái)更多的交互手段,進(jìn)行更全面、以及更具 針對性的測試。
本發(fā)明是采用以下技術(shù)手段實(shí)現(xiàn)的一種數(shù)字終端應(yīng)用軟件基于開放接口代理的測試方法,基于數(shù)字終端開發(fā)代理 程序,并為代理程序設(shè)計(jì)開放式接口,支持?jǐn)?shù)字終端應(yīng)用軟件將測試相關(guān)信息通過 代理程序傳送給測試主機(jī)的測試環(huán)境;其特征在于所述的數(shù)字終端至少包括,數(shù) 字終端硬件以及運(yùn)行于數(shù)字終端上的系統(tǒng)軟件;所述的代理程序運(yùn)行在數(shù)字終端 上,為實(shí)際被測試對象;所述的測試主機(jī)中的測試環(huán)境,通過代理程序接收并保存 應(yīng)用軟件回傳信息,同時(shí)在其運(yùn)行過程中將利用該信息進(jìn)行測試;所述的測試方法 主要包括以下步驟-
數(shù)字終端安裝應(yīng)用軟件;
數(shù)字終端部署代理程序;
主機(jī)端安裝測試環(huán)境;
啟動(dòng)模塊并建立連接;
人工編寫測試腳本;
開始測試。
前述的數(shù)字終端應(yīng)用軟件基于開放接口代理的測試方法,其特征在于所述的 代理程序與不同的數(shù)字終端系統(tǒng)相對應(yīng)。
前述的開放式接口在相同的數(shù)字終端系統(tǒng)中具有相同的數(shù)據(jù)接口格式,并且與 應(yīng)用程序之間具有相同的通訊通道,支持對符合格式的應(yīng)用程序數(shù)據(jù)的接收。
前述的數(shù)字終端系統(tǒng)包括與測試主機(jī)的測試環(huán)境進(jìn)行連接的通訊模塊。
前述的測試主機(jī)上設(shè)有支持應(yīng)用軟件回傳信息的測試環(huán)境,該測試環(huán)境中包括 數(shù)據(jù)存儲(chǔ)模塊。
前述的測試主機(jī)上設(shè)有測試腳本解釋模塊,所述的數(shù)據(jù)存儲(chǔ)模塊與測試腳本解 釋模塊的信息相互傳遞。
前述的測試環(huán)境支持對數(shù)字終端應(yīng)用程序回傳信息的處理,該處理能力包括對 回傳信息的保存,回傳信息的查看,以及在測試過程中對該信息的利用。
前述的對回傳信息的利用,其利用方式為提供相應(yīng)的腳本函數(shù),函數(shù)功能包括
能夠?qū)崟r(shí)獲取當(dāng)前回傳的信息;
能夠解析回傳信息的內(nèi)容到腳本變量;能夠?qū)⒃撟兞啃畔⒂糜诒4?、判斷、控制操作?本發(fā)明與現(xiàn)有技術(shù)相比,具有以下明顯的優(yōu)勢和有益效果
發(fā)明內(nèi)容包括一個(gè)具有開放接口的運(yùn)行與數(shù)字終端的代理程序,以及能夠?qū)Υ?理程序中所獲得的應(yīng)用軟件信息進(jìn)行處理的主機(jī)測試環(huán)境。
利用該方法進(jìn)行測試時(shí),針對不同的測試對象,測試人員只需要根據(jù)相應(yīng)的測 試需求將應(yīng)用軟件信息利用代理軟件接口傳送到測試平臺(tái),然后再通過平臺(tái)的控制 模塊即可捕獲并利用該信息控制測試執(zhí)行,提高測試效率以及準(zhǔn)確度。
采用本發(fā)明所述數(shù)字終端應(yīng)用軟件基于開放接口代理的測試方法,測試人員可 以在應(yīng)用軟件的設(shè)計(jì)早期便開始著手測試方案的設(shè)計(jì),并先期將測試數(shù)據(jù)回傳設(shè)計(jì) 考慮在內(nèi),提高了應(yīng)用軟件的可測試性。
利用該測試方法,可以滿足應(yīng)用軟件不同研發(fā)階段的測試要求,從模塊測試、 集成測試到系統(tǒng)測試,測試人員可以逐步將測試所關(guān)注的應(yīng)用軟件信息利用代理程 序的統(tǒng)一接口回傳給測試環(huán)境,對應(yīng)用軟件進(jìn)行測試,而無需應(yīng)用軟件達(dá)到一定成 熟度再利用測試環(huán)境測試,提高了測試環(huán)境的測試廣度。
最重要的是,普通的測試方法為了達(dá)到通用性的要求,盡量將所涉及的測試原 語進(jìn)行統(tǒng)一、測試的層次進(jìn)行抽象,這使得即使專業(yè)領(lǐng)域的測試環(huán)境,其實(shí)現(xiàn)與具 體應(yīng)用需求相脫離,其使用也難以滿足具體應(yīng)用測試的全部要求,因此提供統(tǒng)一接 口的測試方法,提供了用戶一定程度上對測試原語、測試層次進(jìn)行定制的功能,提 高了測試平臺(tái)與被測應(yīng)用軟件之間的契合度,增加了測試的切入點(diǎn),提高了測試環(huán) 境的測試深度。


圖1為本發(fā)明測試方法的整體架構(gòu)示意圖; 圖2為本發(fā)明測試方法主流程示意圖; 圖3為本發(fā)明測試方法使用流程示意圖; 圖4為本發(fā)明測試方法處理流程示意圖。
具體實(shí)施例方式
為了便于本領(lǐng)域普通技術(shù)人員理解和實(shí)施本發(fā)明,下面通過具體實(shí)施方式
對本 發(fā)明作進(jìn)一步的詳細(xì)和深入描述。
圖1中展示了數(shù)字終端應(yīng)用軟件基于開放接口代理的測試方法的整體架構(gòu)。整 體架構(gòu)分為兩個(gè)部分?jǐn)?shù)字終端以及運(yùn)行于數(shù)字終端上的系統(tǒng)軟件、測試主機(jī)以及 運(yùn)行于測試主機(jī)的系統(tǒng)軟件。數(shù)字終端應(yīng)用軟件101運(yùn)行于數(shù)字終端系統(tǒng),為實(shí)際 被測對象,該應(yīng)用軟件設(shè)計(jì)了對代理程序開放接口的調(diào)用模塊,能夠在其運(yùn)行過程 中將測試信息通過代理程序開放接口傳送給代理程序。代理程序102也運(yùn)行于數(shù)字 終端系統(tǒng)上,為測試環(huán)境執(zhí)行的代理模塊,主要包括應(yīng)用信息處理模塊1021,針 對數(shù)字終端系統(tǒng),開放統(tǒng)一的可接收數(shù)據(jù)的接口,當(dāng)應(yīng)用軟件通過該接口發(fā)送測試
信息時(shí),該模塊完成信息的接收,并將信息傳送到數(shù)據(jù)處理模塊;驅(qū)動(dòng)模塊1022, 為測試環(huán)境驅(qū)動(dòng)數(shù)字終端的執(zhí)行模塊,該模塊解析測試環(huán)境發(fā)送的測試指令并驅(qū)動(dòng) 數(shù)字終端運(yùn)行,然后捕獲相應(yīng)的輸出,將輸出傳送給數(shù)據(jù)處理模塊;數(shù)據(jù)處理模塊 1023,接收應(yīng)用信息處理模塊和驅(qū)動(dòng)模塊返回的數(shù)據(jù),并打包發(fā)送給通訊模塊,同 時(shí)接收通訊模塊收到的測試指令信息,轉(zhuǎn)發(fā)到驅(qū)動(dòng)模塊進(jìn)行執(zhí)行;通訊模塊1024, 負(fù)責(zé)與測試主機(jī)上測試環(huán)境的通訊。
測試環(huán)境103運(yùn)行于測試主機(jī)系統(tǒng),主要提供用戶編寫測試腳本并執(zhí)行、以及 分析測試結(jié)果的功能,包括模塊數(shù)據(jù)存儲(chǔ)1031,用于保存測試環(huán)境運(yùn)行時(shí)所需的 數(shù)據(jù),并提供數(shù)據(jù)存取接口,數(shù)據(jù)主要是用戶編輯的測試腳本、測試配置以及數(shù)字 終端返回的測試數(shù)據(jù),其中數(shù)字終端返回的測試數(shù)據(jù)包括測試指令執(zhí)行的返回結(jié)果
和應(yīng)用軟件發(fā)送的測試信息;通訊模塊1032,負(fù)責(zé)與數(shù)字終端之間的通訊;信息
處理1033,用于將測試腳本解釋模塊解析所得的測試指令封裝,然后發(fā)送到通訊模 塊,并將通訊模塊的接收數(shù)據(jù)反饋到測試腳本解釋模塊,其中通訊模塊的接收數(shù)據(jù) 包括測試指令執(zhí)行的返回結(jié)果和應(yīng)用軟件發(fā)送的測試信息;測試腳本解釋模塊 1034,主要完成腳本解釋功能和應(yīng)用軟件測試信息處理功能,腳本解釋功能即從數(shù)據(jù)存儲(chǔ)模塊讀取腳本信息進(jìn)行解釋,然后將解釋所得的測試指令發(fā)送到信息處理模 塊進(jìn)行處理,應(yīng)用軟件測試信息處理是當(dāng)所解釋的為應(yīng)用軟件測試信息相關(guān)腳本 時(shí),該模塊將讀取當(dāng)前的數(shù)字終端應(yīng)用軟件測試信息緩沖區(qū),根據(jù)返回的測試信息 執(zhí)行腳本。
圖2本發(fā)明測試方法主流程示意圖,描述了開放接口代理的測試方法部署方案,
實(shí)施該測試方法之前需要進(jìn)行如下部署數(shù)字終端安裝應(yīng)用軟件201,將設(shè)計(jì)了測 試信息發(fā)送接口的應(yīng)用軟件安裝或部署到數(shù)字終端,并測試執(zhí)行成功;數(shù)字終端部 署代理程序202,根據(jù)數(shù)字終端系統(tǒng)選擇相應(yīng)的代理程序進(jìn)行安裝,并測試執(zhí)行成 功;主機(jī)端安裝測試環(huán)境203,即測試環(huán)境的安裝和部署,在測試主機(jī)上安裝測試 環(huán)境各個(gè)模塊并注冊相應(yīng)的信息;啟動(dòng)模塊并建立連接204,部署完成必要的測試 模塊后啟動(dòng)代理程序和測試環(huán)境,并建立連接,然后啟動(dòng)應(yīng)用程序,完成整個(gè)測試 環(huán)境的構(gòu)建;人工編寫測試腳本205,在測試環(huán)境中根據(jù)測試用例的設(shè)計(jì)編寫測試 腳本,其中包括對數(shù)字終端測試指令的發(fā)送腳本和對應(yīng)用軟件測試信息的處理腳 本;開始測試206,啟動(dòng)測試環(huán)境中解釋模塊,通過解釋腳本來執(zhí)行測試,并保存 相應(yīng)的結(jié)果。
圖3為開放接口代理的測試方法使用流程,是從用戶角度描述實(shí)施該測試方法 所需的測試步驟。設(shè)計(jì)應(yīng)用軟件測試相關(guān)信息301,即在軟件測試階段需要考慮軟 件的測試需求,根據(jù)測試需求進(jìn)行測試設(shè)計(jì),設(shè)計(jì)測試類型、測試要求以及歸納測 試必要的應(yīng)用軟件相關(guān)信息;設(shè)計(jì)應(yīng)用軟件發(fā)送信息接口 302,根據(jù)測試需求將測 試必要的信息以測試環(huán)境能夠支持的形式預(yù)留發(fā)送接口,然后根據(jù)代理程序開放的 接口設(shè)計(jì)相應(yīng)的發(fā)送模塊;發(fā)布或部署應(yīng)用軟件到數(shù)字終端303,包括根據(jù)應(yīng)用軟 件的運(yùn)行時(shí)要求,配置應(yīng)用軟件的環(huán)境參數(shù),以及將軟件安裝或部署到數(shù)字終端, 并測試執(zhí)行成功;啟動(dòng)應(yīng)用軟件304,啟動(dòng)數(shù)字終端上的應(yīng)用軟件。
配置測試環(huán)境305,包括在主機(jī)端安裝和配置測試環(huán)境,以及在數(shù)字終端安裝 代理程序;設(shè)計(jì)應(yīng)用軟件信息相關(guān)的測試用例306,為測試用例設(shè)計(jì)階段,是根據(jù) 軟件需求設(shè)計(jì)測試用例,并將設(shè)計(jì)階段歸納的測試必要信息應(yīng)用到測試用例中;編 寫測試腳本307,根據(jù)設(shè)計(jì)的測試用例,人工編寫或自動(dòng)化生成測試腳本;啟動(dòng)并連接測試環(huán)境與代理程序308,啟動(dòng)主機(jī)端測試環(huán)境和數(shù)字終端代理程序,并使用
數(shù)字終端支持的連接方式建立連接;測試執(zhí)行309,根據(jù)測試用例的設(shè)計(jì),選擇相 應(yīng)的測試腳本進(jìn)行解釋執(zhí)行,腳本執(zhí)行過程中測試環(huán)境將測試相關(guān)的數(shù)據(jù)自動(dòng)保 存;測試結(jié)果分析310,測試人員對測試結(jié)果進(jìn)行分析,判斷確認(rèn)用例是否測試通過。
圖4為開放接口代理的測試方法詳細(xì)處理流程。初始化測試環(huán)境401,首先啟 動(dòng)測試相關(guān)模塊,包括啟動(dòng)測試環(huán)境以及相應(yīng)的數(shù)字終端代理程序,以及啟動(dòng)數(shù)字 終端應(yīng)用程序,然后選擇指定腳本執(zhí)行測試;讀取并解釋腳本402,在此步驟中腳 本解釋模塊逐行獲取測試腳本,首先對腳本語法進(jìn)行檢查,檢查通過后根據(jù)腳本內(nèi) 容進(jìn)行解析;403判斷是否到腳本結(jié)束行,如果已經(jīng)到結(jié)束行則結(jié)束整個(gè)測試流程 418;如果未到達(dá)結(jié)束行且腳本內(nèi)容不為空,則判斷是否為應(yīng)用軟件信息處理404, 如果不是則說明該行代碼為邏輯控制或者指令發(fā)送;然后判斷是否為發(fā)送指令代碼 405,如果不是發(fā)送指令代碼則按照邏輯控制繼續(xù)讀取下一行腳本,如果是則進(jìn)入 發(fā)送指令并等待返回結(jié)果處理406,當(dāng)執(zhí)行完成并返回測試數(shù)據(jù)后保存數(shù)據(jù)并繼續(xù) 讀取下一行進(jìn)行解釋。
當(dāng)404判斷為應(yīng)用軟件信息處理時(shí),則腳本解釋模塊讀取應(yīng)用軟件測試信息 408,從應(yīng)用軟件測試信息緩沖417中獲取指定的測試信息,409判斷是否取得指 定信息成功;如果失敗則根據(jù)腳本內(nèi)容判斷是否需要等待411 ,如果需要?jiǎng)t回到408 繼續(xù)讀取直到超時(shí),當(dāng)讀取超時(shí)或者不需要等待直接轉(zhuǎn)入保存數(shù)據(jù)407;如果409 判斷讀取測試信息成功則轉(zhuǎn)入根據(jù)腳本指令進(jìn)行處理410,即將獲取到的測試信息 按照腳本要求保存到腳本變量中,然后進(jìn)行腳本指定的操作,操作完成后轉(zhuǎn)入保存 數(shù)據(jù),并在保存完成后繼續(xù)解釋下一條腳本。
數(shù)字終端對測試信息的處理為代理程序執(zhí)行并等待數(shù)據(jù)412,當(dāng)接收到測試 數(shù)據(jù)后判斷是否為測試指令,如果是則數(shù)據(jù)來自測試環(huán)境,執(zhí)行該指令并返回結(jié)果 414,然后繼續(xù)等待數(shù)據(jù)412;如果數(shù)據(jù)為非指令則判斷是否為來自應(yīng)用軟件的測 試信息415,如果否說明該數(shù)據(jù)為偽數(shù)據(jù)或數(shù)據(jù)格式有錯(cuò)誤,放棄對該數(shù)據(jù)的處理 回到等待信息步驟412;如果該數(shù)據(jù)為應(yīng)用軟件測試信息415,則打包應(yīng)用軟件測試信息并回傳416,該步驟可細(xì)分為數(shù)字終端對測試信息的打包,數(shù)字終端對打包
的測試信息通過通訊接口向測試主機(jī)發(fā)送,測試主機(jī)通過通訊模塊接收該測試信息
并解包,然后將解包后的測試信息保存到應(yīng)用軟件測試信息緩沖417。
權(quán)利要求
1、一種數(shù)字終端應(yīng)用軟件基于開放接口代理的測試方法,基于數(shù)字終端開發(fā)代理程序,并為代理程序設(shè)計(jì)開放式接口,支持?jǐn)?shù)字終端應(yīng)用軟件將測試相關(guān)信息通過代理程序傳送給測試主機(jī)的測試環(huán)境;其特征在于所述的數(shù)字終端至少包括,數(shù)字終端硬件以及運(yùn)行于數(shù)字終端上的系統(tǒng)軟件;所述的代理程序運(yùn)行在數(shù)字終端上,為實(shí)際被測試對象;所述的測試主機(jī)中的測試環(huán)境,通過代理程序接收并保存應(yīng)用軟件回傳信息,同時(shí)在其運(yùn)行過程中將利用該信息進(jìn)行測試;所述的測試方法主要包括以下步驟數(shù)字終端安裝應(yīng)用軟件;數(shù)字終端部署代理程序;主機(jī)端安裝測試環(huán)境;啟動(dòng)模塊并建立連接;人工編寫測試腳本;開始測試。
2、 根據(jù)權(quán)利要求1所述的數(shù)字終端應(yīng)用軟件基于開放接口代理的測試方法, 其特征在于所述的代理程序與不同的數(shù)字終端系統(tǒng)相對應(yīng)。
3、 根據(jù)權(quán)利要求1所述的數(shù)字終端應(yīng)用軟件基于開放接口代理的測試方法, 其特征在于所述的開放式接口在相同的數(shù)字終端系統(tǒng)中具有相同的數(shù)據(jù)接口格式,并且與應(yīng)用程序之間具有相同的通訊通道,支持對符合格式的應(yīng)用程序數(shù)據(jù)的 接收。
4、 根據(jù)權(quán)利要求1所述的數(shù)字終端應(yīng)用軟件基于開放接口代理的測試方法,其特征在于所述的數(shù)字終端系統(tǒng)包括與測試主機(jī)的測試環(huán)境進(jìn)行連接的通訊模塊。
5、 根據(jù)權(quán)利要求1所述的數(shù)字終端應(yīng)用軟件基于開放接口代理的測試方法,其特征在于所述的測試主機(jī)上設(shè)有支持應(yīng)用軟件回傳信息的測試環(huán)境,該測試環(huán) 境中包括數(shù)據(jù)存儲(chǔ)模塊。
6、 根據(jù)權(quán)利要求1所述的數(shù)字終端應(yīng)用軟件基于開放接口代理的測試方法, 其特征在于所述的測試主機(jī)上設(shè)有測試腳本解釋模塊,所述的數(shù)據(jù)存儲(chǔ)模塊與< 測 試腳本解釋模塊的信息相互傳遞。
7、 根據(jù)權(quán)利要求1所述的數(shù)字終端應(yīng)用軟件基于開放接口代理的測試方法, 其特征在于所述的測試環(huán)境支持對數(shù)字終端應(yīng)用程序回傳信息的處理,該處理能 力包括對回傳信息的保存,回傳信息的査看,以及在測試過程中對該信息的利用。
8、 根據(jù)權(quán)利要求7所述的數(shù)字終端應(yīng)用軟件基于開放接口代理的測試方法, 其特征在于所述的對回傳信息的利用,其方式為提供相應(yīng)的腳本函數(shù),函數(shù)功能 包括能夠?qū)崟r(shí)獲取當(dāng)前回傳的信息;能夠解析回傳信息的內(nèi)容到腳本變量; 能夠?qū)⒃撟兞啃畔⒂糜诒4?、判斷、控制操作?br> 全文摘要
一種數(shù)字終端應(yīng)用軟件基于開放接口代理的測試方法,基于數(shù)字終端開發(fā)代理程序,并為代理程序設(shè)計(jì)開放式接口,支持?jǐn)?shù)字終端應(yīng)用軟件將測試相關(guān)信息通過代理程序傳送給測試主機(jī)的測試環(huán)境;數(shù)字終端至少包括,數(shù)字終端硬件以及運(yùn)行于數(shù)字終端上的系統(tǒng)軟件;代理程序運(yùn)行在數(shù)字終端上,為實(shí)際被測試對象;測試主機(jī)中的測試環(huán)境,通過代理程序接收并保存應(yīng)用軟件回傳信息,同時(shí)在其運(yùn)行過程中將利用該信息進(jìn)行測試。測試方法主要包括以下步驟數(shù)字終端安裝應(yīng)用軟件;數(shù)字終端部署代理程序;主機(jī)端安裝測試環(huán)境;啟動(dòng)模塊并建立連接;人工編寫測試腳本;開始測試。該方法擴(kuò)展了對數(shù)字終端應(yīng)用軟件的測試能力,并提高了測試實(shí)施的靈活性。
文檔編號(hào)G06F11/36GK101609428SQ200910083740
公開日2009年12月23日 申請日期2009年5月8日 優(yōu)先權(quán)日2009年5月8日
發(fā)明者斌 劉, 劉志方, 治 汪, 高小鵬, 翔 龍 申請人:劉志方;高小鵬;汪 治;殷永峰
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1
鄂托克前旗| 宁津县| 新晃| 景洪市| 平昌县| 汪清县| 潮州市| 玛沁县| 霍林郭勒市| 永川市| 天津市| 邹平县| 丽江市| 淳化县| 河津市| 华容县| 海安县| 呼和浩特市| 拜城县| 郓城县| 察隅县| 大新县| 京山县| 承德市| 阳谷县| 富蕴县| 东乡县| 双峰县| 麻江县| 高淳县| 云南省| 永德县| 应城市| 广宁县| 临江市| 包头市| 鱼台县| 崇文区| 荥阳市| 龙里县| 延川县|