الاختبارات والتحقق
اختبارات الوحدة
لتخفيف الضغط على الأجهزة الأضعف، شغّل الاختبارات هدفًا واحدًا في كل مرة:
cargo test --release <test_name> --lib
التحقق من الجودة
./scripts/check_quality.sh
./scripts/check_representative_examples.sh
./scripts/check_examples_serial_release.sh
يشغّل ./scripts/check_quality.sh ما يلي:
cargo fmt --all --checkcargo clippy --workspace --all-targetsمع قائمة السماح الحالية للديون المعروفة المرتبطة بـ Bevycargo check --workspace --all-targets./scripts/check_public_api_surface.sh./scripts/check_structure_guardrails.sh./scripts/check_engine_boundary_guardrails.shcargo test --workspace --lib
أما ./scripts/check_representative_examples.sh فأصبح يترجم حزمة Android الحالية ثم يفحص أي أدلة أمثلة ما تزال موجودة في مساحة العمل.
ويظل ./scripts/check_examples_serial_release.sh مفيدًا عندما يحتوي الفرع فعليًا على أهداف examples/*.rs؛ أما في هذا الفرع فقد يكتفي بالإبلاغ عن عدم وجود أمثلة تشغيلية داخل مساحة العمل.
التحقق من الوثائق
cargo doc --no-deps
mdbook build docs
خطوط الأداء الأساسية
استخدم هذه الملفات الملتزم بها:
perf_baselines/current_max/2026-04-05/solver_benchmarks.txtperf_baselines/current_max/2026-04-05/runtime_benchmarks.txtperf_baselines/current_max/2026-04-05/manifest.json
التحقق داخل CI
ما تزال GitHub Actions تتحقق من الجودة والوثائق وAPI Docs وفحوص الأمثلة الحالية عبر سير العمل الحالية.
التحقق التسلسلي على الأجهزة الضعيفة
# كل اختبارات lib واحدة تلو الأخرى
./scripts/test_lib_serial_release.sh
# كل أمثلة مساحة العمل الحالية التي يعرفها السكربت
./scripts/check_examples_serial_release.sh
# حزمة Android الحالية مع فحص أمثلة مساحة العمل
./scripts/check_representative_examples.sh
# التحقق الكامل: اختبارات lib + الأمثلة الحالية
./scripts/verify_serial_release.sh
# التحقق التسلسلي لحزمة مساحة عمل محددة
./scripts/test_lib_serial_release.sh -p univis_ui_engine
./scripts/check_examples_serial_release.sh -p univis_ui_engine
./scripts/verify_serial_release.sh -p univis_ui_engine
# حزمة Android مباشرة
cargo check --manifest-path android/android_phone_app/Cargo.toml --all-targets
# تحقق alpha قبل الإصدار
./scripts/verify_alpha_release.sh
# بناءات alpha فقط من دون تحقق
./scripts/package_alpha_serial.sh --no-verify
إستراتيجية عملية قبل الدمج
- شغّل اختبارات الوحدة المرتبطة بالتغيير
- شغّل
./scripts/check_quality.sh - شغّل
./scripts/check_representative_examples.sh - شغّل
cargo check --workspace --examples - شغّل حزمة Android عندما يمس التغيير السطح الحي الحالي
- استخدم التحقق البصري عندما يكون التغيير ثقيلًا في الرندر أو التخطيط أو التفاعل
المطلوب قبل قطع alpha التالية
./scripts/check_quality.shmdbook build docscargo doc -p univis_ui_style --no-depscargo doc -p univis_ui_engine --no-depscargo doc -p univis_ui_interaction --no-depscargo doc -p univis_ui_widgets --no-depscargo doc -p univis_ui --no-depscargo check --manifest-path android/android_phone_app/Cargo.toml --all-targets./scripts/check_representative_examples.sh- مرور يدوي واحد عبر حزمة Android والأمثلة الحالية المرتبطة
- مرور واحد عبر جاهزية الإصدار
سياسة لقطات الشاشة
- تبقى لقطات الشاشة مواد تحضير يدوية قبل الإصدار
- يمكن لمعرض الأمثلة أن يربط إلى مراجع بصرية ثابتة
- توليد لقطات الشاشة ليس بوابة CI إلزامية في خط alpha الحالي