localization testing

اختبار التوطين هو عملية التحقق من أن منتجاً برمجياً يعمل على النحو الصحيح لإعداد محلي مستهدف محدد، بما يشمل لغته وتنسيقاته الإقليمية وتخطيطه ومحتواه الخاص بالموقع الجغرافي، لا الترجمة وحدها. يقارن هذا الدليل كيفية تنفيذ فرق ضمان الجودة فعلياً لاختبار التوطين: المراجعة اليدوية، والفحوصات الآلية، والخطوة الإضافية المتمثلة في اختبار ما يراه المستخدمون الحقيقيون من داخل الدولة المستهدفة.

ستحصل على تعريف مستقل، وشرح لما يتحقق منه اختبار التوطين، وسير عمل قابل للتكرار بإطار عمل مسمى، ومقارنة لأساليب التحقق الجغرافي، وحدود واضحة بصدق. ينصب التركيز على القرارات العملية لفرق ضمان الجودة ومهندسي البرمجيات، لا على الادعاءات التسويقية.

DataImpulse هو مزود بروكسي أخلاقي يقدم أكثر من 90 مليون عنوان IP سكني ومحمول ومن مراكز البيانات في 195 دولة. ويستخدم نموذج الدفع حسب الاستخدام بدءاً من 1 دولار لكل GB مع حركة مرور لا تنتهي صلاحيتها، ويُستخدم لتجريف الويب والتحقق من الإعلانات ومراقبة الأسعار وأبحاث السوق وإدارة حسابات متعددة.

حقائق أساسية

  • اختبار التوطين: التحقق من صحة لغة المنتج وتنسيقاته وتخطيطه ومحتواه الخاص بالمنطقة واكتمالها لكل إعداد محلي مستهدف، وليس مجرد ترجمتها.
  • أفضل نوع بروكسي: بروكسيات سكنية متناوبة تستخدم عناوين IP لمستهلكين حقيقيين وتجتاز الكشف.
  • السعر: يبدأ من 1 دولار لكل GB، بالدفع حسب الاستخدام، مع حركة مرور لا تنتهي صلاحيتها ومن دون اشتراك.
  • التغطية: أكثر من 90 مليون عنوان IP من مصادر أخلاقية في 195 دولة.
  • الموثوقية: معدل نجاح 99.51%، وتقييم 4.8 من 5 على G2.
  • البروتوكولات والاستهداف: HTTP وHTTPS وSOCKS5، مع تضمين الاستهداف حسب الدولة.
سير عمل اختبار التوطين، خطوة بخطوة

ما اختبار التوطين في اختبار البرمجيات؟

اختبار التوطين نشاط من أنشطة ضمان الجودة يؤكد أن الإصدار الموطَّن صحيح ومكتمل وطبيعي لإعداد محلي مستهدف واحد. وهو يتجاوز التحقق من ترجمة السلاسل النصية ليسأل عما إذا كانت التجربة بأكملها تلائم لغة المستخدم ومنطقته وثقافته.

الإعداد المحلي أكثر من مجرد لغة. فهو يجمع لغة ودولة أو منطقة ومجموعة من الأعراف للتواريخ والأرقام والعملات والفرز واتجاه النص. تتشارك الإنجليزية في الولايات المتحدة والإنجليزية في المملكة المتحدة الكلمات، لكنهما تختلفان في الإملاء وترتيب التاريخ والعملة وبعض الإشعارات القانونية. يلتقط اختبار التوطين حالات عدم التطابق التي تتركها الترجمة البحتة.

وهو يختلف عن اختبار التدويل (i18n)، الذي يتحقق من أن الشفرة مبنية لدعم إعدادات محلية كثيرة من الأساس، مثل فصل السلاسل النصية والتعامل مع Unicode. التدويل هو الأساس الهندسي، واختبار التوطين هو التحقق لكل إعداد محلي المبني فوقه. كلاهما مهم، وقد يفشل منتج اجتاز اختبار التدويل في اختبار التوطين لسوق واحدة.

ما الذي يتحقق منه اختبار التوطين؟

يتحقق اختبار التوطين من كل واجهة يغيّر فيها الإعداد المحلي الناتج الصحيح: اللغة والتنسيقات والتخطيط والاتجاه والمحتوى الخاص بالمنطقة. والقائمة أدناه هي قائمة التحقق العملية التي تتفق عليها معظم فرق ضمان الجودة.

  • جودة اللغة والترجمة: سلاسل نصية دقيقة في سياقها، من دون أجزاء غير مترجمة أو عناصر نائبة معطلة أو جمل موصولة لا تصمد أمام الترجمة.
  • العملة والأسعار: رمز العملة الصحيح ورمزها وموضعها والفاصل العشري المناسب للإعداد المحلي، إضافة إلى عرض الضريبة أو VAT عند الحاجة.
  • تنسيقات التاريخ والوقت والأرقام: الترتيب الصحيح، يوم-شهر-سنة مقابل شهر-يوم-سنة، وساعات 12 مقابل 24، وفواصل الآلاف والعشري، وأول يوم في الأسبوع.
  • اتجاه النص وRTL: تحتاج اللغات التي تُكتب من اليمين إلى اليسار، مثل العربية والعبرية، إلى تخطيطات معكوسة وأيقونات محاذاة ومعالجة صحيحة للنص ثنائي الاتجاه.
  • التخطيط والاقتطاع: قد تكون السلاسل الألمانية أو الفنلندية أطول بكثير من الإنجليزية، لذا يجب أن تتمدد الأزرار والتسميات والقوائم أو تلتف من دون قص أو تداخل.
  • المحتوى القانوني والخاص بالموقع الجغرافي: الشروط الخاصة بالمنطقة ولافتات الموافقة وإشعارات الضرائب وإخلاءات المسؤولية والنصوص التنظيمية المطلوبة.
  • طرق الدفع والتوافر: خيارات الدفع المتوقعة محلياً، إضافة إلى المنتجات أو الشحن أو الميزات المتاحة في دول معينة فقط.
  • الملاءمة الثقافية: الرموز والألوان والصور والأسماء والأمثلة الملائمة بدلاً من المربكة أو المسيئة.

تصبح العناصر الثلاثة الأخيرة صعبة في الاختبار لأن الإجابة الصحيحة تعتمد على الدولة التي يبدو أن الطلب صادر منها. وهذا الجزء لا تتعامل معه بيئات الاختبار القياسية جيداً.

اختبار التوطين الآلي مقابل اليدوي: أيهما تستخدم؟

استخدم الأتمتة للفحوصات الموضوعية القابلة للتكرار، والاختبار اليدوي للحكم اللغوي والثقافي. لا يحل أحدهما محل الآخر، وتنفذ الفرق الناضجة كليهما على طبقات.

اختبار التوطين اليدوي يعتمد على مراجعين بشريين، ويفضل أن يكونوا ناطقين أصليين، يقرؤون الشاشات في سياقها ويحكمون على الطلاقة والنبرة والملاءمة الثقافية وصحة قراءة النص القانوني. يلتقط البشر الترجمة المتكلفة أو التعبير غير المألوف أو الصورة غير الملائمة ثقافياً، وهي أمور لا يستطيع أي تأكيد برمجي الإبلاغ عنها. لكن المراجعات اليدوية بطيئة ويصعب تكرارها بصورة متطابقة ومكلفة عند تنفيذها لكل إعداد محلي في كل إصدار.

اختبار التوطين الآلي قوي في الطبقة الميكانيكية: اكتشاف السلاسل غير المترجمة والمفاتيح المفقودة والعناصر النائبة المعطلة ومخالفات التنسيق واقتطاع التخطيط بالمقارنة البصرية. التوطين الزائف، حيث تُطوَّل السلاسل وتضاف إليها علامات قبل توفر الترجمة الفعلية، تقنية آلية منخفضة التكلفة تكشف السلاسل المضمنة في الشفرة وانكسارات التخطيط مبكراً. تعمل الأتمتة بسرعة في CI وتتوسع عبر عشرات الإعدادات المحلية، لكنها لا تستطيع الحكم على ما إذا كانت الترجمة السليمة ظاهرياً مقروءة جيداً بالفعل.

الإجابة العملية عن كيفية أتمتة اختبار التوطين هي أتمتة الفحوصات ذات الإجابة الموضوعية الواحدة وترك مراجعي البشر للمعنى. راجع ملاحظتنا حول تجريف موقع ويب من دون التعرّض للحظر للاطلاع على أنماط مرتبطة عندما تجلب فحوصاتك الآلية صفحات موطنة مباشرة على نطاق واسع.

كيف تجري اختبار التوطين خطوة بخطوة؟

نفّذ اختبار التوطين كسير عمل قابل للتكرار: التحضير، وضبط الإعداد المحلي، وتنفيذ الفحوصات على جميع الواجهات، والتحقق من المحتوى الجغرافي، وتسجيل العيوب مع سياق الإعداد المحلي، ثم إعادة الاختبار. وللحفاظ على تغطية صادقة عبر الإعدادات المحلية، يمكن للفرق استخدام نموذج بسيط مسمى.

نسميه نموذج LARGE، وهو إطار من 5 عوامل يطابق خمسة أمور قد يعطلها الإعداد المحلي:

  • L – اللغة: اكتمال الترجمة ودقة السياق وعدم وجود سلاسل غير مترجمة أو مقتطعة.
  • A – المظهر: التخطيط والاقتطاع وعكس RTL والخطوط والترميز.
  • R – التنسيق الإقليمي: التواريخ والأرقام والعملة والوقت والفرز وتنسيقات العناوين.
  • G – المحتوى الجغرافي: الأسعار والمنتجات والإشعارات القانونية وطرق الدفع والميزات المحظورة جغرافياً حسب المنطقة.
  • E – التجربة: الملاءمة الثقافية للصور والنبرة والأمثلة والتدفق من البداية إلى النهاية.

يبدو سير العمل العملي باستخدام نموذج LARGE كالآتي. أولاً، جهّز بيانات الاختبار ومسرداً أو دليل أسلوب والنتائج المتوقعة لكل إعداد محلي. ثانياً، اضبط البيئة للإعداد المحلي المستهدف بتحديد لغة نظام التشغيل أو المتصفح والمنطقة والمنطقة الزمنية. ثالثاً، راجع كل شاشة ونفذ فحوصات L وA وR وE. رابعاً، نفذ فحوصات G من عنوان IP يبدو فعلاً أنه في الدولة المستهدفة، وهو ما يغطيه القسم التالي. خامساً، سجّل كل عيب بلقطة شاشة والإعداد المحلي الدقيق والبيئة لتكون قابلة لإعادة الإنتاج. سادساً، أعد اختبار الإصلاحات ونفذ مراجعة انحدار للإعدادات المحلية التي اعتمدتها بالفعل، لأن تغيير سلسلة مشتركة يمكن أن يسبب انحداراً في عدة إعدادات محلية دفعة واحدة.

كيف تختبر المحتوى الخاص بالموقع الجغرافي من دولة أخرى؟

للتحقق من المحتوى الخاص بالموقع الجغرافي، يجب أن ترسل طلبك من عنوان IP يبدو بالفعل موجوداً في الدولة المستهدفة، لأن كثيراً من المواقع تعرض أسعاراً وعملات ومنتجات وإشعارات قانونية وميزات محظورة جغرافياً بحسب IP الزائر. يغيّر المحاكي أو تبديل الإعداد المحلي للمتصفح ما تقوله عن نفسك، لكنه لا يغيّر المكان الذي يعتقد الخادم أنك فيه.

هذا هو عامل المحتوى الجغرافي (G) في نموذج LARGE، وهو العامل الذي لا تستطيع بيئة مرحلية عادية تغطيته. إذا كان إصدارك يعرض أسعاراً ألمانية أو طريقة دفع متاحة في البرازيل فقط أو لافتة موافقة خاصة بدولة، فالطريقة الوحيدة الموثوقة لرؤية ما يراه المستخدم المحلي بدقة هي أن يكون مصدر الطلب من تلك الدولة. تعمل البروكسيات السكنية المستهدفة حسب الدولة على توجيه حركة المرور عبر عنوان IP لجهاز حقيقي في الدولة المختارة، لذلك يحدد الموقع المستهدف موقعك الجغرافي كزائر محلي حقيقي. يقدم DataImpulse أكثر من 90 مليون عنوان IP في 195 دولة مع تضمين الاستهداف حسب الدولة في السعر الأساسي، وهو ما يغطي معظم مصفوفات اختبار التوطين.

يبدو فحص Playwright بسيط يفتح صفحة أسعار موطنة عبر بروكسي مستهدف لألمانيا مع ضبط الإعداد المحلي للمتصفح كما يلي:

const { chromium } = require('playwright');

const browser = await chromium.launch({
  proxy: {
    server: 'http://gw.dataimpulse.com:823',
    username: 'YOUR_USER__cr.de',
    password: 'YOUR_PASS'
  }
});
const page = await browser.newPage({ locale: 'de-DE' });
await page.goto('https://shop.example.com/pricing');
console.log(await page.locator('.price').first().innerText());
await browser.close();

تنطبق الفكرة نفسها من سطر الأوامر، بربط بروكسي مستهدف حسب الدولة مع ترويسة Accept-Language لتتطابق إشارة IP وإشارة اللغة مع الإعداد المحلي قيد الاختبار:

curl -x http://gw.dataimpulse.com:823 \
  -U "YOUR_USER__cr.jp:YOUR_PASS" \
  -H "Accept-Language: ja-JP" \
  https://shop.example.com/pricing

غيّر وسم الدولة في اسم المستخدم لنقل عنوان IP الخارج إلى سوق آخر، ثم قارن الناتج الموطَّن بالنتيجة المتوقعة لذلك الإعداد المحلي. إذا لم تكن متأكداً من الدولة التي يُحل إليها عنوان IP أثناء التصحيح، فإن البحث عن عنوان IP يؤكد موقع الخروج قبل الوثوق بالنتائج. وعلى نطاق واسع، تكون البروكسيات السكنية أهم من بروكسيات مراكز البيانات هنا، لأن كثيراً من المواقع الموطنة تعامل نطاقات IP لمراكز البيانات باعتبارها مشبوهة وقد تعرض تجربة احتياطية.

أي أسلوب لاختبار الموقع الجغرافي ينبغي أن تختار؟

اختر محاكياً أو تبديل الإعداد المحلي لفحوصات اللغة والتنسيق، وVPN للفحوصات اليدوية السريعة العرضية، وبروكسيات سكنية مستهدفة حسب الدولة للتحقق الدقيق والقابل للتوسع من المحتوى الجغرافي. يقارن الجدول الأساليب الثلاثة وفق المحاور التي تهم فرق ضمان الجودة.

الأسلوب الدقة الجغرافية النطاق / الأتمتة التكلفة المعتادة
محاكاة الإعداد المحلي / تبديل إعداد المتصفح المحلي منخفضة: يغير إشارات اللغة والتنسيق فقط، لا الموقع الذي يراه الخادم مرتفعة: سهل البرمجة في CI مجاني
VPN للمستهلكين متوسطة: خروج حقيقي من الدولة، لكن المواقع محدودة وغالباً ما تكون عناوين IP لمراكز بيانات تضعها المواقع قيد الإشارة منخفضة: يدوي، ومخارج متزامنة قليلة، وصعب الأتمتة رسوم شهرية ثابتة
بروكسي سكني مستهدف حسب الدولة مرتفعة: عنوان IP سكني حقيقي داخل الدولة يعامله الموقع كمستخدم محلي مرتفعة: قابل للبرمجة عبر دول وجلسات كثيرة بالتوازي بحسب الاستخدام، من $1/GB مع DataImpulse

مصفوفة القرار. استخدم محاكياً أو تبديل الإعداد المحلي عند اختبار الترجمة أو التخطيط أو RTL أو تنسيقات التاريخ والأرقام، حيث لا تغيّر دولة الخادم الناتج. استخدم VPN عندما تحتاج إلى نظرة يدوية سريعة لمرة واحدة من دولة شائعة ولا تكون الأتمتة مطلوبة. استخدم بروكسي سكنياً مستهدفاً حسب الدولة عندما تحتاج إلى التحقق من الأسعار أو المنتجات أو الإشعارات القانونية أو الميزات المحظورة جغرافياً حسب المنطقة، أو عندما يلزمك تغطية دول كثيرة في عمليات آلية. تجنب الاعتماد على المحاكي وحده عندما يختار IP المحتوى نفسه، وتجنب الاعتماد على VPN عندما تحتاج إلى تغطية متوازية لإعدادات محلية ودول كثيرة لا يقدمها مزود VPN. يحصل DataImpulse على عناوين IP من مستخدمين يوافقون على ذلك ويتلقون مقابلاً، لذا فهذا نهج بروكسيات أخلاقية وليس حلاً ملتفاً من منطقة رمادية.

ما حدود اختبار التوطين؟

لاختبار التوطين حدود حقيقية، وتسميتها تحافظ على نزاهة العملية. لا يغطي أي أسلوب منفرد كل ما يخص الإعداد المحلي، وتحل البروكسيات مشكلة محددة واحدة، لا جميعها.

  • لا تستطيع الأتمتة الحكم على المعنى: قد تجتاز سلسلة نصية كل فحوصات التنسيق والاكتمال وتبقى مع ذلك غير طبيعية أو غير ملائمة ثقافياً. وتظل المراجعة البشرية من ناطق أصلي ضرورية.
  • الإشارات الجغرافية متعددة الطبقات: IP هي أقوى إشارة، لكن بعض المواقع تستخدم أيضاً GPS أو دولة الحساب أو عنوان الفوترة أو الإعداد المحلي للمتصفح. يعالج عنوان IP المستهدف حسب الدولة طبقة IP فقط، لذا وحّد أيضاً ترويسة Accept-Language وأي إعدادات للحساب.
  • البروكسيات ليست API للتجريف: يوفر DataImpulse طبقة الشبكة، عناوين IP والتدوير والاستهداف حسب الدولة، لكنه لا يحلل الصفحات ولا يدير عمليات إعادة المحاولة نيابة عنك. إنه ليس API مُداراً للتجريف ولا بروكسي ويب مجاني، ولذلك يبقى منطق الأداة الاختبارية مسؤوليتك.
  • بيانات الاختبار تتغير: تتبدل الأسعار الموطنة وقواعد الضرائب والنصوص القانونية مع الوقت، لذا تحتاج النتائج المتوقعة إلى تحديث دوري وإلا ستشير تأكيداتك إلى إخفاقات كاذبة.
  • تكاليف التغطية تنمو مع الإعدادات المحلية: تتضاعف مصفوفة الإعدادات المحلية بسرعة، لذا أعط الأولوية لإيرادات السوق والمخاطر بدلاً من محاولة اختبار كل إعداد محلي اختباراً كاملاً في كل إصدار.

عند التعامل معه كطبقة ضمن استراتيجية أوسع لضمان الجودة، يلتقط اختبار التوطين عيوباً تفوت مراجعة الترجمة والاختبار الوظيفي، ما دمت تدرك ما يستطيع كل أسلوب التحقق منه وما لا يستطيع.

نموذج LARGE للتوطين ذو العوامل الخمسة

الأسئلة الشائعة

ما اختبار التوطين؟

اختبار التوطين هو التحقق من أن منتجاً برمجياً صحيح ومكتمل وطبيعي لإعداد محلي مستهدف محدد، بما يشمل لغته وتنسيقاته الإقليمية وتخطيطه واتجاه النص ومحتواه الخاص بالمنطقة، لا الترجمة وحدها.

كيف تجري اختبار التوطين؟

جهّز النتائج المتوقعة ومسرداً لكل إعداد محلي، واضبط البيئة على الإعداد المحلي المستهدف، وافحص اللغة والمظهر والتنسيقات الإقليمية والملاءمة الثقافية في كل شاشة، وتحقق من المحتوى الخاص بالموقع الجغرافي من عنوان IP داخل الدولة، وسجّل العيوب بسياق الإعداد المحلي، ثم أعد الاختبار ونفذ مراجعة انحدار.

كيف تؤتمت اختبار التوطين؟

أتمت الفحوصات الموضوعية مثل السلاسل غير المترجمة والمفاتيح المفقودة والعناصر النائبة المعطلة ومخالفات التنسيق واقتطاع التخطيط بالمقارنة البصرية، وشغّلها في CI عبر كل الإعدادات المحلية. واترك المراجعين البشر للحكم على الطلاقة والجانب الثقافي اللذين لا تستطيع الأتمتة تقييمهما.

ما الفرق بين اختبار التوطين واختبار التدويل؟

يؤكد اختبار التدويل أن الشفرة تستطيع دعم إعدادات محلية كثيرة من الأساس، مثل التعامل مع Unicode والسلاسل النصية المفصولة. ثم يتحقق اختبار التوطين من صحة إعداد محلي محدد واكتماله فوق ذلك الأساس.

لماذا تحتاج إلى بروكسي لاختبار المحتوى الخاص بالموقع الجغرافي؟

تختار مواقع كثيرة الأسعار والمنتجات والإشعارات القانونية والميزات المحظورة جغرافياً بناء على موقع IP الخاص بالزائر. يجعل البروكسي السكني المستهدف حسب الدولة طلبك يبدو صادراً من مستخدم حقيقي في تلك الدولة، لذا ترى بالضبط ما يراه الزائر المحلي.

متى لا يكون DataImpulse مناسباً؟

إذا كنت تحتاج إلى بروكسيات ISP ثابتة، أو API مُداراً بالكامل للتجريف، أو الوصول إلى المواقع المصرفية والحكومية، فلن يكون DataImpulse الأداة المناسبة. فهو يركز على البروكسيات السكنية والمحمولة وبروكسيات مراكز البيانات المتناوبة لجمع البيانات العامة والوصول إلى المحتوى.

اختبر كل إعداد محلي من الدولة الصحيحة

للتحقق من المحتوى الخاص بالموقع الجغرافي بالطريقة التي يراه بها المستخدمون المحليون الحقيقيون، تحتاج إلى عنوان IP حقيقي داخل الدولة لكل سوق في مصفوفة اختبارك. أنشئ حساب DataImpulse لتوجيه اختبارات التوطين عبر عناوين IP سكنية في 195 دولة، مع تضمين الاستهداف حسب الدولة وحركة مرور بالدفع حسب الاستخدام بدءاً من $1/GB.

Share article: