PHPackages                             qa-tools/qa-tools - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Testing &amp; Quality](/categories/testing)
4. /
5. qa-tools/qa-tools

ActiveLibrary[Testing &amp; Quality](/categories/testing)

qa-tools/qa-tools
=================

Library that provides easy-to-use way of interaction with web-page elements in functional tests using PageObject pattern.

v1.3.0(1y ago)5232.2k14[25 issues](https://github.com/qa-tools/qa-tools/issues)1BSD-3-ClausePHPPHP &gt;=5.6.0CI passing

Since Feb 8Pushed 4w ago8 watchersCompare

[ Source](https://github.com/qa-tools/qa-tools)[ Packagist](https://packagist.org/packages/qa-tools/qa-tools)[ RSS](/packages/qa-tools-qa-tools/feed)WikiDiscussions master Synced 1w ago

READMEChangelog (9)Dependencies (7)Versions (11)Used By (1)

QA-Tools
========

[](#qa-tools)

[![Join the chat at https://gitter.im/qa-tools/qa-tools](https://camo.githubusercontent.com/abe08b740a4156153736f791393ec4da6619c4be73212e75769f52edacc0e2b5/68747470733a2f2f6261646765732e6769747465722e696d2f4a6f696e253230436861742e737667)](https://gitter.im/qa-tools/qa-tools?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)[![CI](https://github.com/qa-tools/qa-tools/actions/workflows/tests.yml/badge.svg)](https://github.com/qa-tools/qa-tools/actions/workflows/tests.yml)[![Docs](https://github.com/qa-tools/qa-tools/actions/workflows/docs.yml/badge.svg)](https://github.com/qa-tools/qa-tools/actions/workflows/docs.yml)[![Documentation Status](https://camo.githubusercontent.com/0afcaacbbdb918a552dbe5843f8e3c9a624fe425b7bf561057eb49f5f443473e/68747470733a2f2f72656164746865646f63732e6f72672f70726f6a656374732f71612d746f6f6c732f62616467652f3f76657273696f6e3d6c6174657374)](https://qa-tools.readthedocs.io/en/latest/?badge=latest)

[![Scrutinizer Code Quality](https://camo.githubusercontent.com/c2fb13157c30caea4df16fb70d0a08b48e4693a3e2922089a9945ed3442f8656/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f71612d746f6f6c732f71612d746f6f6c732f6261646765732f7175616c6974792d73636f72652e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/qa-tools/qa-tools/?branch=master)[![codecov](https://camo.githubusercontent.com/cda35866338b7f446cfd4f63b95f49ebb3b5de8518a518a4b00feb5a9abf01cd/68747470733a2f2f636f6465636f762e696f2f67682f71612d746f6f6c732f71612d746f6f6c732f6272616e63682f6d61737465722f67726170682f62616467652e737667)](https://codecov.io/gh/qa-tools/qa-tools)[![Dependency Status](https://camo.githubusercontent.com/d1c06a8257eca9e00f8b390fce3f0bf1692ce5845412de32f4b222ac3bb52b3e/68747470733a2f2f7777772e76657273696f6e6579652e636f6d2f757365722f70726f6a656374732f3533653165356431656265346131623338643030303030612f62616467652e7376673f7374796c653d666c6174)](https://www.versioneye.com/user/projects/53e1e5d1ebe4a1b38d00000a)

[![Latest Stable Version](https://camo.githubusercontent.com/92ee2ec0848d18525bd28d7d96487a42192b07094542c66442ae875e8916c12d/68747470733a2f2f706f7365722e707567782e6f72672f71612d746f6f6c732f71612d746f6f6c732f762f737461626c65)](https://packagist.org/packages/qa-tools/qa-tools)[![Total Downloads](https://camo.githubusercontent.com/2d38831ed1830236ab01bfa930c5f4fcc021a3c01375e69ff6ff4ab6982339dc/68747470733a2f2f706f7365722e707567782e6f72672f71612d746f6f6c732f71612d746f6f6c732f646f776e6c6f616473)](https://packagist.org/packages/qa-tools/qa-tools)[![Latest Unstable Version](https://camo.githubusercontent.com/e62856f297b9e80a6892554778ad96b9a37efd8c1855ba83a0d4193d8c47e56d/68747470733a2f2f706f7365722e707567782e6f72672f71612d746f6f6c732f71612d746f6f6c732f762f756e737461626c65)](https://packagist.org/packages/qa-tools/qa-tools)[![License](https://camo.githubusercontent.com/306c3c544ca6608817dc4671acb0b65c0dc87147d33375c30493cec7876e98ab/68747470733a2f2f706f7365722e707567782e6f72672f71612d746f6f6c732f71612d746f6f6c732f6c6963656e7365)](https://packagist.org/packages/qa-tools/qa-tools)

QA-Tools is a set of quality assurance tools to be used during acceptance tests writing on PHP.

Library implements **PageObject pattern**, used in variety of testing frameworks (e.g. Selenium browser automation framework).

Website and Documentation
-------------------------

[](#website-and-documentation)

- Website:
- Documentation:
- Demo using PHPUnit:

Asking Questions
----------------

[](#asking-questions)

Feel free to ask any questions and share your experiences in the [Chat Room](https://gitter.im/qa-tools/qa-tools) and help to improve the documentation.

Installation
------------

[](#installation)

- execute this command to add dependencies: `php composer.phar require qa-tools/qa-tools:^1.0`

Requirements
------------

[](#requirements)

- [Composer](https://getcomposer.org/download/)
- [MinkExtension](https://github.com/Behat/MinkExtension), when [Behat](https://github.com/Behat/Behat) is used.
- [QA-Tools / PHPUnit Extension](https://github.com/qa-tools/phpunit-extension), when [PHPUnit](https://github.com/sebastianbergmann/phpunit) is used.
- [Mink](https://github.com/minkphp/Mink) in other cases.

Contributing
------------

[](#contributing)

See [CONTRIBUTING](CONTRIBUTING.md) file.

License
-------

[](#license)

QA-Tools is released under the BSD-3-Clause License. See the bundled [LICENSE](LICENSE) file for details.

###  Health Score

48

—

FairBetter than 94% of packages

Maintenance60

Regular maintenance activity

Popularity36

Limited adoption so far

Community22

Small or concentrated contributor base

Maturity64

Established project with proven stability

 Bus Factor1

Top contributor holds 62.5% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~493 days

Recently: every ~770 days

Total

9

Last Release

533d ago

Major Versions

v0.0.1 → v1.0.02014-08-23

PHP version history (3 changes)v0.0.1PHP &gt;=5.3.1

v1.0.0PHP &gt;=5.3.2

v1.2.2PHP &gt;=5.6.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/84e70d0bdeaa7cd5875b73c862ccd8359d2df057fb48a716fdd14d99a7f24fca?d=identicon)[aik099](/maintainers/aik099)

---

Top Contributors

[![aik099](https://avatars.githubusercontent.com/u/1277526?v=4)](https://github.com/aik099 "aik099 (60 commits)")[![evangelion1204](https://avatars.githubusercontent.com/u/685814?v=4)](https://github.com/evangelion1204 "evangelion1204 (27 commits)")[![stof](https://avatars.githubusercontent.com/u/439401?v=4)](https://github.com/stof "stof (4 commits)")[![dependabot-preview[bot]](https://avatars.githubusercontent.com/in/2141?v=4)](https://github.com/dependabot-preview[bot] "dependabot-preview[bot] (3 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (1 commits)")[![michaeltintiuc](https://avatars.githubusercontent.com/u/1321256?v=4)](https://github.com/michaeltintiuc "michaeltintiuc (1 commits)")

---

Tags

pageobject-patternphpqaseleniumwebdriverphpunitMinktestsfunctionalacceptancePageObjectBEMHtmlElements

### Embed Badge

![Health badge](/badges/qa-tools-qa-tools/health.svg)

```
[![Health](https://phpackages.com/badges/qa-tools-qa-tools/health.svg)](https://phpackages.com/packages/qa-tools-qa-tools)
```

###  Alternatives

[aik099/phpunit-mink

Library for using Mink in PHPUnit tests. Supports session sharing between tests in a test case.

72136.2k1](/packages/aik099-phpunit-mink)[whatthejeff/nyancat-phpunit-resultprinter

Nyan Cat result printer for PHPUnit

283689.8k24](/packages/whatthejeff-nyancat-phpunit-resultprinter)[mcustiel/phiremock

A mocker for HTTP and REST services. Full bundle.

151947.1k5](/packages/mcustiel-phiremock)[mcustiel/phiremock-codeception-extension

Codeception extension for Phiremock. Allows to stub remote services for HTTP requests.

311.0M5](/packages/mcustiel-phiremock-codeception-extension)[mcustiel/phiremock-server

A mocker for HTTP and REST services

19843.6k9](/packages/mcustiel-phiremock-server)[phpunit/phpunit-dom-assertions

DOM assertions for PHPUnit

29343.5k11](/packages/phpunit-phpunit-dom-assertions)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
