تسمح الواجهة بوصف قصير، ثم ترفضه الخدمة رغم أن المستخدم يرى حروفًا أقل من الحد. وقد تقطع عملية القص إيموجي أو تترك علامة تشكيل منفصلة. قبل تعديل الرقم المسموح، حدد ما الذي تعده المنظومة: وحدات النص البرمجية أم العناصر المرئية للمستخدم أم بايتات التخزين أو قواعد قناة إرسال خارجية.
اتفق على وحدة العد
تشرح وثائق MDN لـIntl.Segmenter تقسيم النص بحسب اللغة إلى عناقيد حرفية أو كلمات أو جمل. يوفر اختيار granularity بقيمة grapheme أساسًا لمراجعة الحدود المرئية. لكن ذلك لا يحدد وحده حدود قاعدة البيانات أو سعر رسالة SMS، ولا يغني عن اختبار مكتبات الخادم.
في مثال افتراضي، يرغب فريق المنتج في حد لاسم عرض يراه المستخدم. يجب أن يعرف المطور أن عدادًا يعتمد على string.length ليس تعريفًا تلقائيًا لعدد الحروف المرئية. اكتب تعريف الحقل قبل اختيار الأداة، وراجع دعم البيئات المستهدفة وطريقة التعامل مع عدم الدعم.
جهز مجموعة نصوص مصطنعة
| العينة | ما تراجعه |
|---|---|
| نص عربي بلا تشكيل | السلوك الأساسي للعد والحفظ |
| الكلمة نفسها بعلامات تشكيل | سياسة العد دون إتلاف العلامات |
| إيموجي مركب أو بلون بشرة | عدم تقسيم العنصر أثناء القص |
| نص عربي وإنجليزي معًا | ثبات التحقق والعرض بعد الحفظ |
اختبر ما قبل الحد وعنده وبعده
لكل عينة، ضع النص قبل الحد المتفق عليه وعنده وبعده. راقب العداد والرسالة والقيمة التي تصل إلى الخادم. إذا كانت الواجهة تقص تلقائيًا، افحص موضع القطع بصريًا وبعد إعادة فتح السجل؛ أما إن كانت ترفض، فلتشرح للمستخدم الحد دون حذف ما كتبه خلسة.
لا تغير تطبيع النص أو تحذف التشكيل لإجبار الاختبار على المرور دون قرار منتج واضح. قد يختلف المقصود في اسم شخص عن رمز تقني أو رسالة قابلة للبحث. افصل قواعد كل حقل ووثق أي تحويل يجري قبل التخزين.
طابق عقد الواجهة والخادم
ضمن تصميم النماذج العربية وتطوير التطبيق احتفظ بمجموعة الاختبار نفسها عبر المنصات. يمكن أن يملك التخزين حدًا إضافيًا مختلفًا ينبغي التحقق منه صراحة. معيار القبول أن يفهم المستخدم الحد وأن يصل النص المسموح كاملًا دون تلف؛ عداد لطيف الشكل لا يكفي إذا كانت طبقة الحفظ تقيس شيئًا آخر.




