Middle+
Mobil ilovada rekonekt tekshiruvi holatlarini aytib bering.
sobes.tech AI
AIdan javob
Rekonekt testlari mobil ilovaning server yoki boshqa tarmoq resurslari bilan bog‘lanishni yo‘qotishi va keyinchalik tiklanishi qanday bo‘lishini tekshiradi.
Sinov ssenariyalari:
- Tarmoq o‘zgarishi:
- Wi-Fi -> Mobil internet (LTE/5G).
- Mobil internet (LTE/5G) -> Wi-Fi.
- Wi-Fi (bir nuqta) -> Wi-Fi (boshqa nuqta).
- Signal yo‘qotilishi:
- lift, metro kabi signal bo‘lmagan hudga kirish.
- “Samolyot” rejimini yoqish/o‘chirish.
- Qurilma sozlamalari orqali tarmoq interfeyslarini majburan o‘chirish.
- Serverdagi muammolar:
- API vaqtincha mavjud emas.
- Serverni qayta yuklash.
- Tarmoq kechikishlari (proksi yordamida simulyatsiya qilinadi).
Nima tekshiramiz:
- UI/UX xulq-atvori:
- Yuklash yoki xato indikatorlarini ko‘rsatish.
- Foydalanuvchining hozirgi holatini saqlash (masalan, to‘ldirilmagan kiritish, ro‘yxatdagi pozitsiya).
- Tarmoq yo‘qotilishi/yuklanishi haqida bildirishnomalarni to‘g‘ri ko‘rsatish.
- Ilovaning “qayta bog‘lanmaslik” yoki “qayta bog‘lanish” muammosiz ishlashini ta’minlash.
- Ma’lumotlarning yaxlitligi:
- Uzilish vaqtida yuborilayotgan/olingan ma’lumotlar tiklanganidan so‘ng to‘g‘ri ishlashini ta’minlash.
- Mahalliy saqlangan ma’lumotlar server bilan sinxronlashtirilishi.
- Qayta urinishlar (Retry Logic):
- Ilova eksponentsial kechikish bilan takroriy urinishlar logikasiga ega bo‘lishi kerak.
- Takroriy urinishlar soni va kutish vaqtiga cheklovlar.
- Sessiyalarni boshqarish:
- Foydalanuvchi sessiyasi saqlanib yoki to‘g‘ri tiklanishi, majburan chiqishsiz.
Asboblar va texnikalar:
- Tarmoq proksilari: Charles Proxy, Fiddler. Kechikishlarni, paketlarni yo‘qotishni, so‘rovlarni bloklashni simulyatsiya qilish imkonini beradi.
- Tarmoq utilitalari: Brauzer ishlab chiqish vositalari (webview uchun), trafikni nazorat qilish uchun maxsus mobil utilitalar.
- “Samolyot” rejimi: To‘liq bog‘lanishni simulyatsiya qilish uchun oddiy usul.
- Tarmoq interfeyslarini o‘chirish: Qurilma tizim sozlamalari orqali.
- Tarmoq emulyatorlari: Turli tarmoq sharoitlarini (tezlik, kechikish, paket yo‘qotish) simulyatsiya qilish imkonini beradigan vositalar.
- Avtomatlashtirish: Appium, Espresso (Android), XCUITest (iOS) yordamida tarmoq o‘zgarishi yoki tizim funksiyalarini chaqirish (Samolyot rejimini yoq/o‘chirish) uchun avtomatlashtirish.
// Appium yordamida rekonekt testini avtomatlashtirish misoli (Python)
from appium import webdriver
import time
desired_caps = {
'platformName': 'Android',
'deviceName': 'Android Emulator', # Yoki haqiqiy qurilma
'appPackage': 'com.yourapp.package',
'appActivity': 'com.yourapp.MainActivity',
'automationName': 'UiAutomator2'
}
driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
try:
// Tarmoqni talab qiladigan harakatlarni bajaring
driver.find_element_by_accessibility_id("some_button").click()
time.sleep(5) # Ma’lumotlarni yuklash uchun kutish
// “Samolyot” rejimini yoqing
driver.open_notifications()
driver.find_element_by_accessibility_id("Airplane mode").click()
driver.back() # Bildirishnomalarni yopish
print("Samolyot rejimi YOQILDI")
time.sleep(10) # Bog‘lanishni yo‘qotishni kutish
// Tarmoq harakatini amalga oshirishga harakat qiling
driver.find_element_by_accessibility_id("another_button").click()
// Xato yoki tarmoq yo‘qligi indikatorini ko‘rsatishini tekshirish
// “Samolyot” rejimini o‘chirish
driver.open_notifications()
driver.find_element_by_accessibility_id("Airplane mode").click()
driver.back() # Bildirishnomalarni yopish
print("Samolyot rejimi O‘CHIRILDI")
time.sleep(10) # Bog‘lanishni tiklash
// Funktsionallik va ma’lumotlarning to‘g‘ri tiklanganligini tekshirish
// ... assert bayonotlar ...
except Exception as e:
print(f"Xato: {e}")
finally:
driver.quit()
Rekonekt testining muvaffaqiyati, tarmoq sharoitlari qanchalik barqaror bo‘lmasin, mobil ilovaning barqarorligi va ishonchliligini ta’minlash uchun juda muhimdir.