الاختبار في الوقت الفعلي
الاختبار في الوقت الحقيقي هو عملية اختبار أنظمة الكمبيوتر في الوقت الحقيقي .
يُجرى اختبار البرمجيات لاكتشاف الأخطاء البرمجية وتصحيحها . ويشمل الاختبار التأكد من خلو البرنامج من الأخطاء، بالإضافة إلى توفيره للوظائف المطلوبة للمستخدم. يمكن لأساليب الاختبار الثابتة والتقليدية اكتشاف الأخطاء، ولكن هذه الأساليب قد لا تضمن نتائج صحيحة في أنظمة البرمجيات التي تعمل في الوقت الفعلي. تتميز هذه الأنظمة بقيود زمنية صارمة وسلوك حتمي، ما يستلزم جدولة مهامها بما يتوافق مع هذه القيود. لا يُعد التحليل الثابت التقليدي كافيًا للتعامل مع هذه القيود، لذا يُعد إجراء اختبارات إضافية في الوقت الفعلي أمرًا بالغ الأهمية. [ 1 ]
استراتيجية
يمكن اقتراح تصميم حالة الاختبار للاختبار في الوقت الحقيقي في أربع خطوات [ 2 ]
- اختبار المهام
- في الخطوة الأولى، يتم اختبار كل مهمة على حدة باستخدام الاختبار الثابت التقليدي. يُجرى هذا الاختبار فقط لاكتشاف الأخطاء في منطق البرنامج أو بنيته. لا يهم ترتيب الأحداث لأن اختبار المهام لا يتعامل مع قيود التوقيت أو خصائص الأحداث الزمنية.
- الاختبارات السلوكية
- باستخدام نماذج النظام المصممة بمساعدة أدوات الاختبار الآلية، من الممكن محاكاة سلوك النظام في الوقت الحقيقي وتأثير الأحداث الخارجية المتزامنة على سلوكه.
- اختبار المهام المتداخلة
- بعد الانتهاء من اختبار كل مهمة على حدة، يُفترض أن تكون المهمة خالية من الأخطاء في البرمجة والسلوك. ويتم اختبار القيود الزمنية من خلال اختبار المهام المتداخلة. وللكشف عن أخطاء الاتصال، تُختبر المهام غير المتزامنة بمعدلات بيانات متغيرة وأحمال بيانات مختلفة.
- اختبار النظام
- في هذا الاختبار، يتم دمج البرامج والأجهزة ويتم إجراء مجموعة كاملة من اختبارات النظام لاكتشاف الأخطاء، إن وجدت، أثناء عملية الربط بين البرامج والأجهزة .
أدوات للاختبار في الوقت الفعلي
مع تزايد أهمية اختبار الأنظمة في الوقت الحقيقي، توجد بعض الأدوات المصممة خصيصًا لهذا النوع من الاختبار.
ماجستير العلوم
مخططات تسلسل الرسائل هي معيار دولي معتمد لجمع المتطلبات. [ 3 ] توفر مخططات تسلسل الرسائل لغة رسومية ثنائية الأبعاد مطلوبة غالبًا لجمع المتطلبات من خلال بعض سيناريوهات التفاعل.
SDL
لغة المواصفات والوصف ( SDL) هي معيار يُستخدم في التصميم والتحليل. تدعم SDL [ 4 ] مواصفات أنظمة البرمجيات المعقدة، وقد طُبقت على نطاق واسع في مجموعة متنوعة من المجالات، بدءًا من الاتصالات السلكية واللاسلكية والأتمتة ، وصولًا إلى تطوير البرمجيات بشكل عام.
تي تي سي إن
تُعد لغة اختبار البيانات والتحكم فيها (TTCN) لغة الاختبار الوحيدة ذات المعيار الدولي. يوفر الإصدار الثالث من TTCN [ 5 ] نطاق تطبيق أوسع مقارنةً بالإصدارات السابقة من TTCN، التي كانت تركز بشكل أساسي على بروتوكولات نموذج OSI فقط.
تُستخدم هذه المعايير الثلاثة مجتمعةً لاختبار التطبيقات الآنية. من الضروري أن تستوفي هذه النماذج المتطلبات، وأن تتضمن حالات الاختبار المُولَّدة المعلومات الوظيفية والآنية اللازمة لاختبار الأنظمة. كما يجب إدخال التغييرات في متطلبات التصميم والمعلومات الجديدة حول خصائص الأنظمة الآنية في النماذج، وذلك لتحديد تأثيرها.
من أجل التقاط خصائص الوقت الحقيقي لنظام اختبار معين بدقة، ولضمان استخدام المتطلبات والنماذج لتوليد معلومات توقيت واقعية وقابلة للتنفيذ، فمن الضروري أن تحتوي اللغة نفسها (TTCN-3) على نموذج زمني مفهوم جيدًا وسليم دلاليًا.
TTCN-3
خلفية
لغة اختبار TTCN-3 هي اللغة الوحيدة المتاحة حاليًا والمُعتمدة دوليًا. قبل TTCN-3، كانت الإصدارات السابقة محدودة الوظائف والنطاق على بروتوكول OSI. أما TTCN-3 فهي إصدار مُتطور ذو نطاق تطبيق أوسع. من خصائص TTCN-3 ما يلي:
- القدرة على تحديد الاختبارات المتزامنة الديناميكية
- عمليات الاتصال القائمة على الرسائل والإجراءات
- القدرة على تحديد البيانات وقوالب التوقيع باستخدام آليات مطابقة قوية
- تحديد نوع وقيمة المعلمات
- تحديد ومعالجة نتائج الاختبارات
- آليات تحديد معلمات مجموعة الاختبارات واختيار حالات الاختبار
يُعزى استخدام TTCN3 في الاختبارات الآنية إلى مؤقتاتها. تُعرَّف هذه المؤقتات ضمن مجموعات اختبار الدوال ، ولا توجد مؤقتات عامة في TTCN3. يمكن بدء هذه المؤقتات وإيقافها والتحقق منها باستخدام دوال بسيطة مثل timer.start و timer.stop و timer.read.
تُعدّ دلالات اللقطات تقنيةً في TTCN3 (وكذلك في TTCN2)، تُعنى بالرسائل المتبادلة أثناء التواصل بين الأنظمة أو بين التطبيقات قيد الاختبار. عند تلقّي النظام قيد الاختبار سلسلةً من الاستجابات، تُؤخذ لقطة وتُقيّم هذه الاستجابات حسب ترتيب وصولها. لذا، في كل مرة تُمرّر فيها مجموعة من السمات، تُؤخذ لقطة، ولا تُقيّم إلا الأحداث الموجودة في تلك اللقطة.
لكن هذه التقنية غير فعّالة، إذ قد تُفقد بعض الأحداث ومعلومات خصائصها أثناء التقاط اللقطة. قد تُسجّل بعض الأحداث في قائمة المعالجة، ولكن ليس في اللقطة، ما يعني استحالة معالجتها. كذلك، إذا لم يكن جهاز تنفيذ الاختبار سريعًا بما يكفي، فلن يتمكن من التواصل بشكل صحيح مع النظام قيد الاختبار، ما قد يؤدي إلى حدوث أعطال أثناء تقييم الاختبار.
أدوات لينكس
انظر أيضاً
مراجع
- ↑ تساي، جيه جيه بي؛ فانغ، كيه-واي؛ بي، واي-دي. (1990). "حول اختبار وتصحيح البرمجيات في الوقت الحقيقي". وقائع المؤتمر الدولي السنوي الرابع عشر لبرمجيات الحاسوب وتطبيقاتها . الصفحات 512-518 . doi : 10.1109/CMPSAC.1990.139423 . ISBN 978-0-8186-2054-6.
- ↑ بريسمان، روجر س. (2005). هندسة البرمجيات : منهج عملي ( الطبعة السادسة). بوسطن، ماساتشوستس: ماكجرو هيل. ISBN 0-07-285318-2. OCLC 53848343 .
- ↑ توليد حالات اختبار TTCN-3 من مخططات تسلسل الرسائل (PDF) .
- ↑ "جمعية منتدى SDL - الصفحة الرئيسية" . sdl-forum.org . تم الاطلاع عليه بتاريخ 2021-03-08 .
- ↑ "الصفحة الرئيسية" . TTCN-3 . مؤرشف من الأصل بتاريخ 24-07-2008 . تم الاطلاع عليه بتاريخ 08-03-2021 .
- ↑ دالكه، باتريك (2018-02-06). "نظام لينكس في الوقت الحقيقي" . ميديوم . تم الاسترجاع في 2021-03-10 .
- ↑ "أفضل ممارسات الاختبار في الوقت الفعلي - eLinux.org" . eLinux.org . تم الاطلاع عليه بتاريخ 10 مارس 2021 .
- اختبار البرمجيات
- الحوسبة في الوقت الحقيقي
