التقاط تغطية التعليمات البرمجية من Go Binary
عند تشغيل اختبارات الوحدة، يكون التقاط تغطية التعليمات البرمجية أمرًا مباشرًا. ومع ذلك، فإن جمع مقاييس التغطية أثناء اختبارات التكامل مقابل الثنائي نفسه يمكن أن يكون أمرًا صعبًا. هل هناك طريقة للتغلب على هذه العقبة؟
الحاجة إلى تغطية اختبار التكامل
توفر اختبارات التكامل رؤية أكثر شمولاً لتغطية التعليمات البرمجية من اختبارات الوحدة وحدها. من خلال تشغيل الملف الثنائي مقابل مدخلات العالم الحقيقي، يمكننا تقييم كيفية عمل التعليمات البرمجية الخاصة بنا في ظل ظروف مختلفة.
التحدي
تعمل أداة تغطية Go فقط بالاشتراك مع حزمة الاختبار. يشكل هذا مشكلة بالنسبة لاختبارات التكامل التي لا تتلاءم عادة مع هذا الإطار.
الحل: اختبارات التكامل في إطار اختبار Go
للحصول على التغطية من اختبارات التكامل ، نحتاج إلى دمجها في حزمة الاختبار بطريقة ما.
func TestMainApp(t *testing.T) {
go main()
// ... Start integration tests here
}
موارد أخرى
للاطلاع على مناقشة سابقة حول هذا الموضوع، راجع مقال "اذهب إلى التغطية مع الاختبارات الخارجية"، والذي يستكشف نهجًا مشابهًا.تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3