Junior
дар бораи санҷиши мобилӣ гап занед.
sobes.tech AI
Ҷавоб аз AI
Тестгирии мобилӣ равандест барои санҷиши сифатнокии нармафзор, ки барои дастгоҳҳои мобилӣ (смартфонҳо, планшетҳо) таҳия шудааст. Он дар бар мегирад тестгирӣ дар платформаҳои гуногун (Android, iOS), дастгоҳҳо, версияҳои ОС, тасвирҳои экран, шароити шабакавӣ ва сценарияҳои истифода.
Аспектҳои асосии тестгирии мобилӣ:
- Тестгирии функсионалӣ: Санҷиши мувофиқати барнома бо талабот ва спецификатсияҳо.
- Тестгирии иҷроиш: Арзёбии суръат, истеъмоли хотира ва батарея.
- Тестгирии истифода: Арзёбии интуитивӣ, осонии навигатсия ва таҷрибаи умумии корбар.
- Тестгирии мувофиқият: Санҷиши кор дар дастгоҳҳои гуногун, версияҳои ОС ва тасвирҳои экран.
- Тестгирии бехатарӣ: ошкор кардани нуқсонҳо ва таъмини ҳифзи маълумоти корбар.
- Тестгирии қатъҳо: Санҷиши реаксияи барнома ба зангҳои воридотӣ, SMS, огоҳиномаҳо ва дигар ҳодисаҳо.
- Тестгирии насб/баровардан: Санҷиши дурустии насб ва баровардани пурра.
- Тестгирии локализация: Санҷиши дурустии намоиши матн, форматҳои сана ва вақт барои минтақаҳои гуногун.
- Тестгирии дастрасӣ: Санҷиши осонии истифода барои одамон бо имкониятҳои маҳдуд.
Асбобҳо барои тестгирии мобилӣ:
- Тестгирии дастӣ: Истифодаи дастгоҳҳои физикӣ ё эмулаторҳо/симуляторҳо.
- Тестгирии автоматӣ: Истифодаи рамкаҳо ва воситаҳо.
Баъзе воситаҳои машҳур барои автоматизатсияи тестгирии мобилӣ:
- Appium:
// Мисоли тести оддӣ дар Appium (Java) import io.appium.java_client.AppiumDriver; import io.appium.java_client.MobileElement; import io.appium.java_client.android.AndroidDriver; import org.openqa.selenium.remote.DesiredCapabilities; import java.net.MalformedURLException; import java.net.URL; public class SimpleAppiumTest { public static void main(String[] args) throws MalformedURLException { DesiredCapabilities cap = new DesiredCapabilities(); cap.setCapability("deviceName", "emulator-5554"); // Номи эмулятор/дастгоҳ cap.setCapability("platformName", "Android"); cap.setCapability("appPackage", "com.android.calculator2"); // Пакети барномаи санҷишӣ cap.setCapability("appActivity", "com.android.calculator2.Calculator"); // Фаъолияти барнома AppiumDriver<MobileElement> driver = new AndroidDriver<>(new URL("http://127.0.0.1:4723/wd/hub"), cap); // Мисоли ҳамкорӣ: пахш кардани тугмаи '1' driver.findElementById("digit_1").click(); // ... минбаъда амалҳо driver.quit(); // Баста кардани сессияи Appium } } - Espresso (Android):
// Мисоли тести оддӣ дар Espresso package com.example.myapp.test; import androidx.test.ext.junit.rules.ActivityScenarioRule; import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.espresso.Espresso; import androidx.test.espresso.action.ViewActions; import androidx.test.espresso.matcher.ViewMatchers; import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; import static androidx.test.espresso.assertion.ViewAssertions.matches; import static androidx.test.espresso.matcher.ViewMatchers.withId; import static androidx.test.espresso.matcher.ViewMatchers.withText; @RunWith(AndroidJUnit4.class) public class SimpleEspressoTest { @Rule public ActivityScenarioRule<MainActivity> activityRule = new ActivityScenarioRule<>(MainActivity.class); // Фаъолият барои оғоз @Test public void testButtonClick() { // Пайдо кардани тугма бо ID ва клик кардан Espresso.onView(withId(R.id.myButton)).perform(ViewActions.click()); // Санҷиши матни дар майдони матн Espresso.onView(withId(R.id.myTextView)).check(matches(withText("Button clicked!"))); } } - XCUITest (iOS):
// Мисоли тести оддӣ дар XCUITest (Swift) import XCTest class SimpleXCUIITest: XCTestCase { func testButtonPress() throws { // Инициализатсияи барнома let app = XCUIApplication() app.launch() // Пайдо кардани тугма ва клик кардан let myButton = app.buttons["MyButtonIdentifier"] // ID ё тамғаи тугма myButton.tap() // Пайдо кардани майдони матн ва санҷиши арзиш let myLabel = app.staticTexts["MyLabelIdentifier"] // ID ё тамғаи майдони матн XCTAssertEqual(myLabel.label, "Button Pressed!") } }
Хусусиятҳои махсуси тестгирии мобилӣ:
- Баъзе дастгоҳҳо ва версияҳои ОС, ки талаб мекунанд фермаи васеъ ё хидматрасониҳои абрӣ.
- Тестгирӣ дар шароити шабакавии гуногун (Wi-Fi, 3G, 4G, 5G, беҷор).
- Идоракунии қатъҳо ва равандҳои дар пасзамина.
- Истеъмоли захираҳои системӣ (CPU, RAM, батарея).
Эмуляторҳо ва симуляторҳо барои тестгирии ибтидоӣ истифода мешаванд, аммо тестгирии ниҳоӣ бояд дар дастгоҳҳои воқеӣ анҷом дода шавад барои арзёбии дақиқи иҷроиш ва таҷрибаи корбар дар шароити воқеӣ.