codeception/lib-innerbrowser
InnerBrowser module for Codeception that simulates browser requests without a real browser. Useful for functional testing PHP web apps by sending GET/POST requests, managing cookies and sessions, following redirects, and asserting responses quickly in-memory.
Adopt when:
DomCrawler, HttpFoundation) or Laravel, and you want to avoid external dependencies like Selenium.Look elsewhere when:
For Executives: "InnerBrowser cuts our functional testing costs by eliminating browser infrastructure while maintaining 95%+ coverage for backend logic. For a Laravel app with 500+ tests, this reduces CI runtime from 20 minutes to 4 minutes, freeing up $12K/year in cloud costs (based on AWS Lambda@Edge pricing). It’s a force multiplier for engineering—teams can ship features faster without sacrificing test quality. The MIT license and Codeception ecosystem ensure long-term viability, with no vendor lock-in."
For Engineering Leaders: *"This is the Swiss Army knife for Laravel testing. InnerBrowser lets us:
seeElement(), dontSee()).actingAs(), followRedirects()).
It’s the default choice for backend tests—only escalate to Playwright/Dusk for JavaScript-heavy flows. Zero maintenance compared to Selenium grids."*For Developers:
*"If you’re writing tests for Laravel’s routes, forms, or API endpoints, InnerBrowser is already powering your PhpBrowser tests—no setup needed. Key perks:
$I->see('Welcome') works on raw HTML strings or live responses.debugSection() dumps DOM snapshots mid-test.PhpBrowser + custom middleware."*How can I help you explore Laravel packages today?