All Projects â†’ Elliot-Evans-95 â†’ throughout

Elliot-Evans-95 / throughout

Licence: other
🎪 End-to-end testing made simple (using Jest and Puppeteer)

Programming Languages

typescript
32286 projects

Projects that are alternatives of or similar to throughout

Phantomas
Headless Chromium-based web performance metrics collector and monitoring tool
Stars: ✭ 2,191 (+13593.75%)
Mutual labels:  chromium, headless-chrome, puppeteer
Headless Chrome Crawler
Distributed crawler powered by Headless Chrome
Stars: ✭ 5,129 (+31956.25%)
Mutual labels:  chromium, headless-chrome, puppeteer
Webster
a reliable high-level web crawling & scraping framework for Node.js.
Stars: ✭ 364 (+2175%)
Mutual labels:  chromium, headless-chrome, puppeteer
Playwright Go
Playwright for Go a browser automation library to control Chromium, Firefox and WebKit with a single API.
Stars: ✭ 272 (+1600%)
Mutual labels:  selenium, chromium, headless-chrome
pupflare
A webpage proxy that request through Chromium (puppeteer) - can be used to bypass Cloudflare anti bot / anti ddos on any application (like curl)
Stars: ✭ 183 (+1043.75%)
Mutual labels:  chromium, puppeteer
Lambdium
headless chrome + selenium webdriver in AWS Lambda using the serverless application model
Stars: ✭ 246 (+1437.5%)
Mutual labels:  selenium, chromium
headless-chrome-alpine
A Docker container running headless Chrome
Stars: ✭ 26 (+62.5%)
Mutual labels:  chromium, headless-chrome
puppet-master
Puppeteer as a service hosted on Saasify.
Stars: ✭ 25 (+56.25%)
Mutual labels:  headless-chrome, puppeteer
Seleniumbase
A Python framework that inspires developers to become better test automation engineers. 🧠💡
Stars: ✭ 2,520 (+15650%)
Mutual labels:  selenium, end-to-end-testing
CrawlerSamples
This is a Puppeteer+AngleSharp crawler console app samples, used C# 7.1 coding and dotnet core build.
Stars: ✭ 36 (+125%)
Mutual labels:  headless-chrome, puppeteer
playwright-demos
playwright for scrapping and UI testing / automate testing workflows
Stars: ✭ 65 (+306.25%)
Mutual labels:  chromium, puppeteer
Cdp4j
cdp4j - Chrome DevTools Protocol for Java
Stars: ✭ 232 (+1350%)
Mutual labels:  selenium, chromium
Pychromeless
Python Lambda Chrome Automation (naming pending)
Stars: ✭ 219 (+1268.75%)
Mutual labels:  selenium, chromium
clusteer
Clusteer is a Puppeteer wrapper written for Laravel, with the super-power of parallelizing pages across multiple browser instances.
Stars: ✭ 81 (+406.25%)
Mutual labels:  chromium, puppeteer
Chromeless
🖥 Chrome automation made simple. Runs locally or headless on AWS Lambda.
Stars: ✭ 13,254 (+82737.5%)
Mutual labels:  selenium, headless-chrome
puppeteer-lambda
Module for using Headless-Chrome by Puppeteer on AWS Lambda.
Stars: ✭ 117 (+631.25%)
Mutual labels:  headless-chrome, puppeteer
simplechrome
Webrecorders DevTools Protocol Automation Library
Stars: ✭ 16 (+0%)
Mutual labels:  chromium, puppeteer
codepen-puppeteer
Use Puppeteer to download pens from Codepen.io as single html pages
Stars: ✭ 22 (+37.5%)
Mutual labels:  headless-chrome, puppeteer
docker-selenium-lambda
The simplest demo of chrome automation by python and selenium in AWS Lambda
Stars: ✭ 172 (+975%)
Mutual labels:  selenium, chromium
puppeteer-autoscroll-down
Handle infinite scroll on websites by puppeteer
Stars: ✭ 40 (+150%)
Mutual labels:  headless-chrome, puppeteer

Throughout Travis build status

End-to-end testing made simple

Throughout combines Jest and Puppeteer to create a FAST End to End testing environment.

Installation

*Note: Throughout requires at least Node v6.4.0 due to Puppeteer

To install Throughout using NPM:

npm i throughout-chrome

To install Throughout using Yarn:

yarn add throughout-chrome

Note: Puppeteer downloads Chromium.

Usage

To use Throughout please refer to Jest's API and Puppeteer's API.

Here is an example of a test

import * as puppeteer from 'puppeteer';
import { throughoutSettings, throughoutDebug, setViewportAsDesktop } from '../src/browser'; // imported from throughout
import { urlList } from '../testBed/url'; // the url you are testing

describe('Given this is a test', () => {

    let page;
    let browser;
    let debug;

    beforeAll(async () => {
        browser = await puppeteer.launch(throughoutSettings);
        page = await browser.newPage();
        debug = await throughoutDebug('Pokedex PWA Test', page, browser); // throughout will debug for you
        setViewportAsDesktop(page);

        await page.goto(urlList.POKEMON);
    });

    describe('When the user clicks the pokemon link', () => {

        beforeAll(async () => {
            await page.click('#pokemon-link');
        });

        it('Then the pokemon list should be visible', async () => {
            expect(await page.$('#monsters-list')).toBeTruthy();
        });
    });
});

Default settings

  • Uses Headless mode
  • Runs a bundled version of Chromium
  • Runs tests in parallel

Contributors

Throughout was made by Elliot Evans

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].