嵌入式JavaPOS系統(tǒng)測試的設(shè)計與實現(xiàn)
摘要:UnifiedPOS和其衍生的JavaPOS標準,對收款機的硬件設(shè)備進行了規(guī)范。利用JUnit單元測試工具對嵌入式JavaPOS系統(tǒng)的設(shè)備接口進行了白盒測試,分析了市場主流收款機的不足,給出了嵌入式收款機的測試方法和測試用例POSDouble。測試結(jié)果表明,嵌入式JavaPOS系統(tǒng)成功地引入了JavaPOS規(guī)范,規(guī)范了各種外圍設(shè)備的接口定義,由于采用Java語言,解決了移植性、動態(tài)加載、安全性等很多方面的問題。
關(guān)鍵詞:嵌入式系統(tǒng);稅控收款機;JavaPOS;ARM
0 引 言
隨著嵌入式計算機應(yīng)用技術(shù)的發(fā)展,嵌入式技術(shù)已經(jīng)廣泛應(yīng)用到現(xiàn)代生活的方方面面。在零售系統(tǒng)方面,零售收款機是嵌入式應(yīng)用的一個重要領(lǐng)域。目前,市場上的收款機大體上可分為三類:第一類是基于PC和DOS/Windows體系的,這類產(chǎn)品目前占市場絕大多數(shù),屬于高端產(chǎn)品,價格太高,適合大的商場和銷售系統(tǒng);第二類是基于單片機(51系列居多)的,基本上沒有操作系統(tǒng)的支持,功能也較弱,主要用于餐飲娛樂,占據(jù)中低檔市場;第三類是正在快速發(fā)展的基于嵌入式芯片和嵌入式操作系統(tǒng)的,價格較低,功能較強,適用于中高檔市場,這類產(chǎn)品將是未來市場的主體。以上三類收款機的開發(fā)平臺形形色色,基本上是每一款就是一種開發(fā)平臺,沒有統(tǒng)一的規(guī)范、開發(fā)和調(diào)試平臺。系統(tǒng)升級和移植困難,尤其對于一體機等需要第三方開發(fā)軟件的應(yīng)用,造成開發(fā)上更大的難度。虛擬機VM的改進,Java應(yīng)用的速度已經(jīng)不是太大的問題。
1 JUnit分析與應(yīng)用
MUnit是JUnit的子集,使用方法類似JUnit,在這里只對JUnit做分析。JUnit是一個開源的Java測試框架,它是XUnit測試體系架構(gòu)的一種實現(xiàn)。在JUnit單元測試框架的設(shè)計時,設(shè)定了三個總體目標,第一個是簡化測試的編寫,這種簡化包括測試框架的學(xué)習和實際測試單元的編寫;第二個是使測試單元保持持久性;第三個則是可以利用既有的測試編寫相關(guān)的測試。所以這些目的也是為什么使用模式的根本原因。JUnit的設(shè)計使用以Patterns Generate Architectures的方式來架構(gòu)系統(tǒng)。其設(shè)計思想是通過從零開始應(yīng)用設(shè)計模式,然后一個接一個,直至獲得最終合適的系統(tǒng)架構(gòu)。JUnit是一個測試Framework,測試人員只需開發(fā)測試用例,然后把這些測試用例(TestCase)組成請求(可能是一個或者多個),發(fā)送到JUnit,然后由JUnit執(zhí)行,最后報告詳細測試結(jié)果。其中,包括執(zhí)行的時間、錯誤方法、錯誤位置等。這樣測試用例的開發(fā)人員就不需知道JUnit內(nèi)部的細節(jié),只要符合它定義的請求格式即可。從JUnit的角度考慮,它并不需要知道請求TestCase的具體操作信息,僅把它當作一種命令來執(zhí)行,然后把執(zhí)行測試結(jié)果發(fā)給測試人員。這樣就使JUnit框架和TestCase的開發(fā)人員獨立開來,使得請求的一方不必知道接收請求一方的詳細信息,更不必知道是怎樣被接收,以及怎樣被執(zhí)行的,實現(xiàn)系統(tǒng)的松耦合。
評論