- Getting Started
- CI/CD
- Roadmap
- Integrations
What is Puth?
Puth is a Browser Testing Framework build on top of puppeteer. It will replace the current browser testing frameworks with an unified and modern framework. It was developed out of pure frustration with current available frameworks.
Getting Started
Puth is a Client/Server application. There are the following options to run a Puth Server:
- npm package (global install or inside a project)
- Docker/Podman (OCI Image)
The following language/framework integrations are currently available:
Running a Puth Server
Npm Package
You can either install puth globally or into your project root. The actual size of the package is about 200KB but the needed chrome binary is big. When executing Puth, it will check for compatible chrome binaries in your home directory ~/.cache/puth and relative to the current working directory in .cache/puppeteer. If Puth can't find a compatible chrome binary, it will automatically download chrome into whatever directory you choose. I recommend you use your home directory to prevent filling up your hard-drive with multiple Chrome copies.
$ npm install --global puth
$ puth start
Docker/Podman
The Puth OCI Image comes with the compatible Chrome version pre-installed.
$ docker run -it --rm -p 127.0.0.1:7345:7345 puthio/puth:0.7.2
Docker Compose Example
services:
puth:
image: puthio/puth:0.7.2
ports:
- 127.0.0.1:7345:7345
## Mount a folder for snapshots if you want to export them as artifacts in your CI/CD
# volumes:
# - ./puth/snapshots:/puth/storage/snapshots