Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想为一些需要用户输入的方法编写一个 JUnit TestCase。这是我的方法的一部分:
public void createCart() { ... myCart= new Cart(); s = console.readLine("Enter your first name: "); myCart.setFirst(s); ... }
我如何为上面的内容编写一个 Junit 测试用例,即如何在测试用例中提供名字。
由于您使用java.io.Console的似乎没有实现任何有用的接口,因此您唯一的方法是将它弄混或包装它。
java.io.Console
看看像 EasyMock 或 Mockito 这样的模型 Java 框架。它们允许你模拟任何 API,即让 API 返回你想要的值。
替代解决方案不是Console直接使用,而是创建具有 2 种实现的接口:一种基于Console生产,另一种用于测试。
Console