Я использую Spring MVC-тестирование: в моем тестовом примере я передаю недопустимый объект Bar (возраст с нулевым значением). Выдается исключение MethodArgumentNotValidException, но оно вложено в исключение NestedServletException. Можно ли как-нибудь выбросить исключение MethodArgumentNotValidException из контроллера через существующий/пользовательский HandlerExceptionResolver, чтобы мой текущий тестовый пример checkHit2 прошел?
Контроллер:
@RequestMapping(value="/test", method = RequestMethod.POST, headers="Accept=application/json")
@ResponseBody
public Bar getTables(@Valid @RequestBody Bar id) {
return id;
}
Тестовый пример
@Before
public void setUp() {
mockMvc = standaloneSetup(excelFileUploader).setHandlerExceptionResolvers(new SimpleMappingExceptionResolver()).build();
}
@Test(expected=MethodArgumentNotValidException.class)
public void checkHit2() throws Exception {
Bar b = new Bar(0, "Sfd");
mockMvc.perform(
post("/excel/tablesDetail").contentType(
MediaType.APPLICATION_JSON).content(
TestUtil.convertObjectToJsonBytes(b)));
Бар
public class Bar {
@JsonProperty("age")
@Min(value =1)
private int age;
public Bar(int age, String name) {
super();
this.age = age;
this.name = name;
}
...
}
Вывод Junit
java.lang.Exception: Unexpected exception,
expected but
was
Подробнее здесь: https://stackoverflow.com/questions/216 ... t-testcase
Обработка MethodArgumentNotValidException в тестовом примере Junit? ⇐ JAVA
Программисты JAVA общаются здесь
-
Anonymous
1771592695
Anonymous
Я использую Spring MVC-тестирование: в моем тестовом примере я передаю недопустимый объект Bar (возраст с нулевым значением). Выдается исключение MethodArgumentNotValidException, но оно вложено в исключение NestedServletException. Можно ли как-нибудь выбросить исключение MethodArgumentNotValidException из контроллера через существующий/пользовательский HandlerExceptionResolver, чтобы мой текущий тестовый пример checkHit2 прошел?
[b]Контроллер:[/b]
@RequestMapping(value="/test", method = RequestMethod.POST, headers="Accept=application/json")
@ResponseBody
public Bar getTables(@Valid @RequestBody Bar id) {
return id;
}
[b]Тестовый пример[/b]
@Before
public void setUp() {
mockMvc = standaloneSetup(excelFileUploader).setHandlerExceptionResolvers(new SimpleMappingExceptionResolver()).build();
}
@Test(expected=MethodArgumentNotValidException.class)
public void checkHit2() throws Exception {
Bar b = new Bar(0, "Sfd");
mockMvc.perform(
post("/excel/tablesDetail").contentType(
MediaType.APPLICATION_JSON).content(
TestUtil.convertObjectToJsonBytes(b)));
[b]Бар[/b]
public class Bar {
@JsonProperty("age")
@Min(value =1)
private int age;
public Bar(int age, String name) {
super();
this.age = age;
this.name = name;
}
...
}
[b]Вывод Junit[/b]
java.lang.Exception: Unexpected exception,
expected but
was
Подробнее здесь: [url]https://stackoverflow.com/questions/21620964/handling-methodargumentnotvalidexception-in-junit-testcase[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия