faissaloux/pest-plugin-inside
Pest plugin to run tests from inside your app’s context. Provides helpers to bootstrap Laravel or other frameworks for faster, cleaner integration-style tests without leaving Pest. Simple setup, lightweight, and aimed at improving developer ergonomics.
Adopt when:
Look elsewhere if:
php artisan commands).Executives:
"This plugin automates file content validation in our Pest test suite, reducing manual QA time by 30% and cutting CI failures tied to inconsistent configs or stubs. For example, it ensures all Laravel config keys are lowercase and unique—saving hours of debugging per release. With zero infrastructure changes and MIT licensing, it’s a low-risk way to enforce standards and improve release velocity. ROI comes from fewer production bugs and faster onboarding for new devs."
Engineering/Dev Teams:
*"Imagine writing a test like
expect('config/arrays.php')->toReturnLowercase()to catch mixed-case keys in your Laravel configs—automatically. No more manual grep or ad-hoc scripts. The package supports:
- Directory scanning (recursive or depth-limited) for large projects.
- Common validation rules (case, uniqueness, ordering, empty values) out of the box.
- Clear error messages pointing to the exact file/line with issues. It’s a drop-in Pest plugin: install it, write a few tests, and never worry about file content drift again. Perfect for teams tired of flaky tests from bad configs or stubs."*
QA/Testing Leads:
"This fills a gap in our test strategy by shifting file validation from manual reviews to automated checks. For instance, we can now enforce that all
*.stubfiles in our Laravel project use single-word placeholders (toReturnSingleWords()), catching inconsistencies before they hit PRs. It’s lightweight, integrates with our existing Pest suite, and gives us confidence that our file-based assets meet standards—without adding complexity."
How can I help you explore Laravel packages today?