Нативная разработка мобильных приложений



Download 3,69 Mb.
Pdf ko'rish
bet142/228
Sana21.07.2022
Hajmi3,69 Mb.
#834838
1   ...   138   139   140   141   142   143   144   145   ...   228
Bog'liq
Нативная разработка мобильных приложений

з
адачи
В этой главе вы узнаете:
1) как писать и запускать модульные тесты;
2) как писать и запускать интеграционные тесты.
A
ndroid
AOSP определяет и различает несколько типов тестов:
Модульные тесты
Это узкоспециализированные тесты, проверяющие работу какого-то одно
-
го класса. Обычно один тест проверяет единственный метод в этом классе. 
Если модульный тест потерпел неудачу, вы должны точно знать, где в ва
-
шем коде находится проблема. Они охватывают очень узкую область кода, 
потому что в реальном мире приложение включает в себя гораздо больше, 
чем простой вызов одного метода. Они должны быть достаточно быстрыми, 
чтобы их можно было выполнять после каждого изменения кода.


214

Тестирование
Интеграционные тесты
Эти тесты проверяют взаимодействие нескольких классов, чтобы убедиться, 
что они работают должным образом при совместном использовании. Часто 
интеграционные тесты структурируются так, чтобы каждый проверял одну 
функцию, например возможность сохранить задачу. Они тестируют боль
-
ший объем кода, чем модульные тесты, но точно так же должны быть быст-
рыми и максимально точными.
Сквозные тесты
Тестируют комбинации функций, составляющих целые процессы. Они дей
-
ствуют медленно, потому что тестируют значительные части приложения 
и тщательно имитируют реальное использование. Они имеют самый широ
-
кий охват кода и способны подтвердить, что ваше приложение действитель
-
но работает, как требуется.
Приемы тестирования в Android, возможно, немного отличаются от приемов 
тестирования, с которыми вы сталкивались раньше. Классификация тестов 
и их семантика могут не совпадать с теми, что описываются в других руковод
-
ствах по программированию.
Начнем с модульного тестирования. Модульное тестирование в Android 
очень похоже на модульное тестирование в любых других системах или язы
-
ках. Обычно для создания тестов мы используем фреймворк JUnit, но, вообще 
говоря, это не является обязательным условием. Модульный тест должен быть 
узкоспециализированным и точно определять конкретную точку в коде, по
-
этому ошибки, выявленные модульными тестами, исправляются относительно 
просто. Например, если у вас есть метод, умножающий два числа и возвраща
-
ющий результат, модульный тест может вызвать этот метод с некоторыми за
-
ранее определенными числами, чтобы убедиться, что результат соответствует 
ожидаемому. Допустим, ваш класс выглядит так:
Java
public class Maths {
public static int multiply(int a, int b) {
return a * b;
}
}
Kotlin
fun multiply(a:Int, b:Int):Int {
return a * b
}
Вы можете начать с очень простого теста:
Java
public class MathsTests {
@Test
public void testMultiplication() {
int a = 2;


Android 

215
int b = 3;
int expected = 6;
int actual = Maths.multiply(a, b);
assertEquals(expected, actual);
}
}
Kotlin
fun testMultiplication() {
val a = 2
val b = 3
val expected = 6
val actual = Maths.multiply(a, b)
assertEquals(expected, actual)
}
Имейте в виду, что подобные локальные тесты находятся в папке 
test
, сге
-
нерированной средой разработки, в родительском каталоге 
src
. Инструменти
-
рованные тесты, которые выполняются на реальном устройстве или в эмуля
-
торе, находятся в подпапке 

Download 3,69 Mb.

Do'stlaringiz bilan baham:
1   ...   138   139   140   141   142   143   144   145   ...   228




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish