Avatar ·

Como testar uma classe com métodos privados, campos e classes internas em Java?

Olá a todos! Sou um desenvolvedor Java iniciante e tive um problema ao escrever testes unitários. No meu projeto, há uma classe `OrderProcessor` que contém métodos privados, campos e até uma classe interna. Quando tento escrever testes para ela usando JUnit, não consigo acessar esses elementos. Aqui está um exemplo simplificado da minha classe: ```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() .mapTo