Nếu tôi có một lớp học với phương thức @PostConstruct, làm thế nào tôi có thể kiểm tra hàm tạo của nó và do đó phương thức @PostConstruct của nó bằng cách sử dụng JUnit và Spring? Tôi không thể đơn giản sử dụng ClassName mới (param, param) bởi vì sau đó nó không sử dụng Spring - phương thức @PostConstruct không bị sa thải.Làm thế nào để kiểm tra hàm tạo của một lớp có phương thức @PostConstruct bằng cách sử dụng Spring?
Tôi có thiếu điều gì đó hiển nhiên ở đây không?
public class Connection {
private String x1;
private String x2;
public Connection(String x1, String x2) {
this.x1 = x1;
this.x2 = x2;
}
@PostConstruct
public void init() {
x1 = "arf arf arf"
}
}
@Test
public void test() {
Connection c = new Connection("dog", "ruff");
assertEquals("arf arf arf", c.getX1();
}
Tôi có thứ gì đó tương tự (mặc dù hơi phức tạp hơn) và phương pháp @PostConstruct không bị trúng.
Tôi hiểu rằng, như tôi đã nói. Nhưng làm thế nào để kiểm tra nhiều hoán vị của constructor này bên trong một lớp test? Tôi không nói rõ về câu hỏi của mình? – AHungerArtist
Tôi muốn năm trường hợp thử nghiệm cho hàm tạo của lớp này. Có thực sự không có cách nào tốt hơn để có một bối cảnh ứng dụng với năm đậu như vậy và tải nó lên? – AHungerArtist
Trong thời gian thực nếu có 5 cách có thể để tiêm lớp của bạn thì sợ phải nói rằng bạn phải tạo 5 định nghĩa bean trong trường hợp đó. –