Учебное пособие по роботиуму: ваш первый Android Рамки
Что такое роботиум?
Robotium — это фреймворк тестирования Android для автоматизации тестовых случаев для собственных и гибридных приложений. Используя Robotium, разработчик может создать сильный автоматический тестовый случай GUI для Android Приложения. Кроме того, разработчик может написать сценарий функционального, системного и приемочного тестирования, распространяя множество Android деятельности.
Система тестирования роботиума
Стандарт Android среда тестирования имеет некоторые ограничения, как показано ниже.
- Невозможно справиться с несколькими видами деятельности
- Производительность выполнения теста низкая
- Тестовые случаи сложны и трудны для реализации
Роботиумрамки лучший выбор для проведения тестирования на Android приложению
Robotium — это платформа с открытым исходным кодом, которая считается расширением Android тестовая среда. Используя Robotium, разработчик может создавать надежные автоматические тесты GUI для Android Приложения. Более того, разработчик может писать сценарии функционального, системного и приемочного тестирования, охватывающие несколько Android деятельности.
.png)
Классы тестовых примеров Robotium
Robotium использует набор классов (com.jayway.android.robotium.solo) для тестирования. Этот класс поддерживает тестовые примеры, охватывающие несколько действий. Solo интегрирован с ActivityInstrumentationTestCase2.
Тестировщик может писать тестовые случаи без знания дизайна приложения (тестирование черного ящика) с помощью классов тестовых случаев Robotium. Это выдающаяся функция по сравнению с Android классы тестовых примеров.
Как использовать роботиум
Чтобы использовать Robotium в вашем Android тестовый проект, вам необходимо выполнить следующие шаги
Использование Robotium для проведения тестирования на Android приложение. Чтобы гарантировать качество вашего Android приложения, вам следует выполнить процедуру, описанную ниже.
- Спецификация испытаний конструкции
- Разработать тестовую программу
- Выполнить Тестовый кейс на целевом устройстве
- Собрать результат теста
ШАГ 1) Разработка спецификации испытаний
- Это первый шаг к тестированию вашего приложения. На этом этапе вы определяете цель для тестирования. В вашей Android Приложение, необходимо протестировать множество целей, таких как пользовательский интерфейс, активность, компоненты, сервисы. Четкое определение цели вашего приложения поможет добиться широкого охвата тестирования.
- Спланируйте, какие типы тестов должны быть проведены (юнит-тест, функциональный тест, системный тест).
- Создавайте тестовые сценарии для максимального охвата, но минимизируйте количество тестовых случаев. Чем больше кода тестируется, тем больше шансов на раннее обнаружение ошибок.
ШАГ 2) Напишите ТЕСТОВУЮ программу
В этом разделе вы узнаете, как написать Android тестовая программа с использованием Android Юнит Тест и роботиум. Предположим, что вы уже разработали Android название программы ЗдравствуйтеAndroid. Эта программа имеет некоторые функции, описанные ниже:
- Отобразите текст «Привет, мир!» на экране.
- Отобразить сообщение ПриветAndroid когда пользователь нажимает кнопку «Пуск»
Системные требования
- Android платформа поставляется с предварительно интегрированным JUnit 3.0 рамки.
- Чтобы создать Android Тестовый проект от Eclipse, на вашем компьютере должно быть установлено:
- Последняя версия Android Платформа (в настоящее время Android 8.1)
Вы можете скачать Eclipse IDE со встроенным ADT (Android Инструменты разработчика). Он включает в себя важнейшие Android Компоненты SDK и версия Eclipse IDE.
Для использования среды тестирования Robotium вам необходимо удалить библиотеку Robotium из Веб-страница роботиума.
Создавай Android Тестовый проект
- Нажмите Файл -> Создать -> Другое.
- Выберите: Android -> Android Тестовый проект согласно рисунку ниже -> Выберите «Далее».
Напишите название вашего тестового проекта. Согласно соглашению об именах, ваш тестовый проект должен называться «HelloAndroidКонтрольная работа"
Выберите целевое тестируемое приложение. В данном случае это ПриветAndroid нажмите Готово
Создание наборов тестов
На основе спецификации теста вы начали создавать наборы тестов для своей тестовой программы. Вы можете выбрать различные рамки тестирования. В этом уроке я выбираю стандартный Android структура тестирования ДеятельностьИнструментацияTestCase2. Вам необходимо добавить файл библиотеки Robotium в каталог libs в папке вашего проекта, если вы хотите протестировать его с помощью платформы Robotium. (Вы создаете папку lib в папке вашего проекта).
Тестовый пример определяет приспособление для запуска нескольких тестов. Чтобы определить тестовый пример, вы должны следовать приведенной ниже структуре программы:
- Реализуйте подкласс
TestCase
. - Определите переменные экземпляра, которые хранят состояние прибора
- Инициализируйте состояние прибора, переопределив setUp().
- Очистка после теста путем переопределения TearDown().
package com.example.helloandroid.test; import com.example.helloandroid.HelloAndroid; import com.jayway.android.robotium.solo.Solo; import android.test.ActivityInstrumentationTestCase2; import android.widget.TextView; public class HelloAndroidTest extends ActivityInstrumentationTestCase2 <HelloAndroid> { private HelloAndroid mActivity; private TextView mView; private String resourceString; private Solo solo; public HelloAndroidTest () { // TODO Auto-generated constructor stub super("com.example.helloandroid",HelloAndroid.class); } @Override protected void setUp() throws Exception { // TODO Auto-generated method stub // super.setUp(); mActivity = this.getActivity(); solo = new Solo(getInstrumentation(),getActivity()); mView = (TextView) mActivity.findViewById(com.example.helloandroid.R.id.textview2); resourceString = mActivity.getString(com.example.helloandroid.R.string.hello_world); } @Override protected void tearDown() throws Exception { // TODO Auto-generated method stub //super.tearDown(); solo.finishOpenedActivities(); } public void testPrecondition() { assertNotNull(mView); } /* test Target application contains a text display "Hello World!"*/ public void testSearchText() { assertEquals(resourceString,(String) mView.getText()); } /* test HelloAndroid Activity on target application is exist*/ public void testCurrentActivity() throws Exception { solo.assertCurrentActivity("wrong activity", HelloAndroid.class); } /* test Application UI contains "Start" button */ /* send event click button to target application */ public void testSearchButton() throws Exception { boolean found = solo.searchButton("Start"); solo.clickOnButton("Start"); assertTrue(found); } }
Добавление тестовых случаев
- В одном пакете с TestSuite создаём классы TestCase
- Чтобы проверить определенную активность, например Hello.Android, создайте экстент тестового примера ActivityInstrumentationTestCase2Android>
- В этом классе тестер может получить активность тестирования с помощью метода getActivity().
- Вы можете свободно создать тест для деятельности по тестированию, создав метод с именем «тест + исходное имя метода».
- В методе тестирования тестер может использовать Android JUnit функция для сравнения фактического значения и ожидаемого значения. Эти методы показаны ниже.
Эти наборы тестов, приведенные выше, подтвердили, что графический интерфейс приложения должен отображать текст «Hello World!» и содержать название кнопки «Пуск».
ШАГ 3) Запустите тест
После завершения написания тестовой программы запустите тест, выполнив следующие действия.
- Связаться Android устройство на свой компьютер (или запустите эмулятор, если у вас нет реального устройства).
- В вашей IDE щелкните правой кнопкой мыши «Запустить как».Android Единичный тест
Помимо запуска теста в IDE, вы можете запустить тест из командной строки. В этой тестовой программе тестовый пакет — com.example.helloandroid.test. В Linux терминал, вы можете использовать следующую команду для запуска всех тестов в этом пакете:
$ adb Shell am Instrument -w -e пакет com.example.helloandroid.test
ШАГ 4) Получите результат теста
После выполнения теста вы получите результаты теста.
В этой тестовой программе выполняются 4 метода тестирования. В этом случае все тестовые случаи пройдены.
В случае сбоя тестового примера вывод отображается и показывает, какие тестовые примеры не пройдены.
Примеры исходного кода
В эти статьи включены некоторые примеры исходного кода, которые помогут вам более четко понять руководство и быстрее освоить технические знания.
- ПриветAndroid: Приложение находится на стадии тестирования.
- ПриветAndroidТест: Тестовая программа с использованием Android Платформа тестирования