|
|
|
Как выбросить исключение в junit
|
|||
|---|---|---|---|
|
#18+
Есть код, его надо покрыть тестами. Некоторые участки не понятно как до них достать. В основном это try catch с страшными эксепшенами. Нарпимер: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Я понятия не имею как естественно сгенерировать такое исключение, поэтому хочется просто его бросить и проверить что при его появлении все сработало как надо. Используется также mock, только я не сильно силен в нем ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2012, 06:39:32 |
|
||
|
Как выбросить исключение в junit
|
|||
|---|---|---|---|
|
#18+
recvezitor, Mockito фреймворк - очень удобен для таких тестов. вот тут очень простые и доступные примеры: http://mockito.googlecode.com/svn/branches/1.5/javadoc/org/mockito/Mockito.html погуглите "Mockito" и "PowerMock" найдете кучу всякого, полезного... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2012, 11:39:17 |
|
||
|
Как выбросить исключение в junit
|
|||
|---|---|---|---|
|
#18+
recvezitor, А что именно нужно то ? пробросить ? можно обернуть в Runtime throw new RuntimeException(e) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2012, 11:50:11 |
|
||
|
Как выбросить исключение в junit
|
|||
|---|---|---|---|
|
#18+
recvezitor Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Ты не то тестируешь. По сути тебе надо сделать модульный тест для message.writeTo(stream) и объявить его вызывающим WebServiceMessageSomeException или IOException. Остальное сделает сам JUnit. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2012, 12:53:58 |
|
||
|
Как выбросить исключение в junit
|
|||
|---|---|---|---|
|
#18+
maytonrecvezitor Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Ты не то тестируешь. По сути тебе надо сделать модульный тест для message.writeTo(stream) и объявить его вызывающим WebServiceMessageSomeException или IOException. Остальное сделает сам JUnit. message.writeTo(stream); - это не мой метод, это метод типа проверенный. Мне нужно убедиться что когда отловилось исключение, то все остальное клево. Почему возникло эта задача, по идее стоит try и все отлавливает, но на это место ругается cobertura и портит всю статистику. Вот мне именно нужно сделать как то throw new IOException в моем тесте, но так чтобы оно бросилось в блоке try Пока не читал подробно про mockito, может там че есть ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2012, 14:51:03 |
|
||
|
Как выбросить исключение в junit
|
|||
|---|---|---|---|
|
#18+
recvezitor, эти строки решат твою проблему. мокито рулит! Код: java 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2012, 17:41:35 |
|
||
|
Как выбросить исключение в junit
|
|||
|---|---|---|---|
|
#18+
Nisrecvezitor, эти строки решат твою проблему. мокито рулит! Код: java 1. 2. 3. 4. 5. 6. Мерси, все здорово работает, но только на не private методах. Как заставить мокито бросать эксепшен чтобы он бросался в private методах. Сейчас мне пришлось поменять облдасть видимости на protected и вызывать метод на пряую, а если вызывать метод в методе, то исключение не генерируется: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2012, 03:13:14 |
|
||
|
Как выбросить исключение в junit
|
|||
|---|---|---|---|
|
#18+
recvezitor, На сколько я понимаю, private методы не должны вызываться на прямую из junit-а. Вы должны протестировать не private методы, которые в свою очередь вызывают приватные методы. если мок на WebServiceMessage message корректно передаётся в приватную методу, но с мокито должен работать безотказно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2012, 17:26:23 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=37708149&tid=2132284]: |
0ms |
get settings: |
18ms |
get forum list: |
25ms |
check forum access: |
6ms |
check topic access: |
6ms |
track hit: |
70ms |
get topic data: |
19ms |
get forum data: |
5ms |
get page messages: |
78ms |
get tp. blocked users: |
2ms |
| others: | 385ms |
| total: | 614ms |

| 0 / 0 |
