22 / 22 / 4
Регистрация: 10.04.2011
Сообщений: 248
|
|
1 | |
Как вернуться в activity в тестах13.08.2013, 14:24. Показов 2190. Ответов 11
Метки нет (Все метки)
В тестах приложения, когда проверяю нажатия на кнопки открывается другая активити. Как вернуться назад?
И ещё вопрос, если над методом в тестах не поставить аннотацию @UiThreadTest, то ресурсы не возвращают кнопки и так далее из R.id.button , а внутри метода с аннотацией нет возможности использовать TouchUtil к примеру и подобные тестовые фичи
0
|
13.08.2013, 14:24 | |
Ответы с готовыми решениями:
11
Как из одного Activity перенести фотку в другое Activity? Как в Navigation Drawer Activity засунуть Activity? Как добавить cardview в activity с другой activity? Как вызвать Activity не из Activity? |
106 / 106 / 1
Регистрация: 09.04.2012
Сообщений: 655
|
|
13.08.2013, 14:29 | 2 |
0
|
22 / 22 / 4
Регистрация: 10.04.2011
Сообщений: 248
|
|
13.08.2013, 14:30 [ТС] | 3 |
кнопка назад переопределена и закрывает приложение, а как получить текущую активити в тестах, что бы убить?
0
|
106 / 106 / 1
Регистрация: 09.04.2012
Сообщений: 655
|
|
13.08.2013, 14:39 | 4 |
0
|
22 / 22 / 4
Регистрация: 10.04.2011
Сообщений: 248
|
|
13.08.2013, 14:40 [ТС] | 5 |
junit tests. Это понятно, что finish(), а как мне получить объект этой активити, что бы его вызвать
0
|
Android Developer
131 / 131 / 6
Регистрация: 05.07.2013
Сообщений: 205
|
||||||
13.08.2013, 14:46 | 6 | |||||
MonStar, так и получить:
0
|
22 / 22 / 4
Регистрация: 10.04.2011
Сообщений: 248
|
|
13.08.2013, 15:20 [ТС] | 7 |
ActivityInstrumentationTestCase2<LaunchActivity> к примеру тут getActivity() должен вернуть мне LaunchActivity, или ту в которой я в данный момент? мне кажется первое
0
|
Android Developer
131 / 131 / 6
Регистрация: 05.07.2013
Сообщений: 205
|
||||||
13.08.2013, 15:33 | 8 | |||||
MonStar, да LaunchActivity. Не сразу вник в суть вопроса. Что бы получить активное используйте ActivityMonitor:
1
|
22 / 22 / 4
Регистрация: 10.04.2011
Сообщений: 248
|
|
14.08.2013, 11:49 [ТС] | 9 |
спасибо, то что нужно
Добавлено через 20 часов 15 минут Проблема немного расширилась. Дело в том, что по клику открывается новая активити, а для текущей вызывается finish(). Можно ли перезапустить текущую для дальнейшего теста?
0
|
Android Developer
131 / 131 / 6
Регистрация: 05.07.2013
Сообщений: 205
|
|
14.08.2013, 12:24 | 10 |
MonStar, если логика программы предполагает следующую навигацию:
[startApp] start ActivityA -> use ActivityA (start next) -> finish ActivityA; start ActivityB -> use ActivityB (back) -> finish ActivityB [finishApp] то не к чему писать тесты для [startApp] start ActivityA -> use ActivityA (start next) -> finish ActivityA; start ActivityB -> use ActivityB (back) -> finish ActivityB; start ActivityA -> use ActivityA Если я не прав (или что-то не так понял) поправьте, но тесты направлены на тестирование логики работы приложения, а не создания новой (непредусмотренной возможностями) логики и её тестирования. Если вы хотите протестировать работу кнопки (стартующей следующее Activity), а потом ещё что-либо в тестируемой Activity (а не только что запущенной) просто напишите новый тест, это будет намного лучше перезапуска уже закрытой Activity.
0
|
22 / 22 / 4
Регистрация: 10.04.2011
Сообщений: 248
|
|
14.08.2013, 12:31 [ТС] | 11 |
Под новым тестом вы понимаете отдельный тестовый класс или новый метод для тестирования?
У меня три различных test метода, каждый из которых кликает на три различные кнопки, которые в свою очередь открывают другую активити и закрывают текущую. Т.е. логика предполагает, что пользователь может нажать любую из них и нужно это проверить. Я не очень знаком с тонкостями тестирования, при выполнении нового метода запускается ли активити заново?
0
|
Android Developer
131 / 131 / 6
Регистрация: 05.07.2013
Сообщений: 205
|
|||||||||||
14.08.2013, 13:28 | 12 | ||||||||||
MonStar, теперь всё понятно, хоть я тоже не силён в тестировании, но:
Новый метод не перезапускает Activity, оно создаётся при старте теста. В вашем случае, а именно до проверки работы очередной кнопы, вызывайте следующий код:
для любознательных
Исходник метода getActivity()
фактически он пересоздаёт Activity, это выглядит как её новый запуск, посему, если есть какие-либо настройки, то их необходимо будет провести заново.
1
|
14.08.2013, 13:28 | |
14.08.2013, 13:28 | |
Помогаю со студенческими работами здесь
12
Приложение зависает, если свернуть и развернуть Activity или перейти на другую Activity Android - Передача данных с одного Activity на другое Activity Изменение layout-элементов одного activity из другого activity Из одной Activity запустить функцию другой Activity Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |