zenstruck/foundry
A model factory library for creating expressive, auto-completable, on-demand dev/test fixtures with Symfony and Doctrine.
Thành tựu nổi bật
Những danh hiệu mới nhất của dự án
#1 Repository Của Tuần
#1 Repository Của Tuần
#2 Repository Của Tuần
🏗️ Foundry: Tạo fixture test không còn phải "đau đầu"
"Fixtures you'll actually enjoy writing!" — Foundry biến việc tạo dữ liệu test thành trải nghiệm vui vẻ với Symfony và Doctrine.
Foundry là một thư viện model factory giúp bạn tạo ra các fixture phát triển và kiểm thử một cách expressive, auto-completable và on-demand. Dễ dùng như Laravel factories, nhưng dành riêng cho PHP với Symfony và Doctrine.
✨ Điểm nổi bật
- Factory pattern: Tạo factory cho bất kỳ entity nào một cách nhanh chóng với
EntityFactory::new(). - Trạng thái tùy chỉnh: Định nghĩa các trạng thái như
published(),draft()để tạo dữ liệu có nghĩa. - Tự động hoàn thiện: IDE hỗ trợ auto-complete toàn diện nhờ cấu trúc factory rõ ràng.
- Dữ liệu ngẫu nhiên thông minh: Tự động sinh dữ liệu ngẫu nhiên cho các trường chưa chỉ định.
- Hỗ trợ đa nền tảng: Tương thích với
doctrine/orm,doctrine/mongodb-odmhoặc kết hợp cả hai. - Tích hợp sẵn với DoctrineFixturesBundle: Dùng trong loader fixture hoặc trực tiếp trong test.
- Tốc độ test nhanh: Hỗ trợ
dama/doctrine-test-bundleđể tối ưu tốc độ chạy test.
💡 Vì sao đáng chú ý
Foundry được lấy cảm hứng từ Laravel factories nhưng được thiết kế lại cho PHP hiện đại. Thay vì viết tay từng dòng dữ liệu test, bạn chỉ cần định nghĩa factory một lần và tái sử dụng mọi nơi. Điều này giúp giảm đáng kể thời gian viết test và duy duy trì tính nhất quán trong dữ liệu.
Phù hợp với bất kỳ dự án Symfony/Doctrine nào muốn cải thiện quy trình test và quản lý fixture một cách chuyên nghiệp.
#PHP #Symfony #Doctrine #TestFixtures #FactoryPattern #TiniX
Dự án tương tự
Khám phá các dự án và mô hình AI khác có sự tương đồng.
Kimai is the #1 open-source time-tracking application. From freelancers to companies and organisations - everyone can manage timesheets, generate reports, create invoices and so much more... Web-based multi-user application, available as On-Premise or SaaS version: https://www.kimai.org
Symfony integration for the doctrine/migrations library
Symfony integration for the doctrine/data-fixtures library