Cmockery هي مكتبة خفيفة الوزن تستخدم لتأليف اختبارات وحدة C.
يتم تجميع اختبارات cmockery في المواد التنفيذية المستقلة وترتبط بمكتبة Cmockery ، ومكتبة C القياسية ، والوحدة التي يتم اختبارها. يجب السخرية من أي رموز خارجية للوحدة التي يتم اختبارها - يتم استبدالها بوظائف ترجع قيم الإرجاع التي تحددها الاختبار - ضمن تطبيق الاختبار. على الرغم من أن الاختلافات المهمة قد توجد بين بيئة التنفيذ المستهدفة لوحدة الكود والبيئة المستخدمة لاختبار الكود ، إلا أن اختبار الوحدة لا يزال صالحًا لأن هدفها هو اختبار منطق وحدات الكود على مستوى وظيفي وليس بالضرورة جميع تفاعلاتها مع بيئة التنفيذ الهدف.
قد لا يكون من الممكن تجميع وحدة في تطبيق اختبار دون تعديل ؛ لذلك ، يجب تعريف رمز المعالج المسبق UNIT_TESTING عند تجميع تطبيقات اختبار وحدة cmockery بحيث يمكن تجميع الكود داخل الوحدة للاختبارات.
يمكن العثور على مزيد من المعلومات التفصيلية حول ميكانيكا اختبارات الكتابة مع cmockery في docs/user_guide.md .
لتجميع مكتبة cmockery وتطبيقات مثال على Linux ، قم بتشغيل:
$ ./configure
$ make
لتجميع Windows ، قم بتشغيل:
> vsvars.bat
> cd windows
> nmake
تم اختبار هذا الرمز على Linux (Ubuntu) و Windows باستخدام VC ++ 7 و VC ++ 8.
هناك مجموعة متنوعة من أطر اختبار الوحدة C المتاحة ؛ ومع ذلك ، فإن العديد منهم معقدون إلى حد ما ويتطلبون أحدث تقنيات برنامج التحويل البرمجي. يتطلب بعض التطوير استخدام المترجمين القدامى مما يجعل من الصعب استخدام بعض أطر اختبار الوحدة. بالإضافة إلى ذلك ، تفترض العديد من أطر اختبار الوحدة أن الرمز الذي يتم اختباره هو تطبيق أو وحدة تم استهدافها لنفس النظام الأساسي الذي سيقوم في نهاية المطاف بتنفيذ الاختبار. بسبب هذا الافتراض ، تتطلب العديد من الأطر إدراج رؤوس مكتبة C القياسية في وحدة الكود التي يتم اختبارها ، والتي قد تصطدم بالتنفيذ المخصص أو غير المكتمل لمكتبة C التي تستخدمها الرمز قيد الاختبار.
يتطلب Cmockery فقط أن يتم ربط تطبيق اختبار بمكتبة C القياسية التي تقلل من النزاعات مع رؤوس مكتبة C القياسية. أيضًا ، يحاول Cmockery تجنب استخدام بعض الميزات الأحدث لمجموعات C.
ينتج عن هذا cmockery أن تكون مكتبة صغيرة نسبيا يمكن استخدامها لاختبار مجموعة متنوعة من التعليمات البرمجية الغريبة. إذا كان المطور يرغب ببساطة في اختبار تطبيق مع أحدث برنامج التحويل البرمجي ، فقد تكون أطراف اختبار الوحدة الأخرى هي الأفضل.
إذا كانت لديك أسئلة حول cmockery ، فاستخدم الموارد التالية:
stack overflow: استخدم علامة cmockery
القائمة البريدية: cmockery (AT) Googlegroups.com (المحفوظات)
للانضمام إلى حساب Google ، استخدم واجهة المستخدم على الويب ؛ للاشتراك/إلغاء الاشتراك مع عنوان بريد إلكتروني تعسفي ، أرسل بريدًا إلكترونيًا إلى:
تم ترخيص Cmockery بموجب ترخيص Apache 2.0 ؛ يرجى الاطلاع على LICENSE.txt للحصول على التفاصيل.