mamchenkov / web-tester
A collection of PHPUnit tests for public website sanity check
dev-master
2014-09-16 07:29 UTC
Requires
- guzzlehttp/guzzle: 4.*
- phpunit/phpunit: 4.2.*
This package is auto-updated.
Last update: 2024-11-08 22:30:15 UTC
README
Web-Tester is a collection of the PHPUnit tests which can be executed against any publicly available website. These are thrown together to make sure the most common things aren't missed out when deploying web projects:
- 200 status code for the website front page
- 301 redirect for www/no-www
- 200 status code and icon content type for the favicon.ico
- 200 status code and text/plain for the robots.txt
- At least one Sitemap URL in robots.txt
- 200 status code for any Sitemap URL in robots.txt
Install
Install with Composer:
{
require: {
"mamchenkov/web-tester": "dev-master"
}
}
Usage
Run all tests with default options for a given domain:
$ vendor/bin/web_tester.sh http://www.domain.com
More control is available via web_tester.json
file. Here is an example:
{
"site": "http://www.google.com",
"timeout": "2",
"skip": [
"WebTester\\BasicTest",
"WebTester\\FaviconTest",
"WebTester\\RobotsTest"
]
}
The URL of the site can be ommitted when it is present in the configuration file:
$ vendor/bin/web_tester.sh
TODO
- HTTPS check
- Custom 404 page check
- Custom 500 page check
- RSS feed autodiscovery check
- Absense of 404 links (recursive? long?)
- HTML/CSS/JS being minimized (recursive? long?)
- Images are optimized (recursive? long?)
- Response times check (recursive? long?)
- SEO checks (page title, description, h1 tags, ALT tags)