Sobes.tech
Middle

Xalqaro qilish testini qanday o'tkaziladi?

sobes.tech AI

AIdan javob

Xalqaro qilish (i18n) va mahalliylashtirish (l10n) sinovlari uchun, ilovaning turli tillar, madaniyatlar va mintaqalar uchun to'g'ri ko'rsatilishi va ishlashini tekshirish amalga oshiriladi.

Asosiy bosqichlar:

  1. Xalqaro qilish (i18n Testing): Ilovaning arxitekturasi va dizayniga qaratilgan bo'lib, u kodni o'zgartirmasdan turli tillar va madaniy formatlar bilan ishlashiga imkon beradi.

    • Simsiyalashgan mahalliylashtirish testi: Barcha matn satrlarini maxsus belgilar yoki kengaytirilgan versiyalar bilan almashtirish, ilovaning turli uzunlikdagi satrlar va belgilarni to'g'ri ishlashini tekshirish va qattiq kodlangan satrlarni aniqlash.
    • Madaniyatga bog'liq ma'lumotlarni boshqarish testi: To'g'ri ko'rsatish va ishlov berishni tekshirish:
      • Raqamli formatlar va onlik ajratuvchilar.
      • Sana va vaqt formatlari.
      • Valyuta belgisi va formatlari.
      • O'lchov birliklari.
      • Saralash tartibi.
    • Matnning kengaytirilishi testi: Foydalanuvchi interfeysining matn uzunligi sezilarli darajada oshirilganda to'g'ri ko'rsatilishini ta'minlash.
    • Kodlashni qo'llab-quvvatlash testi: Turli belgilar kodlashlari bilan (masalan, UTF-8) to'g'ri ishlashini tekshirish.
  2. Mahalliylashtirish (l10n Testing): Muayyan tillar va mintaqalar uchun ilovaning mahalliylashtirilgan versiyalarini tekshirishga qaratilgan.

    • Tarjimali matnni tekshirish: To'g'riligi va mosligini, grammatika xatolari va yozish xatolarisiz.
    • Mahalliylashtirilgan kontentni ko'rsatish: Barcha foydalanuvchi interfeysi elementlari (matn, rasm, ikonalar) mahalliy xususiyatlarni hisobga olgan holda to'g'ri ko'rsatilishini ta'minlash.
    • Mahalliylashtirilgan muhitda funksionallikni tekshirish: Ilovaning barcha funksiyalarining mahalliylashtirilgan ma'lumotlar bilan to'g'ri ishlashini ta'minlash.
    • Mahalliy formatlashni tekshirish: Sana/vaqt, raqamlar, valyuta va boshqa ma'lumotlarning mahalliy standartlarga muvofiq to'g'ri ko'rsatilishini tasdiqlash.
    • Madaniy moslikni baholash: Kontent va foydalanuvchi interfeysining madaniy normalar va kutishlarga qanchalik mos kelishini baholash.

Avtomatlashtirish uchun asboblar va usullar quyidagilar uchun ishlatilishi mumkin:

  • Zarur bo'lgan barcha mahalliylashtirish kalitlarining mavjudligini tekshirish.
  • Qattiq kodlangan satrlarni aniqlash.
  • Madaniyatga bog'liq ma'lumotlarni asosiy formatlashni tekshirish.
  • Selenium yoki Appium kabi ramkalar yordamida mahalliylashtirilgan muhitlarda foydalanuvchi interfeysini avtomatlashtirish.
# Mahalliylashtirish kalitlarining mavjudligini tekshirish misoli
import json

def check_localization_keys(default_lang_file, lang_file):
    with open(default_lang_file, 'r', encoding='utf-8') as f_default:
        default_keys = set(json.load(f_default).keys())

    with open(lang_file, 'r', encoding='utf-8') as f_lang:
        lang_keys = set(json.load(f_lang).keys())

    missing_keys = default_keys - lang_keys
    if missing_keys:
        print(f"{lang_file} da yo'q kalitlar: {missing_keys}")
    
    extra_keys = lang_keys - default_keys
    if extra_keys:
        print(f"{lang_file} da ortiqcha kalitlar: {extra_keys}")

# Asosiy va boshqa til uchun kalitlarni taqqoslash uchun funksiyani chaqirish
# check_localization_keys('en.json', 'ru.json')