البرمجة

تحميل ملف تكوين مختلف في اختبارات Spring Boot

عند استخدام تطبيق Spring Boot، يتم تحميل ملف التكوين الرئيسي application.yml من مسار src/main/resources/config/application.yml تلقائيًا. ومع ذلك، قد تحتاج في بعض الأحيان إلى تحميل ملف تكوين مختلف أثناء تشغيل اختباراتك.

لتحميل ملف تكوين مختلف أثناء تشغيل الاختبار، يمكنك استخدام بيئة تشغيل مختلفة للاختبار باستخدام متغيرات البيئة أو التهيئة المناسبة. في الحالة الافتراضية، تعتمد Spring Boot على ملف application.yml للتكوين، ولكن يمكنك تجاوز هذا عن طريق تحديد ملف تكوين مخصص خلال تشغيل الاختبار.

في سياق اختبارات الوحدة والاندماج، يمكنك استخدام تهيئة مختلفة لتحميل ملف تكوين مختلف. يمكنك القيام بذلك عن طريق تحديد بيئة تشغيل مختلفة للاختبار باستخدام تهيئة أو متغيرات البيئة.

على سبيل المثال، يمكنك إنشاء ملف تكوين خاص بالاختبار بالاسم المخصص مثل application-test.yml. بعد ذلك، يمكنك تحديد استخدام هذا الملف في اختبارك من خلال تعيين بيئة التشغيل بواسطة متغير البيئة spring.profiles.active في اختبارك.

فيما يلي كيفية القيام بذلك:

  1. إنشاء ملف تكوين للاختبار باسم application-test.yml في مسار src/test/resources/config/application-test.yml.

  2. تعديل اختبارك لتعيين بيئة التشغيل إلى “test” باستخدام متغير البيئة spring.profiles.active.

java
@RunWith(SpringJUnit4ClassRunner.class) @SpringApplicationConfiguration(classes = Application.class) @WebAppConfiguration @IntegrationTest @ActiveProfiles("test") public class MyIntTest { // اختباراتك هنا }

بهذه الطريقة، سيقوم Spring Boot بتحميل ملف التكوين application-test.yml خلال تشغيل اختبارات الوحدة والاندماج التي تستخدم بيئة التشغيل “test”.

باستخدام هذا النهج، يمكنك تجاوز ملف التكوين الافتراضي application.yml في اختباراتك واستخدام ملف تكوين مختلف بسهولة لاحتياجات الاختبار الخاصة بك.

المزيد من المعلومات

بالطبع، إليك المزيد من المعلومات حول كيفية تحميل ملف تكوين مختلف في اختبارات Spring Boot:

  1. استخدام تهيئة خاصة بالاختبارات:
    بعض الأحيان قد تحتاج إلى تخصيص تكوينات محددة فقط للاختبارات دون تغيير ملف التكوين الرئيسي. يمكنك القيام بذلك باستخدام تهيئة خاصة بالاختبارات في الشيفرة الخاصة بالاختبار.

    على سبيل المثال، يمكنك إنشاء ملف تهيئة خاص بالاختبارات مثل TestConfig.java:

    java
    @Configuration @Profile("test") public class TestConfig { // تكوينات الاختبار هنا }

    ثم يتم تضمينه في اختبارك:

    java
    @RunWith(SpringJUnit4ClassRunner.class) @SpringApplicationConfiguration(classes = {Application.class, TestConfig.class}) @WebAppConfiguration @IntegrationTest public class MyIntTest { // اختباراتك هنا }

    باستخدام هذا النهج، يمكنك تخصيص تكوينات معينة فقط للاختبارات دون التأثير على تكوينات التطبيق الأساسية.

  2. تكوينات البيئة:
    قد تستخدم Spring Boot تكوينات مختلفة بناءً على بيئة التشغيل الحالية. يمكنك الاستفادة من هذه الخاصية لتحميل ملف تكوين مختلف بناءً على بيئة الاختبار.

    مثلا، إذا كنت تستخدم بيئة الإنتاج في التشغيل العادي وبيئة الاختبار في الاختبارات، يمكنك إنشاء ملف تكوين خاص بالاختبار مثل application-test.yml وتحميله تلقائيًا في اختباراتك باستخدام بيئة الاختبار.

    لتحديد بيئة التشغيل، يمكنك استخدام متغير البيئة spring.profiles.active في اختبارك كما سبق ذكره.

    توجد العديد من الطرق لتحميل ملف تكوين مختلف في اختبارات Spring Boot، وتختلف الطرق وفقًا لاحتياجات تطبيقك وتفضيلاتك الشخصية. من خلال استخدام الممارسات الجيدة والأساليب المناسبة، يمكنك تحقيق أقصى استفادة من إمكانيات Spring Boot وضمان قابلية اختبار تطبيقك بكفاءة.

زر الذهاب إلى الأعلى