اختبار الوحدة هو نهج عملي لزيادة دقة وجودة البرمجيات، و لكن كتابة التعليمات
البرمجية لاختبار الوحدة هو عمل مضن و ممل و يحتاج الكثير من الوقت و الجهد. و ذلك سيحتاج الأمر JUnit حتى مع استخدام أطر عمل لكتابة و تشغيل اختبار الوحدة مثل الكثير من الوقت و الجهد. و بالتالي فإن هناك دوماً صعوبة في كتابة التعليمات البرمجية الخاصة بالاختبار. لذلك نقدم في هذا البحث طريقة جديدة لتوليد اختبار الوحدة آلياً بهدف تسريع عملية الاختبار و تقليل الكلفة. قمنا بتنفيذ هذه الطريقة على لغة البرمجة جافا حيث نقوم بكتابة توصيف جديد يُسمى JFS يصف سلوك الدالة من حيث الدخل و الخرج. يتم كتابة هذا التوصيف داخل صف التعليمات البرمجية و يكون مستقل عن التعليمات البرمجية، و يمكن كتابته قبل البدء بكتابة النص البرمجي و بالتالي نحقق مبدأ TDD أي التطوير المقاد بالاختبار الذي يعتمد على كتابة الاختبار أولاً بهدف تحسين عملية التطوير. و بعد كتابة التوصيف نقوم بتوليد صفوف الاختبار الخاصة بتنفيذ اختبار الوحدة (قمنا باستخدام إطار العمل JUnit لتنفيذ اختبار الوحدة) بناءاً على التوصيف الجديد.
Unit testing is a practical approach for increasing the correctness
and quality of software; but writing unit test code is exhausting and
tedious job; and requires a great deal of time and effort. So even
with the use of frameworks for writing and running unit test such as
JUnit this will need a great deal of time and effort. As a
consequence, there is a pressure in writing testing code. So we
present in this paper a new method to generate unit testing
automatically in order to speed up the testing process and reduce
the cost. We have implemented this method on the Java
programming language, where we write a new specification called
JFS describes the behavior of the function in terms of input and
output. This specification is written inside the code class and is
independent of the code, and it can be written before starting the
code phase and thus achieve the principle TDD Test-Driven
Development which is based on written test-first in order to
improve the development process. After writing specification we
will generate test classes for the execution of unit testing (we used
JUnit as framework to execute unit testing) based on the new
specification.
المراجع المستخدمة
John A. van der Poll," Formal methods in software development: A road less travelled", July 2010
Sami Vaaraniemi." The benefits of automated unit testing", 2003
Vincent Massol with Ted Husted,"JUnit IN ACTION",2004
تتضمن هذه المحاضرة مراجعة سريعة لبعض المفاهيم الأساسية في لغة البرمجة جافا أهمها: أنواع البيانات, المتحولات, العبارات الشرطية و الحلقات التكرارية و الصفوف و الوراثة
تهدف هذه الجلسة لمراجعة المزيد من المفاهيم الأساسية في لغة جافا و هي الصفوف التي تمثل الأنواع الأولية, الإستثنائات و المصفوفات و الحزم و الواجهات.
تهدف هذه المحاضرة إلى تعريف الطلاب بمفهوم النياسب في لغة جافا و كيفية إنشائها و مزامنتها مع بعضها البعض.
أصبحت الشبكات العصبية العميقة ونماذج اللغة الضخمة في كل شيء في تطبيقات اللغة الطبيعية. نظرا لأنهم معروفون بطلب كميات كبيرة من بيانات التدريب، فهناك مجموعة متنامية من العمل لتحسين الأداء في إعدادات الموارد المنخفضة. بدافع من التغييرات الأساسية الأخيرة
حققت الترجمة الآلية العصبية غير الخاضعة للرقابة (UNMT) التي تعتمد فقط على Glassive Monolingual Corpora نتائج ملحوظة في العديد من مهام الترجمة.ومع ذلك، في سيناريوهات العالم الواقعي، لا توجد سورانيا أحادية الأبعاد الضخمة لبعض لغات الموارد المنخفضة للغا