Tôi đang gặp sự cố khi chế nhạo phương thức UrlEncode.encode bên trong phương thức tĩnh.chế nhạo UrlEncoder theo phương thức tĩnh
MyEncodeClass.java có phương pháp này
public static myEncode(String s) {
UrlEncoder.encode(s, "utf-8");
}
Tôi muốn buộc ném một ngoại lệ khi phương pháp UrlEncode.encode được gọi.
@Test(expect = UnsupportedEncodingException.class)
public void myTest() {
PowerMockito.mockStatic(URLEncoder.class);
when(URLEncoder.encode("aa", "utf-8")).thenThrow(UnsupportedEncodingException.class);
MyEncodeClass.myEncode("aa");
}
nhưng tôi luôn luôn nhận được ngoại lệ sau đây
Caused by: java.lang.NoSuchMethodError: org.mockito.mock.MockCreationSettings.isUsingConstructor()Z
Trong khi tôi tôn trọng sự cống hiến của bạn trong kiểm tra của bạn, bạn đang cố gắng thử một UnsupportedEncodingException trong trường hợp A) Một lỗi chính tả dev hoặc B) UTF-8 không còn được hỗ trợ? Nó sẽ không dễ dàng hơn để đăng nhập một lỗi nghiêm trọng và thoát khỏi hệ thống? (Xin lỗi, tôi thực sự không thể giúp bạn với vấn đề của bạn, vì tôi không làm phức tạp hơn nhiều so với EasyMock. May mắn thay) –
vâng tôi biết đây là một trường hợp rất xoắn. Nếu quá nhiều tôi có thể bỏ qua nó với một lời giải thích tại sao. – hurric
Không, tất cả đều tốt, hãy làm những gì bạn muốn làm, nhưng tôi phải tận dụng cơ hội để đùa giỡn với bạn. Chúc may mắn với vấn đề của bạn. –