ICCSim Dev
用於編寫在 ICCSim 卡上執行的自定義測試指令碼的開發工具。TMat 用於執行既有的品牌測試,而 Dev 可自由改寫卡片側的行為與資料,開發異常卡片與用於異常測試的設定。
要解決的驗證課題
可自行準備品牌標準測試套件無法生成的卡片條件。透過刻意製作缺少必備標籤、格式非法等異常卡片,確認 POS 與 ATM 一側的行為。
可開發的範圍
支援沿用既有指令碼、克隆實體卡,以及從零新建。
| 觀察點 | 覆蓋範圍 |
|---|---|
| 指令碼建立方式 | 匯入既有 ICCSim 指令碼/讀取實體測試卡並將克隆做成模板/從 Card Configuration 與 Building Block 新建 |
| 可編輯範圍 | 可修改指令碼中任意的 EMV 標籤或位元組 |
| 可製作的異常卡片示例 | 缺少必備標籤/標籤長度與格式非法/不支援的 AID/異常的 AIP、AFL 與 CVM List/PAN 與 Track 2 不一致/已過期/強制聯機/離線拒絕 / AAC/ARQC/TC分岐 / 非法 Status Word/SDA 證書異常 |
| 輔助功能 | Tag Change Facility / DES Calculator / Certificate Generator / Card Data Capture / Cloning |
| 專案結構 | Test Scripts(行為場景)/Components(公共模組)/Data Tables(標籤、值與加密資料)/Output Directory |
| 輸出 | 將建立的指令碼下載到 ICCSim 卡,用於 POS 與 ATM 測試 |
| 介面 | 接觸/非接觸/雙介面 |
支援的終端與環境
所製作的卡片用於開發、除錯、QA 與迴歸測試,可向 POS 與 ATM 實機提示自定義設定。
正式認證由 ICCSimTMat(認證套件)實施。本工具用於開發階段的構建與除錯。
認證方面的限制
用 ICCSimDev 製作的自定義指令碼,對開發、除錯、QA 與迴歸測試有效,但僅憑製作並不會成為品牌認證的測試用例。正式認證須使用物件品牌批准的 TMat 測試套件與規定的測試用例。
若重新生成證書,由於使用的是自定義測試金鑰而非通常的品牌 CA 金鑰,需要將對應的新 CA 公鑰載入測試終端。用 ICCSimDev 製作的自定義證書,不能直接在市面上的生產終端透過驗證,只能在終端側也改為專用測試金鑰設定的封閉開發環境中使用。
ICC Solutions 產品的區分使用
通用的 ICCSimTMat、Fiserv 專用套件與 Worldpay 專用 VIABLE,界限清晰。
| 比較專案 | TMat | TMat for Fiserv | ICCSimDev | Merchant Cards | VIABLE |
|---|---|---|---|---|---|
| 通用/專用 | 通用 | Fiserv 專用 | 通用開發 | 通用簡易卡片 | Worldpay 專用 |
| 主要物件 | 廠商、測試室與收單機構 | Fiserv 商戶與 ISV | EMV 開發者 | 門店、維護與培訓 | Worldpay 商戶與 ISV |
| Level 2 | 有對應套件 | 主要為 L3 | 自行開發的測試 | 不可 | 主要為 L3 |
| Level 3 | 支援 | 支援 | 不用於正式認證 | 不可 | 支援 |
| 主機聯動 | 外部主機或模擬器 | 與 Fiserv Portal 聯動 | 不在用途範圍內 | 需要測試主機 | 內建閉環 |
| 異常測試 | 品牌用例範圍 | Fiserv 用例範圍 | 自由度高 | 有限 | Worldpay 用例範圍 |
| 自動分析 | 有 | 有 | 以指令碼開發為主 | 無 | 有 |
| 認證提交 | 取決於套件 | 面向 Fiserv | 原則上不可 | 不可 | 面向 Worldpay |
| PaytestProbe | 支援 | 支援 | 以生成的卡片為主 | 不支援 | 支援 |
從工序看產品的位置
發卡側的 Barnes 產品與 ICC Solutions 產品並非競爭關係,而是工序不同。
| 工序 | 產品 | 目的 |
|---|---|---|
| 發卡側 | Barnes CPT | 檢查卡內資料、證書、EMV 標籤與磁條資料 |
| 卡片與終端開發 | ICCSimDev | 開發異常卡片、自定義卡片與異常測試 |
| 終端核心 | ICCSimTMat Level 2 | 驗證 EMV 核心與 Reader Application |
| 成品 POS 與 ATM | ICCSimTMat Level 3 | 品牌整合測試 |
| 特定收單機構 | TMat for Fiserv / VIABLE | Fiserv/Worldpay 的認證工序 |
| 門店部署之後 | Merchant Test Cards | 簡易確認、迴歸測試與員工培訓 |
提案前需要確認的專案
在確定設定之前,我們會詢問以下各點。
| 分類 | 確認事項 |
|---|---|
| 測試範圍 | 覆蓋接觸、非接觸與磁條到何種程度/Level 2、Level 3 還是兩者 |
| 物件 | 屬於 POS、ATM、Tap to Phone、Transit 還是 Fuel/物件品牌與測試套件的準確版本 |
| 連線物件 | 連線到 Fiserv、Worldpay 還是其他收單機構 |
| 方式 | 採用實體 ICCSim 卡方式還是 PaytestProbe 方式/是否包含回退測試用的實體卡/是否需要 Host Simulator |
| 授權與維護 | 第二年起的維護費用與停止續費時的處理/測試卡的有效期/品牌認證套件與開發用指令碼的授權區分 |
| 自動化 | Auto API 與機器人聯動的 API 規格/ICCSimDev 生成的卡片與 TMat 的相容性 |
| 國內要求 | 是否提供面向本地收單機構或支付網路的專用 L3 測試計畫 |
支援國際品牌的 L3 套件,與本地收單機構或支付網路是否將該結果視為認證,是兩個不同的問題。我們會先確認品牌、收單機構、支付閘道與終端組態,再確定產品組合。
選型指南 — ICC 產品中哪一款合適
ICC 的產品按目的區分。各自的定位見L3 層次。
| 產品 | 如果是這樣的需求 |
|---|---|
| ICCSimTMat | 正式透過品牌認證(L2/L3)。希望用認證套件管理並執行驗收測試 |
| ICCSimTMat for Fiserv | 經由 Fiserv 的商戶與 ISV 認證。希望透過門戶直接上傳測試日誌 |
| ★ ICCSimDev(本頁) | 希望自行製作卡片響應與異常條件(用於異常測試與除錯) |
| VIABLE | 希望在實體門店設定(閉環)下統一完成商戶與 ISV 的驗收測試 |
| Merchant Test Cards | 希望用實體卡確認終端設定、進行迴歸與店員培訓 |
| 測試與認證服務 | 不自行執行測試,希望委託至取得認證 |
匯入用途
- 新開發專案中 L3 驗證的啟動
- 設定變更與更新後的迴歸
- 面向取得認證的前期全面確認
與認證的關係
這是用於開發與除錯的工具。正式的品牌認證由 ICCSimTMat 的認證套件實施。
