亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

智能卡的測試方法

文檔序號:7629737閱讀:330來源:國知局
專利名稱:智能卡的測試方法
技術領域
本發(fā)明涉及一種數(shù)據(jù)處理方法,尤其涉及一種智能卡的測試方法。
背景技術
隨著計算機技術的發(fā)展,軟件的應用越來越廣泛,大到金融業(yè)、工商業(yè),小到家用電器、手機SIM卡,軟件的影響無處不在。軟件的功能也日益增加,造成軟件的復雜度越來越高,由軟件故障引發(fā)的故障也越來越多。美國空軍統(tǒng)計F/A-18飛控系統(tǒng)在20,000小時的實驗中,軟件故障為309次,硬件故障為271次,因此可見對于軟件的測試已成為一項非常重要的工作。
現(xiàn)有的軟件功能測試方法很多是通過捕獲回放機制生成腳本并執(zhí)行測試。捕獲的對象通常是GUI用戶界面上的元素。換言之就是測試人員手工操作被測軟件,完成一定的應用流程,測試工具記錄這一過程,生成測試腳本,可以自動回放腳本并檢查操作完成的情況。測試人員也可以編輯修改腳本來開發(fā)新的測試用例。代表性的測試工具如InterActive公司的WinRunner,以及IBM Rational的Robot。
具體到智能卡行業(yè),當廠商生產(chǎn)出用戶所需的智能卡后需要對智能卡進行測試,以保證智能卡能夠滿足用戶的需求。目前的測試模式通常是測試人員根據(jù)測試需求編寫測試腳本,對智能卡進行測試,但由于測試的覆蓋度不夠或測試人員與開發(fā)人員的習慣不同,測試通過的智能卡仍有可能在最終用戶的使用現(xiàn)場出現(xiàn)問題,這無疑給廠商和用戶都造成損失。特別是智能卡升級換代的時候,由于缺少有效的回歸測試方法,上述問題時有發(fā)生。

發(fā)明內(nèi)容
針對上述現(xiàn)有技術中的問題和不足,本發(fā)明的目的是提出一種智能卡的測試方法,能夠提高測試的覆蓋度,避免產(chǎn)品由于測試不足而產(chǎn)生故障。
為了解決上述問題,本發(fā)明提出一種智能卡的測試方法,包括(1)生成測試卡;(2)使用已有的智能卡與終端設備進行通信時,獲得發(fā)送給智能卡的指令和智能卡的返回數(shù)據(jù);(3)根據(jù)所述步驟(2)得到的指令和返回數(shù)據(jù),生成測試例,所述測試例包括測試時發(fā)送到測試卡的輸入以及測試卡的預期輸出;(4)將所述輸入發(fā)送到測試卡,并監(jiān)測測試卡的返回數(shù)據(jù),如果所述測試卡的返回數(shù)據(jù)與所述的預期輸出相同,則測試成功,如果不相同則測試失敗。
作為優(yōu)選,為了擴大測試范圍以確保測試的可靠性,所述測試例為多個輸入及輸入對應的預期輸出組成的序列。
作為優(yōu)選,所述步驟(1)具體為根據(jù)用戶所需的智能卡的文件結構、數(shù)據(jù)結構和相關密鑰,建立卡片結構,生成智能卡。
作為優(yōu)選,所述步驟(2)具體為使用已有的智能卡與終端設備進行通訊,并監(jiān)測智能卡與終端設備之間通信的數(shù)據(jù)流,并將數(shù)據(jù)流中的數(shù)據(jù)信號還原為發(fā)送到智能卡的指令和智能卡的返回數(shù)據(jù),這樣可以使測試更符合用戶的使用習慣,使測試的可靠性更強。
作為優(yōu)選,所述步驟(2)具體為使用已有的智能卡與終端設備進行通訊,并監(jiān)測智能卡的I/O端口獲得智能卡與終端設備之間通信的數(shù)據(jù)流,并將數(shù)據(jù)流中的數(shù)據(jù)信號還原為發(fā)送到智能卡的指令和智能卡的返回數(shù)據(jù)。由于智能卡的I/O端口數(shù)據(jù)流必須符合ISO7816規(guī)范,因此能夠將數(shù)據(jù)還原為發(fā)送到智能卡的指令和智能卡返回的數(shù)據(jù)。
作為優(yōu)選,步驟(2)具體為使用已有的智能卡與終端設備進行通訊,并監(jiān)測智能卡的I/O端口,進行周期采樣獲得智能卡與終端設備之間通信的數(shù)據(jù)流,并將數(shù)據(jù)流中的數(shù)據(jù)信號還原為發(fā)送到智能卡的指令和智能卡的返回數(shù)據(jù)。
作為優(yōu)選,當步驟(2)中所述的指令是需要另一步驟的輸出進行計算才能獲得時,所述步驟(3)中所述的輸入包含一變量,該變量代替需要對另一步驟的輸出計算后獲得的數(shù)據(jù);步驟(3)中所述的預期輸出用一個變量代替。
作為優(yōu)選,代替預期輸出的變量根據(jù)測試過程中前一條指令的執(zhí)行結果確定的輸入變量的值確定預期輸出。
作為優(yōu)選,當步驟(2)中所述的指令與其前后的指令都沒有關聯(lián)時,步驟(3)中所述的輸入為步驟(2)中所述的指令;步驟(3)中所述的預期輸出為步驟(2)中所述的返回數(shù)據(jù)。
本發(fā)明提出的智能卡的測試方法,使測試更符合最終用戶的使用習慣,同時能夠快速生成大量測試用例,并依據(jù)測試例序列對測試卡進行測試,避免由于測試覆蓋度不夠而造成測試通過的升級產(chǎn)品在用戶使用中出現(xiàn)問題。


圖1是智能卡I/O端口傳輸?shù)臄?shù)據(jù)幀的格式;圖2是本發(fā)明提出的智能卡的測試方法優(yōu)選實施例流程圖。
具體實施例方式
下面結合附圖對本發(fā)明作進一步的詳細描述。
本發(fā)明優(yōu)選實施例流程如圖所示,包括以下步驟(1)生成測試卡;(2)使用已有的智能卡與終端設備進行通信時,獲得發(fā)送給智能卡的指令和智能卡的返回數(shù)據(jù);(3)根據(jù)所述步驟(2)得到的指令和返回數(shù)據(jù),生成測試例,所述測試例包括測試時發(fā)送到測試卡的輸入以及測試卡的預期輸出;(4)將所述輸入發(fā)送到測試卡,并監(jiān)測測試卡的返回數(shù)據(jù),如果所述測試卡的返回數(shù)據(jù)與所述的預期輸出相同,則測試成功,如果不相同則測試失敗。
作為優(yōu)選,所述的步驟(3)中的實施例為多個輸入及輸入對應的預期輸出組成的序列,這樣能夠保證測試的覆蓋范圍更廣,避免經(jīng)過測試的卡在用戶的實際使用中出現(xiàn)故障。
作為優(yōu)選,所述步驟(1)具體為根據(jù)用戶所需的智能卡的文件結構、數(shù)據(jù)結構和相關密鑰,建立卡片結構,生成智能卡,這樣生成的智能卡結構更符合用戶的需求,生成測試卡的方式有很多種,在此不一一說明。
作為優(yōu)選,所述步驟(2)具體為使用已有的智能卡與終端設備通信(例如可以到用戶的使用現(xiàn)場),并監(jiān)測智能卡與終端設備之間通信的數(shù)據(jù)流,將數(shù)據(jù)流中的數(shù)據(jù)信號還原為發(fā)送到智能卡的指令和智能卡的返回碼或返回值。
作為優(yōu)選,所述步驟(2)中可以通過監(jiān)測智能卡的I/O端口,并進行周期采樣,以獲得智能卡與終端設備之間通信的數(shù)據(jù)流,并將數(shù)據(jù)流中的數(shù)據(jù)信號還原為發(fā)送到智能卡的指令和智能卡的返回數(shù)據(jù)。智能卡對每條輸入的指令都應有返回碼,有些還具有返回值。接觸式智能卡通常有VCC、GND、CLK、I/O、RST等觸點,數(shù)據(jù)通過I/O(輸入/輸出端口)在終端和智能卡之間以異步半雙工方式進行雙向傳送,I/O管腳的數(shù)據(jù)傳輸符合ISO7816規(guī)范的要求,因此可以對I/O管腳進行信號采集,并將信號還原,就可以得到指令和相應數(shù)據(jù),包括從設備發(fā)送到卡片的指令、數(shù)據(jù)以及卡片的應答。按照ISO7816規(guī)范,終端向智能卡提供一個用作數(shù)據(jù)交換的時序控制時鐘信號,數(shù)據(jù)在I/O上傳輸?shù)淖址麕母袷饺鐖D1所示,是由一個字符由10個連續(xù)位組成,其中包括·1個低電平狀態(tài)的起始位;·組成數(shù)據(jù)字節(jié)的8個數(shù)據(jù)位;·一個奇偶校驗位。
在I/O上使用的位持續(xù)時間被定義為一個基本時間單元,稱為etu。起始位由接收端通過對I/O周期采樣測得,采樣時間應小于0.2etu。校驗位的用途一個字符中的邏輯‘1’位的數(shù)目必須是偶數(shù),8個數(shù)據(jù)位和奇偶校驗位自身均作為校驗計算位,但起始位不作校驗計算。校驗不通過,則該數(shù)據(jù)幀是錯誤數(shù)據(jù),直接丟棄此數(shù)據(jù)。
作為優(yōu)選,所述步驟(2)中可以監(jiān)測智能卡I/O端口的數(shù)據(jù)流,通過周期采樣獲得智能卡與終端設備之間通信的數(shù)據(jù)流,將數(shù)據(jù)流中的數(shù)據(jù)信號還原為發(fā)送到智能卡的指令和智能卡的返回數(shù)據(jù)。
通過上述方法獲得的發(fā)送到智能卡的指令和智能卡的返回數(shù)據(jù),是用戶在實際使用中的指令和返回數(shù)據(jù),將指令和返回數(shù)據(jù)作為測試例對測試卡進行測試,相比較現(xiàn)有技術中完全有測試人員編寫測試腳本對測試卡進行的方式,可以確保測試過程更加接近用戶的使用習慣,測試的可靠性更強。在此需要說明,除監(jiān)測智能卡I/O端口外,獲得智能卡與終端設備間數(shù)據(jù)流的方法有很多種,在此不一一說明。
其中,發(fā)送到智能卡的指令兩類,一類是指令與其前后的指令都沒有關聯(lián),另一類指令需要把上一條指令的返回值或部分返回值加以計算,把計算結果作為這次指令要發(fā)送的數(shù)據(jù)或部分數(shù)據(jù)。
對于第一類指令可以直接作為測試用例中的輸入,返回碼、返回值作為期望輸出。因此,步驟(3)中所述的輸入為步驟(2)中所述的指令;步驟(3)中所述的期望輸出為步驟(2)中所述的返回數(shù)據(jù)。
對于第二類指令,轉化為測試用例時輸入和期望輸出需要用變量代替。因此,步驟(3)中所述的輸入包含一變量,所述的預期輸出為一變量;只有在測試過程中才能依據(jù)前一條指令的執(zhí)行結果確定變量的值,進而判斷卡片返回值是否正確。
我們以外部認證為例說明第二類指令的處理過程,包括以下步驟(A)設備發(fā)送取隨機數(shù)指令到卡片,取得8字節(jié)隨機數(shù)rnd1;(B)設備用相應的密鑰對rnd1進行des加密運算,產(chǎn)生鑒別數(shù)據(jù)d1;(C)設備向卡片發(fā)出外部認證命令,送d1到卡內(nèi);(D)卡片收到d1后,用卡內(nèi)相應密鑰對d1進行des解密運算,產(chǎn)生8字節(jié)鑒別數(shù)據(jù)d2。卡片比較rnd1和d2,若一致則表示認證通過,否則認證失敗。其中,設備發(fā)送取隨機數(shù)指令0084000008卡片返回值de3b0cf15367c503卡片返回碼9000進行加密運算后,設備發(fā)送外部認證指令00820000080f7d7fe835e6370c卡片返回值無卡片返回碼9000轉化為測試用例的過程為將0084000008作為期望輸入;de3b0cf15367c503是隨機數(shù),不能用作期望輸出,用變量rnd1代替;9000表示取隨機數(shù)執(zhí)行成功,作為期望輸出;00820000080f7d7fe835e6370c中的0f7d7fe835e6370c是對rnd1進行des加密計算的結果,用變量d1代替,把0082000008+d1作為期望輸入;9000表示外部認證執(zhí)行成功,作為期望輸出。
以上對本發(fā)明的具體實施方式
進行了詳細的解說。對于本技術領域的一般技術人員來說,在不背離本發(fā)明所述方法的精神和權利要求范圍的情況下對它進行的各種顯而易見的改變都在本發(fā)明的保護范圍之內(nèi)。
權利要求
1.一種智能卡的測試方法,其特征在于,所述方法包括以下步驟(1)生成測試卡;(2)使用已有的智能卡與終端設備進行通信,獲得發(fā)送給智能卡的指令和智能卡的返回數(shù)據(jù);(3)根據(jù)所述步驟(2)得到的指令和返回數(shù)據(jù),生成測試例,所述測試例包括測試時發(fā)送到測試卡的輸入以及測試卡的預期輸出;(4)將所述輸入發(fā)送到測試卡,并監(jiān)測測試卡的返回數(shù)據(jù),如果所述測試卡的返回數(shù)據(jù)與所述的預期輸出相同,則測試成功,如果不相同則測試失敗。
2.根據(jù)權利要求1所述的智能卡的測試方法,所述測試例為多個輸入及輸入對應的預期輸出組成的序列。
3.根據(jù)權利要求1或2所述的智能卡的測試方法,其特征在于,所述步驟(1)具體為根據(jù)用戶所需的智能卡的文件結構、數(shù)據(jù)結構和相關密鑰,建立卡片結構,生成智能卡。
4.根據(jù)權利要求1或2所述的智能卡的測試方法,其特征在于,所述步驟(2)具體為使用已有的智能卡與終端設備進行通訊,并監(jiān)測智能卡與終端設備之間通信的數(shù)據(jù)流,并將數(shù)據(jù)流中的數(shù)據(jù)信號還原為發(fā)送到智能卡的指令和智能卡的返回數(shù)據(jù)。
5.根據(jù)權利要求1或2所述的智能卡的測試方法,其特征在于,所述步驟(2)具體為使用已有的智能卡與終端設備進行通訊,并監(jiān)測智能卡的I/O端口獲得智能卡與終端設備之間通信的數(shù)據(jù)流,并將數(shù)據(jù)流中的數(shù)據(jù)信號還原為發(fā)送到智能卡的指令和智能卡的返回數(shù)據(jù)。
6.根據(jù)權利要求1或2所述的,智能卡的測試方法,其特征在于,所述步驟(2)具體為使用已有的智能卡與終端設備進行通訊,并監(jiān)測智能卡的I/O端口,進行周期采樣獲得智能卡與終端設備之間通信的數(shù)據(jù)流,將數(shù)據(jù)流中的數(shù)據(jù)信號還原為發(fā)送到智能卡的指令和智能卡的返回數(shù)據(jù)。
7.根據(jù)權利要求1或2所述的智能卡的測試方法,其特征在于,當步驟(2)中所述的指令與其前后的指令都沒有關聯(lián)時,步驟(3)中所述的輸入為步驟(2)中所述的指令;步驟(3)中所述的期望輸出為步驟(2)中所述的返回數(shù)據(jù)。
8.根據(jù)權利要求1或2所述的智能卡的測試方法,其特征在于,當步驟(2)中所述的指令是需要另一步驟的輸出進行計算才能獲得時,所述步驟(3)中所述的輸入包含一變量,該變量代替需要對另一步驟的輸出計算后獲得的數(shù)據(jù);步驟(3)中所述的預期輸出用一個變量代替。
9.根據(jù)權利要求8所述的智能卡的測試方法,其特征在于,所述代替預期輸出的變量根據(jù)測試過程中前一條指令的執(zhí)行結果確定的輸入變量的值確定預期輸出。
全文摘要
本發(fā)明公開了一種智能卡的測試方法,針對現(xiàn)有智能卡測試方法中會出現(xiàn)產(chǎn)品由于測試不足而產(chǎn)生故障提出一種方法,包括(1)生成測試卡;(2)使用已有的智能卡與終端設備進行通信,獲得發(fā)送給智能卡的指令和智能卡的返回數(shù)據(jù);;(3)根據(jù)所述步驟(2)得到的指令和返回數(shù)據(jù),生成測試例;(4)將所述輸入發(fā)送到測試卡,并監(jiān)測測試卡的返回數(shù)據(jù),如果所述測試卡的返回數(shù)據(jù)與所述的預期輸出相同,則測試成功,如果不相同則測試失敗。本發(fā)明提出的智能卡的測試方法,使測試更符合最終用戶的使用習慣,同時能夠避免由于測試覆蓋度不夠而造成測試通過的升級產(chǎn)品在用戶使用中出現(xiàn)問題。
文檔編號H04B17/00GK1791258SQ200510135180
公開日2006年6月21日 申請日期2005年12月29日 優(yōu)先權日2005年12月29日
發(fā)明者景濤 申請人:北京握奇數(shù)據(jù)系統(tǒng)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1