# Pest > Pest is an elegant PHP testing framework with a focus on simplicity, designed to bring the joy of testing to PHP. - [Full Documentation](https://pestphp.com/llms-full.txt): Complete Pest documentation in a single file ## Getting Started - [Installation](https://pestphp.com/docs/installation/llms.txt): Installing Pest PHP Testing Framework is a simple process that can be completed in just a few steps. - [Editor Setup](https://pestphp.com/docs/editor-setup/llms.txt): An editor plugin can significantly enhance the developer experience when working with Pest PHP. - [Writing Tests](https://pestphp.com/docs/writing-tests/llms.txt): Next let's get a brief overview of how to write tests using Pest. - [Expectations](https://pestphp.com/docs/expectations/llms.txt): By setting expectations for your tests using the Pest expectation API, you can easily identify bugs and other issues ... - [Hooks](https://pestphp.com/docs/hooks/llms.txt): Pest hooks are similar to the steps that you might take when preparing a meal - first, you gather and prepare the ing... - [Datasets](https://pestphp.com/docs/datasets/llms.txt): With datasets, you can define an array of test data and Pest will run the same test for each set automatically. - [Exceptions](https://pestphp.com/docs/exceptions/llms.txt): When testing behavior in PHP, you might need to check if an exception or error has been thrown. - [Filtering Tests](https://pestphp.com/docs/filtering-tests/llms.txt): When you run `./vendor/bin/pest`, Pest executes the complete test suite by default. - [Skipping Tests](https://pestphp.com/docs/skipping-tests/llms.txt): During the development process, there may be times when you need to temporarily disable a test. - [Optimizing Tests](https://pestphp.com/docs/optimizing-tests/llms.txt): Pest offers several optimization techniques to help developers write efficient and high-performing tests. - [Continuous Integration](https://pestphp.com/docs/continuous-integration/llms.txt): Up until now, we have only discussed running tests from the command line on your local machine. ## Digging Deeper - [Configuring Tests](https://pestphp.com/docs/configuring-tests/llms.txt): The `Pest.php` file is a configuration file that is used to define your test suite setup. - [Grouping Tests](https://pestphp.com/docs/grouping-tests/llms.txt): You can assign tests folders to various groups using Pest's `group()` method. - [Global Hooks](https://pestphp.com/docs/global-hooks/llms.txt): As previously discussed, hooks allow you to simplify your testing process and automate repetitive tasks that you may ... - [Mocking](https://pestphp.com/docs/mocking/llms.txt): When testing your applications, you may want to "mock" specific classes to prevent them from actually being invoked d... - [Plugins](https://pestphp.com/docs/plugins/llms.txt): In this section, we will discuss the official and community developed plugins that we endorse. - [Team Management](https://pestphp.com/docs/team-management/llms.txt): In this section, we will discuss the process of managing a small team of developers who directly in your Pest test su... - [Browser Testing](https://pestphp.com/docs/browser-testing/llms.txt) - [Architecture Testing](https://pestphp.com/docs/arch-testing/llms.txt): Architecture testing enables you to specify expectations that test whether your application adheres to a set of archi... - [Stress Testing](https://pestphp.com/docs/stress-testing/llms.txt): Stress Testing is a type of testing that inspects the stability and reliability of your application under realistic o... - [Test Coverage](https://pestphp.com/docs/test-coverage/llms.txt): Test coverage (or code coverage) is a metric used to measure the percentage of code that is executed during testing. - [Type Coverage](https://pestphp.com/docs/type-coverage/llms.txt): Type Coverage is a metric used to measure the percentage of code that is covered by type declarations - [Mutation Testing](https://pestphp.com/docs/mutation-testing/llms.txt): Mutation Testing is a technique used to evaluate the quality of test suites by introducing small changes (mutations) ... - [Snapshot Testing](https://pestphp.com/docs/snapshot-testing/llms.txt): Snapshot Testing is a great way to test your code by comparing by the given expectation value to a previously stored ... - [Custom Helpers](https://pestphp.com/docs/custom-helpers/llms.txt): If you're transitioning to a functional approach for writing tests, you may wonder where to put your helpers that use... - [Custom Expectations](https://pestphp.com/docs/custom-expectations/llms.txt): Pest's expectation API is powerful by default, but there may be times when you need to write the same expectations re... - [Profanity](https://pestphp.com/docs/profanity/llms.txt): The Profanity plugin will scan your codebase for profanity in places like comments, constants and properties ## Advanced Topics - [CLI API Reference](https://pestphp.com/docs/cli-api-reference/llms.txt): In the preceding chapters of the Pest documentation, we have covered numerous CLI options that are available in Pest. - [Test Dependencies](https://pestphp.com/docs/test-dependencies/llms.txt): Sometimes, tests require certain preconditions or events to occur prior to their execution or else they will not succ... - [Creating Plugins](https://pestphp.com/docs/creating-plugins/llms.txt): Community plugins are essential for offering additional features to the Pest community, while the Pest team prioritiz... - [Higher Order Testing](https://pestphp.com/docs/higher-order-testing/llms.txt): Although "High Order Testing" may appear to be a complex term, it is actually a technique that simplifies your tests ... ## Optional - [Pest v4 is Here! Now with Browser Testing](https://pestphp.com/docs/pest-v4-is-here-now-with-browser-testing/llms.txt): Today, we're thrilled to announce Pest v4 — our biggest release yet, featuring powerful new browser testing with para... - [Pest v3 Now Available](https://pestphp.com/docs/pest3-now-available/llms.txt): Today, we're thrilled to announce the release of Pest 3. - [Announcing Stressless](https://pestphp.com/docs/announcing-stressless/llms.txt): We are thrilled to announce the release of a brand new plugin for Pest PHP: Stressless - it brings the power of stres... - [Pest's Spicy Summer Release](https://pestphp.com/docs/pest-spicy-summer-release/llms.txt): Pest's Spicy Summer release is here - snapshot testing, describe blocks, type coverage, and more... - [Announcing Pest 2.0](https://pestphp.com/docs/announcing-pest2/llms.txt): The Pest team is thrilled to unveil the release of Pest 2.0 after a development period of 18 months and over 500 comm... - [Why Pest](https://pestphp.com/docs/why-pest/llms.txt): When testing PHP code, you have access to a range of frameworks. - [Video Resources](https://pestphp.com/docs/video-resources/llms.txt): Ever since the introduction of Pest to the world, the community has been inundating social media with online video co... - [Support Policy](https://pestphp.com/docs/support-policy/llms.txt): We strive to resolve all reported bugs or issues to the best of our abilities as an open-source project. - [Upgrade Guide](https://pestphp.com/docs/upgrade-guide/llms.txt): Upgrading To 4.x From 3.x - [Migration From PHPUnit Guide](https://pestphp.com/docs/migrating-from-phpunit-guide/llms.txt): Migrating from PHPUnit to Pest is a simple process that can be completed in just a few steps. - [Community Guide](https://pestphp.com/docs/community-guide/llms.txt): Our project aims to develop the world's finest testing framework that not only establishes itself as the standard cho...