Sobes.tech
Middle+

Дар бораи ҳолатҳои санҷиши дубора пайвастшавӣ дар барномаи мобилӣ нақл кунед.

sobes.tech AI

Ҷавоб аз AI

Тестҳои пайвастани дубора назорат мекунанд, ки барномаҳои мобилӣ чӣ гуна рафтор мекунанд дар ҳолати аз даст додани ва барқарор кардани пайванд бо сервер ё дигар манбаъҳои шабакавӣ.

Сценарияҳои санҷиш:

  • Гузариш дар шабака:
    • Wi-Fi -> Интернети мобилӣ (LTE/5G).
    • Интернети мобилӣ (LTE/5G) -> Wi-Fi.
    • Wi-Fi (як нуқта) -> Wi-Fi (нуқтаи дигар).
  • Зиён дар сигнали:
    • Вуруд ба минтақаи бе фароравӣ (лифти, метро).
    • Фаъолсозӣ/ғайрифаъолсозии режими "Ҳаво".
    • Беҷо кардани маҷбурӣ интерфейсҳои шабакавӣ (Wi-Fi, Датаҳои мобилӣ) тавассути танзимоти дастгоҳ.
  • Масъалаҳо дар сервер:
    • Норасонии муваққатии API.
    • Рефрогардонии сервер.
    • Таъхироти шабакавӣ (симулятсия бо серверҳои proxy).

Чӣ месанҷем:

  • Равобити UI/UX:
    • Намоиши нишондиҳандаҳои боркунӣ ё хатоҳо.
    • Ҳифзи ҳолати ҳозираи корбар (масалан, воридоти номукаммол, ҷойгиршавӣ дар рӯйхат).
    • Намоиши дурустии огоҳиномаҳо дар бораи аз даст додани/барқарор кардани пайванд.
    • Бе хатогӣ ё "боздошти" барнома.
  • Ҳамоҳангсозии маълумот:
    • Маълумоте, ки дар вақти қатъшавӣ дар раванд буд, бояд пас аз барқароршавӣ дуруст коркард шавад.
    • Маълумоти маҳаллӣ бояд бо сервер ҳамоҳанг карда шавад.
  • Қайтаришҳои кӯшишӣ (Retry Logic):
    • Барнома бояд логикаи кӯшишҳои такрорӣ бо таъхири экспоненсиалӣ (backoff) дошта бошад.
    • Маҳдудиятҳо дар шумораи кӯшишҳо ва вақти интизорӣ.
  • Идоракунии сессияҳо:
    • Сессияи корбар бояд нигоҳ дошта ё дуруст барқарор шавад бе баромади маҷбурӣ.

Асбобҳо ва техникаҳо:

  • Проксиҳои шабакавӣ: Charles Proxy, Fiddler. Имкон медиҳанд таъхирҳо, аз даст додани бастаҳоро, масрафи дархостҳоро симулятсия кунанд.
  • Асбобҳои шабакавӣ: Асбобҳои таҳиягар дар браузер (барои webview), асбобҳои махсуси мобилӣ барои назорати трафик.
  • Режими "Ҳаво": Роҳи содда барои симулятсия кардани аз даст додани пурраи пайванд.
  • Хомӯш кардани интерфейсҳои шабакавӣ: Тавассути танзимоти системаи дастгоҳ.
  • Эмуляторҳои шабакавӣ: Асбобҳо, ки имкон медиҳанд шароити гуногуни шабакавиро симулятсия кунанд (суръат, таъхир, аз даст додани бастаҳо).
  • Автоматизатсия: Истифодаи Appium, Espresso (Android), XCUITest (iOS) барои автоматизатсияи сценарияҳо бо гузариш дар шабакавӣ ё даъвати функсияҳои системаи (фаъолсозӣ/ғайрифаъолсозии "Ҳаво" режим).
// Намунаи автоматизатсияи санҷиши пайвастани дубора бо истифода аз Appium (Python)

from appium import webdriver
import time

desired_caps = {
    'platformName': 'Android',
    'deviceName': 'Android Emulator', # Ё дастгоҳи воқеӣ
    'appPackage': 'com.yourapp.package',
    'appActivity': 'com.yourapp.MainActivity',
    'automationName': 'UiAutomator2'
}

driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)

try:
    // Амалҳое, ки талаб мекунанд шабака
    driver.find_element_by_accessibility_id("some_button").click()
    time.sleep(5) # Интизорӣ барои боркунӣ

    // Фаъолсозии режими "Ҳаво"
    driver.open_notifications()
    driver.find_element_by_accessibility_id("Airplane mode").click()
    driver.back() # Баста кардани огоҳиномаҳо
    print("Режими "Ҳаво" ВКЛЮЧЕН")
    time.sleep(10) # Интизорӣ барои аз даст додани пайванд

    // кӯшиши иҷрои амалиёти шабакавӣ
    driver.find_element_by_accessibility_id("another_button").click()
    // Санҷиши намоиши нишондиҳандаи хато/набаромадани шабака

    // Хомӯш кардани режими "Ҳаво"
    driver.open_notifications()
    driver.find_element_by_accessibility_id("Airplane mode").click()
    driver.back() # Баста кардани огоҳиномаҳо
    print("Режими "Ҳаво" Хомӯш")
    time.sleep(10) # Интизорӣ барои барқароршавии пайванд

    // Санҷиши барқароршавии функсионалӣ ва дурустии маълумот
    // ... изҳоротҳои assert ...

except Exception as e:
    print(f"Хатогӣ: {e}")

finally:
    driver.quit()

Таҳлили пайвастани дубора барои таъмини устуворӣ ва боэътимодии барномаи мобилӣ дар шароити шабакавии номувофиқ муҳим аст.