Сеилханова Р. Б


Добавим тест интерфейса пользователя



бет56/112
Дата07.01.2022
өлшемі11,65 Mb.
#17516
түріПрограмма дисциплины
1   ...   52   53   54   55   56   57   58   59   ...   112
Байланысты:
Силлабус Android krmu 20

Добавим тест интерфейса пользователя

Создадим UI тест, который выбирает элементы из виджета спинер. Тест посылает события нажатия клавиш и проверяет, что выбор соответствует ожидаемым результатам.

Для работы со спинером тест должен запросить фокус и затем установить его в известную позицию, для этого используются методы requestFocus() и setSelection(). Оба эти метода взаимодействуют с представлениями тестируемого приложения, поэтому должны вызываться специальным образом.

Код для получения фокуса и установки выделения выглядит следующим образом:

mActivity.runOnUiThread(

new Runnable() {

public void run() {

mSpinner.requestFocus();

mSpinner.setSelection(INITIAL_POSITION);

}


}

);


Необходимо добавить его в метод:

public void testSpinnerUI() {

}

Необходимо добавить в класс тестов элемент:



public static final int INITIAL_POSITION = 0;

Далее необходимо сделать выбор элемента спинера для этого передадим событие нажатия кнопки в спинер:

this.sendKeys(KeyEvent.KEYCODE_DPAD_CENTER);

for (int i = 1; i <= TEST_POSITION; i++) {

this.sendKeys(KeyEvent.KEYCODE_DPAD_DOWN);

}

this.sendKeys(KeyEvent.KEYCODE_DPAD_CENTER);



Необходимо добавить в класс тестов элемент:

public static final int TEST_POSITION = 5;

Необходимо импортировать:

import android.view.KeyEvent;

Проверка результатов. Запросить текущее состояние спинера и сравнить его с ожидаемым значением. Вызов метода getSelectedItemPosition() позволит получить текущую выбранную позицию, а метод getItemAtPosition() возвращает элемент, соответствующий этой позиции (представленный в виде строки). Метод assertEquals(); проверяет совпадает ли полученное значение с ожидаемым "Saturn".

Добавьте в метод public void testSpinnerUI() следующий код:

mPos = mSpinner.getSelectedItemPosition();

mSelection = (String)mSpinner.getItemAtPosition(mPos);

TextView resultView = (TextView)mActivity.findViewById

(com.android.example.spinner.R.id.SpinnerResult);

String resultText = (String) resultView.getText();

assertEquals(resultText,mSelection);

Необходимо добавить в класс тестов следующие элементы:

private String mSelection;

private int mPos;

И импортировать:

import android.widget.TextView;



Достарыңызбен бөлісу:
1   ...   52   53   54   55   56   57   58   59   ...   112




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет