Java卡单元测试

AO.*_*AO. 14 unit-testing javacard

我想在某种模拟/模拟环境中运行我的Java Card应用程序,以便能够对它们运行JUnit(或任何其他单元测试框架)测试.有谁知道这样的工具?我更喜欢一些开源项目.

小智 11

我们的团队专门为此目的开发了jCardSim:开源JavaCard模拟器 - http://code.google.com/p/jcardsim/.

//1. create simulator
Simulator simulator = new Simulator();
//2. install applet
simulator.installApplet(appletAID, HelloWorldApplet.class);
//3. select applet
simulator.selectApplet(appletAID);
//4. send apdu
ResponseAPDU response = simulator.transmitCommand(new CommandAPDU(0x01, 0x01, 0x00,   0x00));
//5. check response
assertEquals(0x9000, response.getSW());
Run Code Online (Sandbox Code Playgroud)

单元测试示例:http://code.google.com/p/jcardsim/source/browse/trunk/src/test/java/com/licel/jcardsim/base/SimulatorTest.java

它完全模拟真正的恩智浦芯片JavaCard.试试吧.欢迎提出任何意见和建议!如果您分享项目链接,我们将不胜感激!


小智 0

不了解 Java Card,但是,乍一看,它似乎与任何其他 JavaME 平台没有太大区别(我所说的不同是指将它们与 J2SE 等进行比较)。因此,您可以使用任何普通的(例如JUnit测试环境)和Eclipse / Netbeans来使开发变得更容易。您可能需要powermock来模拟一些特定于平台的东西。希望这可以帮助。

Netbeans 的一个提示:您可以考虑单独的项目进行测试(这取决于您的应用程序项目)。在这种情况下,您可以使用最新 Java 玩具的功能对您的 UT 进行编码。