insta: مكتبة اختبار اللقطات لـ Rust
اختبارات اللقطات (تسمى أحيانًا اختبارات الموافقة) هي اختبارات تؤكد القيم مقابل قيمة مرجعية (اللقطة). وهذا مشابه لكيفية assert_eq!
تتيح لك مقارنة قيمة بقيمة مرجعية، ولكن على عكس تأكيدات السلسلة البسيطة، تتيح لك اختبارات اللقطة اختبار القيم المعقدة وتأتي مع أدوات شاملة لمراجعة التغييرات.
تعتبر اختبارات اللقطة مفيدة بشكل خاص إذا كانت قيمك المرجعية كبيرة جدًا أو تتغير كثيرًا.
#[test]fn test_hello_world() {insta::assert_debug_snapshot!(vec![1, 2, 3]);}
فضولي؟ يوجد تسجيل للشاشة يُظهر سير العمل بالكامل: شاهد التسجيل الرقمي للشاشة لمقدمة إنستا. أو إذا لم تكن من محبي مقاطع الفيديو، فاقرأ المقدمة التي تبلغ مدتها 5 دقائق.
يدعم Insta أيضًا اللقطات المضمنة التي يتم تخزينها مباشرة في ملف المصدر الخاص بك بدلاً من الملفات المنفصلة. يتم تحقيق ذلك عن طريق أداة Cargo-Insta المصاحبة.
وللنظر إلى ملفات .snap
، يوجد ملحق vscode يمكنه تسليط الضوء على ملفات اللقطات ومراجعة اللقطات والمزيد. يمكن تثبيته من السوق: عرض على السوق.
يستخدم Insta similar
لجميع عملياته المختلفة. يمكنك استخدامه بشكل مستقل عن إنستا. يمكنك استخدام صندوق similar-asserts
للحصول على اختلافات مضمّنة لـ assert_eq!
الماكرو لتحقيق الفروق مثل insta لإجراء مقارنات منتظمة:
استخدم like_asserts::assert_eq;fn main() {let signal = vec![1, 2, 3, 4];assert_eq!(reference, (0..4).collect::<Vec<_>>()) ;}
إذا أعجبك المشروع ووجدته مفيدًا، يمكنك أن تصبح راعيًا له.
موقع المشروع
التوثيق
تعقب المشكلة
الترخيص: أباتشي-2.0