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