Avatar ·

如何测试包含私有方法、字段和内部类的Java类?

大家好!我是一名初级Java开发者,在编写单元测试时遇到了一个问题。我的项目中有一个`OrderProcessor`类,它包含私有方法、字段甚至一个内部类。当我尝试使用JUnit为其编写测试时,无法访问这些元素。以下是我类的简化示例: ```java public class OrderProcessor { private List orders = new ArrayList<>(); private static final double TAX_RATE = 0.2; public double processOrder(Order order) { validateOrder(order); double total = calculateTotal(order); orders.add(order); return total; } private void validateOrder(Order order) { if (order == null || order.getItems().isEmpty()) { throw new IllegalArgumentException("Invalid order"); } } private double calculateTotal(Order order) { double subtotal = order.getItems().stream() .mapToDouble(Item::getPrice)