<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 測試測量 > 設計應用 > 智能卡的自動(dòng)化測試平臺設計

智能卡的自動(dòng)化測試平臺設計

作者: 時(shí)間:2012-02-29 來(lái)源:網(wǎng)絡(luò ) 收藏

PC/SC規范包含大量Scard為前綴的API,可以在 winscard.h中找到其原型。應用程序需要包含win—scard.1ib,所有函數的正常返回值都是SCARD—S—SUCCESS,在這些函數中常用的只有幾個(gè)。與的訪(fǎng)問(wèn)流程如下:

(1)初始化函數中調用SCardEstablishContext,建立資源管理器的上下文,獲得設備的連接句柄,若返回SCARD— S— SUCCESS,則調用成功;調用ScardLis—tReaders獲得系統中安裝的讀卡器列表,調用成功則獲取聯(lián)機的讀卡器名字。
(2)在響應函數中調用ScardConnect與卡片建立連接,此時(shí)能與卡片通信。
(3)與卡片連接后通過(guò)調用SCardTransmit來(lái)發(fā)送命令,得到由卡片返回的數據。
(4)卡片處于連接狀態(tài)時(shí),可以調用SCardRecon—nect函數使卡片復位。
(5)完成了與卡片的命令發(fā)收后,調用SCardDis—connect函數斷開(kāi)與的連接。
項目已經(jīng)實(shí)現以上功能的編程接口,而且利用類(lèi)的方法進(jìn)行了封裝。


  3 平臺的使用

  3.1 流程

  腳本的制定還是使用人工方式,人員通過(guò)測試平臺完成測試。測試不需要人工干預,縮短了測試時(shí)間。因而測試過(guò)程采用人工測試和測試相結合的方法進(jìn)行。

  用戶(hù)可以編寫(xiě)測試腳本,快速發(fā)送測試命令和收集測試數據,可以單次執行或者循環(huán)執行,當滿(mǎn)足終止條件時(shí),腳本執行結束,生成測試報告。圖5為測試流程圖。

  3.2 功能測試

  測試平臺能夠以APDU為基本單元完成針對的功能測試,下面分別對其進(jìn)行介紹。

  3.2.1 測試基本單元

  測試平臺與智能卡通信的基本單元是APDUL9 。應用層以APDU為單位進(jìn)行有序的數據交換,應用層交換的每一步都以命令應答對組成。APDU的命令應答對由以下部分組成:命令APDU包含一個(gè)必備的四字節頭(CLA,INS,P1,P2)和可選的命令體(Lc,Data,Le)。命令頭為命令的編碼,Lc為體內數據(data)長(cháng)度,Data為發(fā)送的數據,Le為應答APDU數據字段的最大字節數。應答APDU由可選長(cháng)度體和兩字節狀態(tài)字SW1一SW2組成。其中,體內的字節數由命令APDU 的Le指出。Data為卡片接受命令APDU后返回的數據。尾部狀態(tài)字指出卡的處理狀態(tài)。其中,61xx和9000為正常處理,6lxx的含義SW2指出仍然有效的應答字節數,9000代表正常處理。

  3.2.2 單元測試

測試流程圖

圖5 測試流程圖

  同樣,智能卡內部程序也是以APDU為單位實(shí)現的,因此單元測試的對象就是APDU。發(fā)送一個(gè)APDU給智能卡,通過(guò)智能卡內部程序執行完后返回狀態(tài)字,判斷執行結果的正確與否。命令之間存在著(zhù)相互依賴(lài)關(guān)系,因此命令之間通常要相互配合才能完成測試任務(wù)。

  3.2.3 集成測試

  集成測試主要是通過(guò)命令之問(wèn)有序地執行完成智能卡的功能測試,根據不同的測試需要可以對測試腳本進(jìn)行分類(lèi),例如FLASH 的讀/寫(xiě),加密模塊的測試等。按照需要整理好相應的測試腳本后就可以在測試平臺上運行,通過(guò)腳本與智能卡程序的互測,達到測試目的。測試平臺支持測試,所以可以在測試平臺上不間斷地執行測試腳本,測試人員不需要實(shí)時(shí)跟蹤,只需要關(guān)心最后的測試結果,通過(guò)測試結果可以發(fā)現問(wèn)題,解決問(wèn)題。

  4 結 語(yǔ)

  該系統已經(jīng)通過(guò)測試,并且得到初步驗證。由于針對智能卡的測試項很多,通常需要多種測試工具的軟件和硬件設備交互使用,測試人員要熟悉各種軟件工具,相應地降低了工作效率。如果能將各種工具軟件集成在一起,形成一個(gè)多功能的測試平臺,支持多種通信接口的讀卡器,支持多種腳本格式,那么這將是下一步的工作重點(diǎn)。


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: 智能卡 自動(dòng)化 測試

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>