اختبار وحدات Go المتداخلة
قد يكون تشغيل اختبار go أمرًا صعبًا عند العمل مع وحدات Go المتعددة. الطريقة التقليدية لاستخدام go test./... سوف تفشل مع ظهور خطأ يشير إلى عدم وجود حزم متطابقة أو عدم وجود حزم للاختبار.
وهذا لأن اختبار go مصمم للعمل على وحدة واحدة، وليس متعددة. لاختبار الوحدات المتداخلة، يلزم اتباع نهج مختلف.
يتضمن أحد الحلول استخدام خدعة الصدفة لتنفيذ اختبار go في كل وحدة على حدة. على سبيل المثال، يمكنك استخدام البحث للبحث عن الدلائل التي تحتوي على ملفات go.mod وتشغيل اختبار go داخل كل من هذه الدلائل:
find . -type d -name go.mod -exec go test {}
بدلاً من ذلك، يمكنك إنشاء برنامج نصي مساعد أو Makefile للتكرار عبر الدلائل المطلوبة وتشغيل اختبار go وفقًا لذلك:
# test.sh
#!/bin/bash
for dir in */; do
if [ -f "$dir/go.mod" ]; then
go test "$dir"
fi
done
قد تحتفظ بعض المشاريع الكبيرة بقائمة بجميع الوحدات الفرعية وتستخدم البرامج النصية مثل تلك الموجودة في المثال أعلاه لتسهيل الاختبار.
من خلال استخدام هذه التقنيات، يمكنك إجراء الاختبارات بشكل فعال عبر عدة متداخلة انتقل إلى الوحدات النمطية من الدليل الأصلي.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3