A node.js library for testing modern web applications

Overview

Taiko

Docs | API reference

A Node.js library for testing modern web applications

Actions Status License MIT npm version dependencies Status devDependencies Status contributions welcome Contributor Covenant

Taiko REPL

What’s Taiko?

Taiko is a free and open source browser automation tool built by the team behind Gauge from ThoughtWorks. Taiko is a Node.js library with a clear and concise API to automate Chromium based browsers(Chrome, Microsoft Edge, Opera) and Firefox. Tests written in Taiko are highly readable and maintainable.

With Taiko it’s easy to

  • Get Started
  • Record/Write/Run tests

Taiko’s smart selectors make tests reliable by adapting to changes in the structure of your web application. With Taiko there’s no need for id/css/xpath selectors or adding explicit waits (for XHR requests) in test scripts.

Features

Taiko is built ground up to test modern web applications. Here’s a list of a few unique features that sets it apart from other browser automation tools.

  • Easy Installation
  • Interactive Recorder
  • Smart Selectors
  • Handle XHR and dynamic content
  • Request/Response stubbing and mocking

Getting Started

Easy Installation

Taiko works on Windows, MacOS and Linux. You only need Node.js installed in your system to start writing Taiko scripts in JavaScript. After you’ve installed Node.js open a terminal application (or powershell in the case of Windows) and install Taiko using npm with the command

$ npm install -g taiko

This installs Taiko and the latest version of Chromium browser. We are all set to do some testing!

Interactive Recorder

Taiko comes with a Recorder that’s a REPL for writing test scripts. You can use Taiko’s JavaScript API to control the browser from the REPL. To launch the REPL type taiko in your favorite terminal application

$ taiko
Version: 0.8.0 (Chromium:76.0.3803.0)
Type .api for help and .exit to quit
>

This launches the Taiko prompt. You can now use Taiko’s API as commands in this prompt. For example, launch a Chromium browser instance using

> openBrowser()

You can now automate this Chromium browser instance with commands, for example, make the browser search google for something.

> goto("google.com/?hl=en")
> write("taiko test automation")
> click("Google Search")

These commands make the browser go to google’s home page, type the text "taiko test automation" and click on the "Google Search" button. You can see the browser performing these actions as you type and press enter for each command.

Taiko’s REPL keeps a history of all successful commands. Once you finish a flow of execution, you can generate a test script using the special command .code

> .code
const { openBrowser, goto, write, click, closeBrowser } = require('taiko');

(async () => {
    try {
        await openBrowser();
        await goto("google.com");
        await write("taiko test automation");
        await click("Google Search");
    } catch (error) {
            console.error(error);
    } finally {
            closeBrowser();
    }
})();

Taiko generates readable and maintainable JavaScript code. Copy and modify this code or save it directly to a file using

> .code googlesearch.js

You can choose to continue automating or finish the recording using

> .exit

To run a Taiko script pass the file as an argument to taiko

$ taiko googlesearch.js
✔ Browser opened
✔ Navigated to url "http://google.com"
✔ Wrote taiko test automation into the focused element.
✔ Clicked element containing text "Google Search"
✔ Browser closed

By default Taiko runs the script in headless mode, that means it does not launch a browser window. This makes it easy to run Taiko in containers (ex. Docker). To view the browser when the script executes use

$ taiko googlesearch.js --observe

Taiko’s REPL also documents all the API’s. To view all available API’s use the special command .api

$ taiko
Version: 0.8.0 (Chromium:76.0.3803.0)
Type .api for help and .exit to quit
> .api
Browser actions
    openBrowser, closeBrowser, client, switchTo, setViewPort, openTab, closeTab
...

To see more details of an API along with examples use

>.api openBrowser

Launches a browser with a tab. The browser will be closed when the parent node.js process is closed.

Example:
    openBrowser()
    openBrowser({ headless: false })
    openBrowser({args:['--window-size=1440,900']})

Smart Selectors

Taiko’s API treats the browser as a black box. With Taiko we can write scripts by looking at a web page and without inspecting it’s source code For example on google.com the command

> click("Google Search")

clicks on any element with the text Google Search (a button on the page at https://google.com). Taiko’s API mimics user interactions with the browser. For example if you want to write into an element that’s currently in focus use

> write("something")

Or if you want to write into a specific text field

> write("something", into(textBox({placeholder: "Username"})))

With Taiko’s API we can avoid using ids/css/xpath selectors to create reliable tests that don’t break with changes in the web page’s structure.

You can also use Taiko’s proximity selectors to visually locate elements. For example

> click(checkBox(near("Username")))

Will click the checkbox that is nearest to any element with the text Username.

Taiko also supports XPath and CSS selectors

> click($("#button_id")) // Using CSS selector
> click($("//input[@name='button_name']")) // XPath selector

Handle XHR and dynamic content

Taiko’s API listens to actions that trigger XHR request or fetch dynamic content and automatically waits for them to complete before moving on to the next action. Taiko implicitly waits for elements to load on the page before performing executing the command. Scripts written in Taiko are free of explicit local or global waits and the flakiness.

Request/Response stubbing and mocking

Setting up test infrastructure and test data is hard. Taiko makes this easy with the intercept API. For example, block requests on a page (like Google Analytics or any other resource)

> intercept("https://www.google-analytics.com/analytics.js");

Or redirect an XHR request on the page to a test instance

> intercept("https://fetchdata.com", "http://fetchtestdata.com")

Or stub an XHR request to return custom data

> intercept("https://fetchdata.com", {"test": data})

Or even modify data sent by XHR requests

> intercept("https://fetchdata.com", (request) => {request.continue({"custom": "data"})})

This simplifies our test setups as we don’t have to set up mock servers, or replace url’s in tests to point to test instances.

Integrating with Gauge

We recommend using Taiko with Gauge. Gauge is a framework for writing readable and reusable acceptance tests. With features like markdown specifications, data driven execution, parallel execution and reporting Gauge makes test maintenance easy. Gauge is easy to install and well integrated with Taiko. With Gauge and Taiko we can write reliable acceptance tests.

Install Gauge using npm and initialize an initialize and sample Taiko project using

$ npm install @getgauge/cli
$ gauge init js

Learn more about Gauge!

Experimental Firefox Support

To launch taiko with firefox:

  • Download and install firefox nightly
  • Set TAIKO_BROWSER_PATH to firefox nightly's executable.

Example: TAIKO_BROWSER_PATH="/Applications/Firefoxnightly.app/Contents/MacOS/firefox" taiko

Known Issues for now:

  • Highlighting element on action is set to false as overlay domain is not supported
  • openTab/closeTab does not work as expected since New is not available in firefox yet
  • Autofocus on first input field does not happen
  • file:// protocol does not emit events
  • waitFoNavigation does not wait for network calls and frame loads

Experimental TypeScript Support

When using Gauge together with Taiko with gauge-ts using

$ npm install @getgauge/cli
$ gauge init ts

Documentation

Branding

Inspired by

Talk to us

Copyright

Copyright 2019 ThoughtWorks, Inc

Comments
  • Timeout error occurs when I try to navigate to certain url immediately after opening the browser.

    Timeout error occurs when I try to navigate to certain url immediately after opening the browser.

    Issue: Timeout error occurs when I try to navigate to certain URL immediately after opening the browser. But when I try to navigate second time, I was able to navigate.

    Please make sure I am able to navigate to any url immediately after opening the browser consistently.

    I am attaching the screenshot for reference.

    Steps:

    Expected behavior

    I should able to navigate to any url immediately after opening the browser.

    Actual behavior

    I am not able to navigate to certain url immediately after opening the browser. Timeout error occurs. Only after second time i am able to navigate successfully.

    Steps to reproduce

    1. OpenBrowser()
    2. goto("url")

    Error: Navigation took more than 30000ms. Please increase the timeout., 3. Repeat step 2 again.. Now it will work.

    waiting-for-upstream 
    opened by Prakash0989 50
  • The react product grid not loading when opened the url from taiko browser command

    The react product grid not loading when opened the url from taiko browser command

    When i try to load the below urls, the product grid (built using react) is not loading. This happens only when i try loading using taiko goto command. The page loads fine when opened on a chromium or chrome browser normally.

    I tried this on both Chromium as well as Chrome. The results are same.

    Steps to reproduce On taiko prompt

    openBrowser() Goto ("https://www.clinique.com/products/1687/skincare/moisturizers")

    One other example: https://www.esteelauder.com/products/631/product-catalog/makeup

    page load issue

    opened by nseshadr 24
  • Script that works in the observe mode should work in the normal mode as well

    Script that works in the observe mode should work in the normal mode as well

    Expected behavior Script that works in the observe mode should work in the normal mode as well

    Actual behavior The following script works in the observe mode only

    Steps to replicate

    • Run the following taiko script

    Please ensure there are no todo items before starting the script in http://todomvc.com/examples/react/#

    const { browser, openBrowser, goto, link, click, listItem } = require('taiko');
    const assert = require("assert");
    
    (async () => {
        try {
            await openBrowser();
            await goto("http://todomvc.com/examples/react/#/");
    
            await write("flow");
    
            await press("Enter");
    
            await click(link("Active"));
            await click(checkBox({'class':'toggle'},near('flow')))
    
            await click(link("Completed"));
    
            await click(link("Clear completed"));
            await reload("http://todomvc.com/examples/react/#/",{waitForNavigation:true});
    
            await closeBrowser();
        } catch (e) {
            console.error(e);
        } finally {
        }
    })();
    

    Version

    commit - 215a0767e673443e8f91ddaa0a56e984bad09a94
    Fri Aug 3 09:34:39 2018 +0530
    
    opened by sswaroopgupta 23
  • unable to launch microsoft edge browser using taiko on Windows 10

    unable to launch microsoft edge browser using taiko on Windows 10

    Hello Taiko Team,

    I am unable to launch the Edge Browser (based of chromium) using Taiko. I am able to launch the Google Chrome Browser

    Expected behavior

    Taiko should be able to launch Microsoft Edge Browser (Chromium based) on Windows 10

    Actual behavior

    It hangs and error message is displayed.

    Steps to reproduce

    1. Created a Test script in Gauge
    2. used the openBrowser() command as follows await openBrowser({headless:false}); //await openBrowser(); await goto(url); 3 gauge -v Gauge version: 1.0.7 Commit Hash: ed7b4fd6

    Plugins

    dotnet (0.1.3) html-report (4.0.9) js (2.3.7) json-report (0.3.3) screenshot (0.0.1) xml-report (0.2.3)

    Versions

    node -v v12.16.1

    taiko -v Version: 1.0.2 (Chromium: 76.0.3803.0) RELEASE

    Edge_version

    rnv_variable

    Error message : * Launch Travelers Inside App with the following url: "https://inside.here.travp.net/" ...[FAIL]

        Failed Step: Launch Travelers Inside App with the following url: "https://inside.here.travp.net/"
        Specification: specs\search_travelers.spec:9
        Error Message: Error: Timed out
        Stacktrace: 
        Error: Timed out
            at Timeout.<anonymous> (C:\Users\hadusumi\AppData\Roaming\gauge\plugins\js\2.3.7\src\test.js:43:23)
            at listOnTimeout (internal/timers.js:549:17)
            at processTimers (internal/timers.js:492:7)
    
    opened by harimadusumilli 22
  • Intercept Network calls

    Intercept Network calls

    @zabil - In puppeteer, we can intercept API calls, continue or abort network request/response.

    Can this be implemented in taiko ?

    Code in puppeteer

    async function automateBrowser({port}) {
    	const browser = await puppeteer.launch({
    		headless: false
    	});
    
    	const page = await browser.newPage();
    	await page.setRequestInterceptionEnabled(true);
    
    	page.on('request', request => {
    		const URLToIntercept = 'https://forms.hubspot.com/embed/v3/form/2059467/2e1a1b5b-27bb-447d-aac4-0b87c1e88fec?callback=hs_reqwest_0&hutk=';
    
    		if (request.url === URLToIntercept) {
    			request.continue({
    				url: `http://127.0.0.1:${port}/form.txt`
    			});
    		} else {
    			request.continue();
    		}
    	});
    
    	await page.goto('https://www.sitepen.com/site/contact.html');
    
    	await browser.close();
    	process.exit();
    }
    
    opened by saikrishna321 22
  • Highlighting is off [Windows]

    Highlighting is off [Windows]

    Describe the bug

    Highlighting is off as you can see on the attached .GIF

    What command(s) did you run when you found the bug?

    mkdir ptg cd ptg gauge init js open the ptg folder in vscode npm init. I click on Run Spec above # Getting Started with Gauge

    Output, stack trace or logs related to the bug

    highlight4

    Maybe related is the following output from gauge init js:

    -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
    
      Verion 9 of Highlight.js has reached EOL.  It will no longer
      be supported or receive security updates in the future.
      Please upgrade to version 10 or encourage your indirect
      dependencies to do so.
    
      For more info:
      https://github.com/highlightjs/highlight.js/issues/2877
      https://github.com/highlightjs/highlight.js/blob/master/VERSION_10_UPGRADE.md
    
    -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*                                              
    

    Versions

    Gauge (Output of gauge -v)

    gauge -v
    Gauge version: 1.1.5
    Commit Hash: f455126
    
    Plugins
    -------
    html-report (4.0.12)
    js (2.3.14)
    screenshot (0.0.1)
    

    Node.js/Java/Python/.Net/Ruby version

    node -v
    v14.15.1
    

    Operating System information

    Get-ComputerInfo -Property os* | select OSName, OsArchitecture | fl
    
    OsName         : Microsoft Windows 10 Pro
    OsArchitecture : 64-bit
    

    IDE information

    code-insiders.cmd --version
    1.52.0-insider
    6026ab576dc6a4fbb8e255241a364816f42464c5
    x64
    
    opened by srp-at-ema 20
  • Taiko fails to find element on original browser instance once a new browser window opens and closes as part of the use case.

    Taiko fails to find element on original browser instance once a new browser window opens and closes as part of the use case.

    Expected behavior

    Taiko should find element on the browser instance opened by it.

    Actual behavior

    Taiko fails to identify the elements on the page.

    Steps to reproduce

    1. Open any application having Google OAuth.
    2. Click on login.
    3. Enter valid username and password on the new window (Which is opened for authenticating with google i.e. "https://accounts.google.com/signin/oauth" ) and login (After the authentication is complete, the new window closes).
    4. Now perform any action on the application which triggered the google auth page.

    Versions

    Taiko - Version: 1.0.3 (Chromium: 81.0.3994.0) RELEASE Node - v10.16.3

    opened by brijeshktest 20
  • FileField error

    FileField error "is not visible" despite 'selectHiddenElements: true' since Taiko v1.1.1

    Describe the bug Since Taiko v1.1.1 (incl. v1.1.2) I get an "is not visible" error when trying to upload a file via fileField with option 'selectHiddenElements: true'. The same code works fine until incl. Taiko v1.1.0. (Maybe a regression caused by https://github.com/getgauge/taiko/pull/1759?)

    To Reproduce Steps (or script) to reproduce the behavior:

    1. Create an upload container as per the following HTML code:
    <div class="c-upload-container">
        <div class="c-upload-container__field u-mb-none">
            <div class="c-upload" tabindex="0">
                <input id="monthly-net-income-upload" class="c-upload__input" accept="image/jpeg,application/pdf"
                    multiple="" type="file" autocomplete="off" tabindex="-1" style="display: none" /><span
                    class="c-upload__description"><i class="c-upload__icon" aria-hidden="true"></i><span
                        class="c-upload__description-text">Ziehen Sie die hochzuladenden Dateien in diesen
                        Bereich</span><span class="c-upload__description-supplementary-text">oder klicken Sie auf "Dateien
                        auswählen"</span></span><span class="c-upload__actions"><span
                        class="c-upload__button c-btn"><span>Dateien auswählen</span></span></span><span
                    class="c-upload__disabled"><i class="c-upload__disabled-icon" aria-hidden="true"></i><span
                        class="c-upload__disabled-text">Sie haben bereits 5 Dateien hochgeladen oder zum Hochladen
                        ausgewählt. Diese können Sie in der Dateiliste verwalten.</span></span>
            </div>
        </div>
        <fieldset name="monthly-net-income-upload-validation" class="o-fieldset u-mb-none">
            <input hidden="" name="monthly-net-income-upload-validation" value="" />
        </fieldset>
    </div>
    

    Visual representation: image

    1. Execute the following Taiko code on it (use your own .jpg file/path):
          await attach(
            'uploads/pirate.jpg',
            fileField(
              { id: 'monthly-net-income-upload' },
              { selectHiddenElements: true }
            )
          );
    
    1. See error logs below

    Logs

    Error: FileField[id="monthly-net-income-upload"]is not visible
        at /[...]/node_modules/taiko/lib/actions/pageActionChecks.js:178:11
        at waitAndGetActionableElement (node_modules/taiko/lib/actions/pageActionChecks.js:153:3)
        at attach (node_modules/taiko/lib/actions/attach.js:20:19)
        at Object.module.exports.attach (node_modules/taiko/lib/taiko.js:1085:16)
        at Object.module.exports.<computed> [as attach] (node_modules/taiko/lib/taiko.js:2604:14)
    

    Expected behavior File is uploaded successfully w/o error message.

    Versions:

    • Taiko: 1.1.1
    • OS: macOS 11.1 (20C69)
    • Node.js v14.13.1

    Additional context Repro case can be provided via mail if necessary.

    bug 
    opened by klhex 18
  • added experimental typescript support

    added experimental typescript support

    Closes #209

    • updated docs
    • exposed typings through package.json
    • Bonus: added package.json schema

    This solution would mean that everyone using Taiko with TypeScript would be exposed to the Typings provided, but there is also an optional solution which would make the typings optional but requires a bit of configuration work for every project using it:

    • the types folder in the repo would contain a taiko folder with a index.d.ts
    • the typings could be consumed using the "types" field in tsconfig.json
    • a user with gauge-ts setup would have to edit tsconfig.json in this way:
    {
        "compilerOptions": {
            "typeRoots": ["node_modules/@types", "node_modules/taiko/types"],  // add available taiko TypeScript Type Definition folder to the project
            "types": ["node", "taiko"] // use taiko types in the project
        }
    }
    

    If you prefer to keep this optional, let me know and I will update the PR. Possible TODOs:

    • The typings themselves are workable, but likely need more work to reflect the current API better.
    • The API reflected is 1.0.2, I did not include any changes from there to the current version

    Hopefully, we can work together to include typings for Taiko :-)

    cla-signed ReleaseCandidate feature 
    opened by nuclearglow 17
  • taiko failures should include user code location in stacktrace

    taiko failures should include user code location in stacktrace

    Expected behavior

    Taiko's failure stacktrace should include location of the user code.

    Actual behavior

    The top element of the stacktrace point's to taiko's code implementation and does not point to the user code.

    Steps to reproduce

    1. Save the below file as example.js
    const { openBrowser, goto, closeBrowser } = require('taiko');
    (async () => {
        try {
            await openBrowser();
            await goto('https://gauge.org');
        await click('Get startedd');
        } catch (error) {
            console.error(error);
        } finally {
            await closeBrowser();
        }
    })();
    
    1. Run taiko example.js
    2. Notice the stacktrace.

    Versions

    > taiko --version
    Version: 1.0.0 (Chromium: 76.0.3803.0) RELEASE
    
    > node --version
    v10.16.0
     
    
    bug 
    opened by sriv 17
  • For exists check, text in the element should be considered and not UI elements in the same level

    For exists check, text in the element should be considered and not UI elements in the same level

    Expected behavior For exists check, text in the element should be considered and not UI elements in the same level.

    Actual behavior text(contains(<text>)) works but not text(<text>). Here the parent div contains the <text> <comboBox>

    Steps to replicate

    const { openBrowser, goto, toRightOf, checkBox } = require('taiko');
    
    (async () => {
        try {
            await openBrowser({headless:false});
            await goto("https://react-shopping-cart-67954.firebaseapp.com/");
            console.log(await text("Order by").exists())
        } catch (e) {
            console.error(e);
        } finally {
            closeBrowser();
        }
    })();
    

    The console log prints Does not exist where as await text(contains("Order by")) prints Exists. There is no other text in the parent element. However there is another comboBox along with this text.

    Version

    commit - 09afc93da99da144aa002a91feb1bd4b44506010
    
    opened by sswaroopgupta 17
  • Problem to run 1 more async

    Problem to run 1 more async

    Hi!

    I'm trying to run a "for", "while", etc to try to run more than one asynchronous function simultaneously because I need it for my operation.

    The only way I found was to create several .js files for each asynchronous function to run.

    I would like to know if it is possible to run everything in just one file because the following error is always being returned to me.

    "Error: Browser or page not initialized. Call openBrowser() before using this API"

    opened by FatherScrooge 3
  • Use npm cache to store Chromium browser to avoid redownloading it

    Use npm cache to store Chromium browser to avoid redownloading it

    Sometimes we all remove node_modules folder for some reason. Also, NPM v6 removes it automatically while using npm ci command.

    It is comfortable when libraries which downloads huge dependencies like Chromium or, for example, node-sass bindings are store these dependencies in npm-cache folder on local user machine to avoid redownload them from Internet every time when node_modules folder was removed in project.

    You can find example how you can do it in node-sass library source code on Github: https://github.com/sass/node-sass/blob/ee13eb9c62449d1e535189a063cbdd15583ebf32/scripts/install.js#L56-L115.

    opened by believer-ufa 2
  • Facing issue while accessing elements within Iframe

    Facing issue while accessing elements within Iframe

    We are testing an UI app (Technology - Angular) which has "Iframe" elements. There is a #document(html ->body-.>div->input) structure inside the Iframe . We need to access the textbox elements inside the html structure within the Iframe. These elements are not located when we tried to access it using taiko (used different locators such as visible text, Id , relative & full xpath). Please help us resolving this issue. taiko version is 1.3.2.

    opened by selvaganesan2005 2
  • Taiko/Gauge - The Header Basic Authorization is getting mixed with the form Login

    Taiko/Gauge - The Header Basic Authorization is getting mixed with the form Login

    In Taiko/Gauge Framework, we try to implement Basic Authorization with Base64 encoding method to launch a website. It works fine. But, when we try to login as a user which is a form on the application flow, it is not getting logged in. When we do it manually, there is no issue.

    The code is something like this.

    goto(url,{headers:{'Authorization':'Basic <Base64encodedcreds>'}}) => This works well. On the login page, I need to give the user name (EmailID) and password as below:

    await write("EmailID", into(textBox{id:"IDValueEmail"}));
    await write("Password", into(textBox{id:"IDValuePassword"}));
    await evaluate($(customelocatorSignin), ele => ele.click());
    

    I have the following questions: How to overwrite the password set for the URL using headers? I am not able to login with the particular valid credentials as a user on the login page. It just stays on the same page without throwing any error. How to resolve this issue?

    opened by jawaharsan 1
  • Unable to install taiko using `npm install -g taiko`

    Unable to install taiko using `npm install -g taiko`

    Describe the bug I am unable to install taiko on my mac 12.6 Also getting same error on a linux machine. I have tried installing taiko using various commands like: sudo npm install -g taiko sudo TAIKO_SKIP_CHROMIUM_DOWNLOAD=true npm install -g taiko but unable to do so!

    I want to add that the problem is only with mac users.. after installing taiko with sudo npm i -g taiko command, then also I am getting taiko command not found!

    Logs

    npm WARN deprecated [email protected]: See https://github.com/lydell/source-map-url#deprecated
    npm WARN deprecated [email protected]: Please see https://github.com/lydell/urix#deprecated
    npm WARN deprecated [email protected]: https://github.com/lydell/resolve-url#deprecated
    npm WARN deprecated [email protected]: See https://github.com/lydell/source-map-resolve#deprecated
    npm ERR! code 190
    npm ERR! git dep preparation failed
    npm ERR! command /usr/local/bin/node /usr/local/lib/node_modules/npm/bin/npm-cli.js install --force --cache=/Users/shivkantchauhan/.npm --prefer-offline=false --prefer-online=false --offline=false --no-progress --no-save --no-audit --include=dev --include=peer --include=optional --no-package-lock-only --no-dry-run
    npm ERR! npm WARN using --force Recommended protections disabled.
    npm ERR! npm ERR! code ENOTEMPTY
    npm ERR! npm ERR! syscall rename
    npm ERR! npm ERR! path /Users/shivkantchauhan/.npm-global/lib/node_modules/taiko
    npm ERR! npm ERR! dest /Users/shivkantchauhan/.npm-global/lib/node_modules/.taiko-0MR00Ccl
    npm ERR! npm ERR! errno -66
    npm ERR! npm ERR! ENOTEMPTY: directory not empty, rename '/Users/shivkantchauhan/.npm-global/lib/node_modules/taiko' -> '/Users/shivkantchauhan/.npm-global/lib/node_modules/.taiko-0MR00Ccl'
    npm ERR!
    npm ERR! npm ERR! A complete log of this run can be found in:
    npm ERR! npm ERR!     /Users/shivkantchauhan/.npm/_logs/2022-10-08T19_34_00_565Z-debug-0.log
    
    npm ERR! A complete log of this run can be found in:
    npm ERR!     /Users/shivkantchauhan/.npm/_logs/2022-10-08T19_32_25_945Z-debug-0.log
    

    and

    npm WARN deprecated [email protected]: See https://github.com/lydell/source-map-url#deprecated
    npm WARN deprecated [email protected]: Please see https://github.com/lydell/urix#deprecated
    npm WARN deprecated [email protected]: https://github.com/lydell/resolve-url#deprecated
    npm WARN deprecated [email protected]: See https://github.com/lydell/source-map-resolve#deprecated
    
    changed 690 packages, and audited 691 packages in 8s
    
    113 packages are looking for funding
      run `npm fund` for details
    
    9 vulnerabilities (2 moderate, 6 high, 1 critical)
    
    To address all issues (including breaking changes), run:
      npm audit fix --force
    
    Run `npm audit` for details.
    

    Expected behavior Taiko should be installed without any vulnerabilities

    Screenshots Screenshot 2022-10-05 at 6 27 26 PM

    output of gauge -v
    
    Gauge version: 1.4.3
    Plugins
    -------
    html-report (4.1.4)
    js (2.4.0)
    screenshot (0.1.0)
    ts (0.1.0)
    
    opened by Shivkant-Chauhan 1
Releases(v1.3.5)
  • v1.3.5(Nov 30, 2022)

    • #2663 - Fix some vulnerabilities and other enhancements
    • #2653 - Bump version of release
    • #2652 - Arunkumar P: Fix openTab navigation to non http url
    • #2648 - Add count paramater type to intercept
    • #2647 - TEMP_DELETE Add optional parameter count to intercept type
    • #2637 - move devtools-protocol to dependencies block in package.json
    • #2625 - Update chromium to revision 1026271
    • #2620 - consider wsDebugUrl on open browser session
    • #2619 - Update chromium to revision 1022529
    • #2611 - Update chromium to revision 1018618
    • #2605 - Update chromium to revision 1011865
    • #2597 - Update chromium to revision 1006470
    • #2374 - Add delay in drag and drop
    Source code(tar.gz)
    Source code(zip)
  • v1.3.4(May 28, 2022)

    • #2595 - Updated Unit Test for #2592
    • #2592 - Fixes #2587 Adds the ability to use click modifiers
    • #2588 - Add wait to flush interceptors #2397
    • #2585 - Update chromium to revision 1001660
    • #2584 - Boolean highlightOnAction
    • #2579 - Update chromium to revision 996121
    • #2573 - update dependencies
    • #2572 - Update chromium to revision 990320
    • #2566 - Update chromium to revision 986347
    • #2555 - Update chromium to revision 978099
    • #2553 - Bump mocha from 9.2.1 to 9.2.2
    • #2552 - Bump cssnano from 5.1.1 to 5.1.4
    • #2551 - Bump eslint from 8.10.0 to 8.11.0
    • #2548 - Bump devtools-protocol from 0.0.977936 to 0.0.979918
    • #2538 - Bump eslint-config-prettier from 8.4.0 to 8.5.0
    • #2533 - Bump @typescript-eslint/eslint-plugin from 5.12.1 to 5.13.0
    • #2520 - Bump eslint-plugin-jest from 25.3.4 to 26.1.1
    • #2387 - Add a feature for checkBox to take xpath as a parameter.
    Source code(tar.gz)
    Source code(zip)
  • v1.3.2(Mar 19, 2022)

    • #2558 - #2508 fix click api to take co-ordinates as options
    • #2557 - checkIfElementIsNotCovered shadowroot parent
    • #2556 - Add new devices for mobile emulation
    • #2554 - Add new mobile devices for mobile emulation
    • #2549 - Bump cssnano from 5.1.1 to 5.1.3
    • #2547 - Bump devtools-protocol from 0.0.977936 to 0.0.979353
    • #2546 - Bump cssnano from 5.1.0 to 5.1.1
    • #2542 - Bump @typescript-eslint/parser from 5.13.0 to 5.14.0
    • #2540 - Bump devtools-protocol from 0.0.975963 to 0.0.977936
    • #2532 - Update chromium to revision 970485
    Source code(tar.gz)
    Source code(zip)
  • v1.3.1(Mar 8, 2022)

    • #2541 - Bump lint-staged from 12.3.4 to 12.3.5
    • #2539 - Bump devtools-protocol from 0.0.975963 to 0.0.977469
    • #2537 - Remove div height
    • #2536 - Bump cssnano from 5.0.17 to 5.1.0
    • #2535 - Bump typescript from 4.5.5 to 4.6.2
    • #2534 - Bump @typescript-eslint/parser from 5.12.1 to 5.13.0
    • #2531 - Bump devtools-protocol from 0.0.974996 to 0.0.975963
    • #2530 - Bump eslint from 8.9.0 to 8.10.0
    • #2529 - Bump devtools-protocol from 0.0.974996 to 0.0.975498
    • #2528 - Bump devtools-protocol from 0.0.955664 to 0.0.974996
    • #2527 - Bump sinon from 12.0.1 to 13.0.1
    • #2524 - Bump @typescript-eslint/eslint-plugin from 5.9.1 to 5.12.1
    • #2523 - Bump mocha from 9.1.3 to 9.2.1
    • #2522 - Bump url-parse from 1.5.4 to 1.5.7
    • #2519 - Bump commander from 8.3.0 to 9.0.0
    • #2518 - Update chromium to revision 967620
    • #2517 - Bump follow-redirects from 1.14.7 to 1.14.8
    • #2516 - Bump @typescript-eslint/eslint-plugin from 5.9.1 to 5.12.0
    • #2515 - Bump lint-staged from 12.1.7 to 12.3.4
    • #2514 - Bump devtools-protocol from 0.0.957163 to 0.0.970581
    • #2513 - Bump devtools-protocol from 0.0.957163 to 0.0.969541
    • #2512 - chore: add openBrowser debug logs
    • #2511 - Bump cssnano from 5.0.15 to 5.0.17
    • #2510 - Bump @typescript-eslint/eslint-plugin from 5.9.1 to 5.11.0
    • #2509 - Bump eslint-plugin-jest from 25.3.4 to 26.1.0
    • #2507 - Bump devtools-protocol from 0.0.957163 to 0.0.967529
    • #2506 - Bump follow-redirects from 1.14.6 to 1.14.7
    • #2505 - Bump devtools-protocol from 0.0.957163 to 0.0.966979
    • #2503 - Bump devtools-protocol from 0.0.957163 to 0.0.966116
    • #2502 - Bump lint-staged from 12.1.7 to 12.3.3
    Source code(tar.gz)
    Source code(zip)
  • v1.2.8(Nov 22, 2021)

    • #2403 - Bump devtools-protocol from 0.0.924232 to 0.0.943452
    • #2401 - Bump devtools-protocol from 0.0.924232 to 0.0.943026
    • #2398 - Bump devtools-protocol from 0.0.924232 to 0.0.942138
    • #2395 - Bump devtools-protocol from 0.0.924232 to 0.0.940865
    • #2393 - Bump devtools-protocol from 0.0.924232 to 0.0.940363
    • #2392 - Bump devtools-protocol from 0.0.924232 to 0.0.940028
    • #2391 - Bump devtools-protocol from 0.0.924232 to 0.0.939725
    • #2388 - Bump devtools-protocol from 0.0.924232 to 0.0.938931
    • #2385 - Bump devtools-protocol from 0.0.924232 to 0.0.938546
    • #2384 - Bump eslint-plugin-jest from 24.4.0 to 25.2.3
    • #2382 - Bump devtools-protocol from 0.0.924232 to 0.0.937139
    • #2380 - Added ability to pass useHostName and secure params via openBrowser API
    • #2379 - Bump devtools-protocol from 0.0.924232 to 0.0.936174
    • #2377 - Bug(checkbox|radio): Set checked value on native element setter so that events are triggered properly
    • #2370 - Bug(range): Set range value on native element setter to trigger events correctly
    • #2369 - Bump devtools-protocol from 0.0.924232 to 0.0.933220
    • #2366 - Bump devtools-protocol from 0.0.924232 to 0.0.932485
    • #2365 - Bump eslint-plugin-jest from 24.4.0 to 25.2.2
    • #2364 - Bump eslint-plugin-jest from 24.4.0 to 25.2.1
    • #2363 - Bump devtools-protocol from 0.0.924232 to 0.0.931720
    • #2361 - Bump devtools-protocol from 0.0.924232 to 0.0.931360
    • #2360 - Bump eslint-plugin-jest from 24.4.0 to 25.0.6
    • #2357 - Bump typescript from 4.4.2 to 4.4.4
    • #2353 - Bump eslint-plugin-jest from 24.4.0 to 25.0.5
    • #2352 - Bump devtools-protocol from 0.0.924232 to 0.0.930289
    • #2348 - Bump eslint-plugin-jest from 24.4.0 to 25.0.1
    • #2345 - Bump devtools-protocol from 0.0.924232 to 0.0.928170
    • #2343 - Bump devtools-protocol from 0.0.924232 to 0.0.927854
    • #2342 - Bump eslint-plugin-jest from 24.4.0 to 24.5.2
    • #2341 - Bump devtools-protocol from 0.0.924232 to 0.0.927104
    Source code(tar.gz)
    Source code(zip)
  • v1.2.7(Aug 9, 2021)

    • #2240 - Bump lint-staged from 11.1.1 to 11.1.2
    • #2239 - Scroll only when element state check fails
    • #2237 - Bump clean-css from 5.1.4 to 5.1.5
    • #2233 - Bump devtools-protocol from 0.0.907573 to 0.0.908187
    • #2232 - dep update
    • #2231 - Bump @babel/parser from 7.14.7 to 7.14.9
    • #2230 - Bump dtslint from 4.1.1 to 4.1.3
    • #2227 - Bump devtools-protocol from 0.0.898382 to 0.0.906795
    • #2224 - Bump @typescript-eslint/parser from 4.28.2 to 4.28.5
    • #2222 - Bump @typescript-eslint/eslint-plugin from 4.28.2 to 4.28.5
    • #2219 - Bump lint-staged from 11.0.0 to 11.1.1
    • #2215 - Bump markdown-it-anchor from 8.1.0 to 8.1.2
    • #2214 - Bump recast from 0.20.4 to 0.20.5
    • #2213 - Bump eslint-plugin-jest from 24.3.6 to 24.4.0
    • #2212 - Bump cssnano from 5.0.6 to 5.0.7
    • #2200 - Update chromium to revision 900323
    • #2169 - Update chromium to revision 896380
    Source code(tar.gz)
    Source code(zip)
  • v1.2.6(Aug 2, 2021)

    • #2229 - Cache proxomity element Rect
    • #2226 - Bump devtools-protocol from 0.0.898382 to 0.0.906505
    • #2223 - Bump devtools-protocol from 0.0.898382 to 0.0.905680
    • #2216 - Bump lint-staged from 11.0.0 to 11.1.0
    • #2211 - Bump eslint-plugin-jest from 24.3.6 to 24.3.7
    • #2210 - Bump @babel/parser from 7.14.7 to 7.14.8
    • #2209 - Bump @typescript-eslint/eslint-plugin from 4.28.2 to 4.28.4
    • #2208 - Bump @typescript-eslint/parser from 4.28.2 to 4.28.4
    • #2207 - Bump eslint from 7.30.0 to 7.31.0
    • #2199 - Bump devtools-protocol from 0.0.898382 to 0.0.901419
    • #2194 - Bump @typescript-eslint/eslint-plugin from 4.28.2 to 4.28.3
    • #2193 - Bump @typescript-eslint/parser from 4.28.2 to 4.28.3
    • #2192 - Bump lint-staged from 11.0.0 to 11.0.1
    • #2191 - Bump devtools-protocol from 0.0.898382 to 0.0.900855
    • #2189 - Bump devtools-protocol from 0.0.898382 to 0.0.900357
    • #2188 - Bump devtools-protocol from 0.0.898382 to 0.0.899914
    • #2187 - Bump dtslint from 4.1.1 to 4.1.2
    • #2186 - Bump devtools-protocol from 0.0.898382 to 0.0.899437
    • #2183 - Fix max listener reached warning in unit tests
    • #2182 - update deps to latest
    • #2181 - Bump debug from 4.3.1 to 4.3.2
    • #2180 - Bump @typescript-eslint/eslint-plugin from 4.28.0 to 4.28.2
    • #2179 - Bump husky from 6.0.0 to 7.0.1
    • #2178 - Bump @typescript-eslint/parser from 4.28.0 to 4.28.2
    • #2177 - Bump devtools-protocol from 0.0.895982 to 0.0.898382
    • #2176 - Bump markdown-it from 12.0.6 to 12.1.0
    • #2175 - Bump devtools-protocol from 0.0.895982 to 0.0.898124
    • #2174 - Bump markdown-it-anchor from 8.0.4 to 8.1.0
    • #2172 - Bump husky from 6.0.0 to 7.0.0
    • #2171 - Bump dtslint from 4.1.0 to 4.1.1
    Source code(tar.gz)
    Source code(zip)
  • v1.2.5(May 3, 2021)

    • #2027 - Bump devtools-protocol from 0.0.876958 to 0.0.878026
    • #2022 - Bump version to 1.2.5
    • #2021 - Bump @babel/parser from 7.13.16 to 7.14.0
    • #2017 - Bump cssnano from 5.0.1 to 5.0.2
    • #2016 - Bump devtools-protocol from 0.0.873728 to 0.0.876958
    • #2015 - Bump devtools-protocol from 0.0.873728 to 0.0.876535
    • #2014 - Bump devtools-protocol from 0.0.873728 to 0.0.876073
    • #2013 - fix(config): Allow navigation and retry timeout to be read from env
    • #2012 - Bump eslint from 7.24.0 to 7.25.0
    • #2011 - Bump documentation from 13.2.4 to 13.2.5
    • #2010 - Bump eslint-plugin-jest from 24.3.5 to 24.3.6
    • #2009 - Bump eslint-config-prettier from 8.2.0 to 8.3.0
    • #2008 - Perform click on given positions
    • #2007 - Bump cssnano from 4.1.11 to 5.0.1
    • #2005 - Bump devtools-protocol from 0.0.872298 to 0.0.873728
    • #2004 - Bump @babel/parser from 7.13.15 to 7.13.16
    • #2003 - Bump markdown-it from 12.0.5 to 12.0.6
    • #2002 - Bump documentation from 13.2.1 to 13.2.4
    • #1999 - #1998 assign current target for openTab with blank url
    Source code(tar.gz)
    Source code(zip)
  • v1.2.4(Apr 19, 2021)

    • #1997 - Custom message for waitFor API
    • #1994 - Bump eslint-plugin-prettier from 3.3.1 to 3.4.0
    • #1993 - Bump markdown-it from 12.0.4 to 12.0.5
    • #1992 - Bump devtools-protocol from 0.0.871838 to 0.0.872298
    • #1991 - Bump eslint-config-prettier from 7.2.0 to 8.2.0
    • #1990 - Bump devtools-protocol from 0.0.871249 to 0.0.871838
    • #1985 - Bump devtools-protocol from 0.0.871249 to 0.0.871615
    • #1983 - Bump eslint-plugin-jest from 24.3.4 to 24.3.5
    • #1982 - Bump eslint from 7.23.0 to 7.24.0
    • #1981 - Bump devtools-protocol from 0.0.869921 to 0.0.871249
    • #1980 - Bump sinon from 10.0.0 to 10.0.1
    • #1979 - Bump @babel/parser from 7.13.13 to 7.13.15
    • #1977 - Bump dtslint from 4.0.8 to 4.0.9
    • #1976 - Bump typescript from 4.2.3 to 4.2.4
    • #1975 - Bump devtools-protocol from 0.0.869754 to 0.0.869921
    • #1974 - Bump documentation from 13.2.0 to 13.2.1
    • #1973 - Bump cssnano from 4.1.10 to 4.1.11
    • #1972 - Bump devtools-protocol from 0.0.867593 to 0.0.869754
    • #1971 - Bump eslint-plugin-jest from 24.3.1 to 24.3.4
    • #1969 - Bump devtools-protocol from 0.0.867593 to 0.0.868034
    • #1964 - Bump devtools-protocol from 0.0.866556 to 0.0.867593
    • #1961 - Bump husky from 5.0.9 to 6.0.0
    • #1960 - Bump y18n from 4.0.0 to 4.0.1
    • #1959 - Bump @babel/parser from 7.13.12 to 7.13.13
    • #1958 - Bump eslint from 7.22.0 to 7.23.0
    • #1956 - Bump devtools-protocol from 0.0.866105 to 0.0.866556
    • #1955 - Fix evaluate passing data code snippet
    • #1954 - Bump devtools-protocol from 0.0.862653 to 0.0.866105
    • #1953 - Bump dtslint from 4.0.7 to 4.0.8
    • #1948 - Bump @babel/parser from 7.13.10 to 7.13.12
    Source code(tar.gz)
    Source code(zip)
  • v1.2.3(Mar 24, 2021)

    • #1952 - Bump version to 1.2.3
    • #1950 - Enable web security by default
    • #1949 - Bump sinon from 9.2.4 to 10.0.0
    • #1947 - Bump chrome-remote-interface from 0.29.0 to 0.30.0
    • #1946 - Update dependencies for chromium
    • #1945 - Bump husky from 5.0.9 to 5.2.0
    • #1944 - Bump commander from 7.1.0 to 7.2.0
    • #1943 - Bump @11ty/eleventy from 0.11.1 to 0.12.1
    • #1942 - Bump devtools-protocol from 0.0.862653 to 0.0.863986
    • #1939 - Bump eslint-plugin-jest from 24.3.1 to 24.3.2
    • #1937 - Bump @babel/parser from 7.13.10 to 7.13.11
    • #1936 - Bump devtools-protocol from 0.0.862653 to 0.0.862770
    • #1934 - Update chromium to revision 861020
    • #1933 - Bump mocha from 8.3.1 to 8.3.2
    • #1932 - Bump devtools-protocol from 0.0.861504 to 0.0.862653
    • #1931 - Bump eslint-plugin-jest from 24.1.8 to 24.3.1
    • #1930 - Bump eslint from 7.20.0 to 7.22.0
    • #1929 - Bump documentation from 13.1.1 to 13.2.0
    • #1928 - Bump chai from 4.3.3 to 4.3.4
    • #1923 - Bump devtools-protocol from 0.0.861373 to 0.0.861504
    • #1922 - Bump eslint-plugin-jest from 24.1.8 to 24.2.1
    • #1918 - Bump eslint-plugin-jest from 24.1.8 to 24.2.0
    • #1917 - Bump devtools-protocol from 0.0.860858 to 0.0.861373
    • #1916 - Bump @babel/parser from 7.12.17 to 7.13.10
    • #1915 - Bump eslint-plugin-jest from 24.1.8 to 24.1.9
    • #1914 - Bump devtools-protocol from 0.0.860415 to 0.0.860858
    • #1913 - Bump eslint-plugin-jest from 24.1.5 to 24.1.8
    • #1912 - Bump eslint-plugin-mocha from 8.0.0 to 8.1.0
    • #1911 - Bump devtools-protocol from 0.0.859327 to 0.0.860415
    • #1910 - Bump markdown-it-anchor from 7.0.2 to 7.1.0
    Source code(tar.gz)
    Source code(zip)
  • v1.2.2(Feb 23, 2021)

  • v1.2.1(Feb 19, 2021)

    • #1874 - Bump @babel/parser from 7.12.16 to 7.12.17
    • #1873 - Bump devtools-protocol from 0.0.854538 to 0.0.854822
    • #1871 - Bump devtools-protocol from 0.0.852555 to 0.0.854538
    • #1870 - Bump eslint-plugin-jest from 24.1.3 to 24.1.5
    • #1865 - Bump commander from 7.0.0 to 7.1.0
    • #1863 - Bump eslint from 7.19.0 to 7.20.0
    • #1861 - Bump mocha from 8.2.1 to 8.3.0
    • #1860 - Bump @babel/parser from 7.12.15 to 7.12.16
    • #1857 - Bump typescript from 4.1.4 to 4.1.5
    • #1856 - Bump dtslint from 4.0.6 to 4.0.7
    • #1855 - Bump devtools-protocol from 0.0.850520 to 0.0.852555
    • #1854 - Bump typescript from 4.1.3 to 4.1.4
    • #1853 - Allow WaitForEvents to be set globally
    • #1851 - Bump husky from 4.3.8 to 5.0.9
    • #1850 - Added alternate way to get browser context id from target id to fix issue #1728
    • #1848 - Bump lint-staged from 10.5.3 to 10.5.4
    • #1847 - Bump markdown-it-anchor from 7.0.1 to 7.0.2
    • #1846 - Bump @babel/parser from 7.12.14 to 7.12.15
    • #1845 - Bump chai from 4.2.0 to 4.3.0
    • #1844 - Bump devtools-protocol from 0.0.849788 to 0.0.850520
    • #1843 - Bump @babel/parser from 7.12.13 to 7.12.14
    • #1842 - Adds Typescript support for fix of issue #1771
    • #1837 - Update chromium to revision 846621
    • #1794 - Update chromium to revision 841903
    Source code(tar.gz)
    Source code(zip)
  • v1.2.0(Feb 3, 2021)

    • #1841 - Bump devtools-protocol from 0.0.849057 to 0.0.849788
    • #1840 - Bump @babel/parser from 7.12.11 to 7.12.13
    • #1839 - Fix type of ResizeWindowOptions
    • #1838 - Bump devtools-protocol from 0.0.848227 to 0.0.849057
    • #1834 - Bump eslint from 7.18.0 to 7.19.0
    • #1828 - Bump markdown-it-anchor from 7.0.0 to 7.0.1
    • #1827 - Bump devtools-protocol from 0.0.847122 to 0.0.848227
    • #1826 - Bump devtools-protocol from 0.0.847122 to 0.0.847576
    • #1823 - Bump devtools-protocol from 0.0.846936 to 0.0.847122
    • #1819 - Fix action on invisible
    • #1818 - Bump devtools-protocol from 0.0.845780 to 0.0.846936
    • #1817 - Bump sinon from 9.2.3 to 9.2.4
    • #1816 - Add missing support for event 'targetNavigated' in TypeScript definitions and API reference
    • #1815 - Bump devtools-protocol from 0.0.845301 to 0.0.845780
    • #1813 - Bump devtools-protocol from 0.0.842839 to 0.0.845301
    • #1808 - Bump fs-extra from 9.0.1 to 9.1.0
    • #1807 - Bump documentation from 13.1.0 to 13.1.1
    • #1803 - Bump eslint-config-prettier from 7.1.0 to 7.2.0
    • #1752 - Documentation page with side bar (Work in progress)
    Source code(tar.gz)
    Source code(zip)
  • v1.1.4(Jan 18, 2021)

    • #1801 - #1777 Check if foused element is actionable
    • #1800 - Bump commander from 6.2.1 to 7.0.0
    • #1799 - Bump husky from 4.3.7 to 4.3.8
    • #1798 - Bump eslint from 7.17.0 to 7.18.0
    Source code(tar.gz)
    Source code(zip)
  • v1.1.3(Jan 15, 2021)

    • #1793 - New API to Resize window
    • #1788 - Bump devtools-protocol from 0.0.841965 to 0.0.842839
    • #1787 - Bump devtools-protocol from 0.0.840815 to 0.0.841965
    • #1782 - Bump devtools-protocol from 0.0.840815 to 0.0.841450
    • #1775 - Bump devtools-protocol from 0.0.839267 to 0.0.840815
    • #1774 - Bump sinon from 9.2.2 to 9.2.3
    • #1773 - Bump chrome-remote-interface from 0.28.2 to 0.29.0
    • #1772 - Bump husky from 4.3.6 to 4.3.7
    Source code(tar.gz)
    Source code(zip)
  • v1.1.2(Jan 6, 2021)

    • #1770 - #1769 Allow continue to not accept object
    • #1765 - Bump eslint-plugin-prettier from 3.3.0 to 3.3.1
    • #1764 - Bump markdown-it-anchor from 6.0.1 to 7.0.0
    • #1763 - Bump eslint from 7.16.0 to 7.17.0
    • #1760 - Update chromium to revision 836581
    Source code(tar.gz)
    Source code(zip)
  • v1.1.1(Dec 31, 2020)

    • #1759 - Clean up actions and wait for element to be connected before actions
    • #1755 - Bump devtools-protocol from 0.0.839121 to 0.0.839267
    • #1754 - Bump devtools-protocol from 0.0.837676 to 0.0.839121
    • #1750 - Bump eslint-config-prettier from 7.0.0 to 7.1.0
    • #1749 - Bump eslint from 7.15.0 to 7.16.0
    • #1748 - Bump markdown-it from 12.0.3 to 12.0.4
    • #1746 - Bump devtools-protocol from 0.0.836089 to 0.0.837676
    • #1743 - Bump @babel/parser from 7.12.10 to 7.12.11
    • #1742 - Update chromium to revision 834178
    • #1739 - Bump husky from 4.3.5 to 4.3.6
    • #1738 - Bump eslint-plugin-prettier from 3.2.0 to 3.3.0
    • #1737 - Bump devtools-protocol from 0.0.835626 to 0.0.836089
    • #1736 - Bump commander from 6.2.0 to 6.2.1
    • #1735 - Bump sinon from 9.2.1 to 9.2.2
    • #1734 - Bump typescript from 4.1.2 to 4.1.3
    • #1731 - Move to Github discussions
    • #1727 - Bump devtools-protocol from 0.0.835015 to 0.0.835626
    • #1726 - Bump ini from 1.3.5 to 1.3.7
    • #1725 - Cleanup connections
    • #1724 - Bump @babel/parser from 7.12.7 to 7.12.10
    • #1723 - #1643 taiko should error when alert has no handler
    • #1722 - Bump devtools-protocol from 0.0.834467 to 0.0.835015
    • #1721 - Do not modify the protocol if mentioned in goto
    • #1719 - Bump markdown-it from 12.0.2 to 12.0.3
    • #1718 - Bump husky from 4.3.0 to 4.3.5
    • #1717 - Bump devtools-protocol from 0.0.832784 to 0.0.834467
    • #1659 - Making DropDownWrapper extend MultiValueWrapper
    Source code(tar.gz)
    Source code(zip)
  • v1.1.0(Dec 8, 2020)

    • #1716 - remove hub actions
    • #1714 - Bump eslint from 7.14.0 to 7.15.0
    • #1713 - Bump eslint-config-prettier from 6.15.0 to 7.0.0
    • #1712 - Bump lint-staged from 10.5.2 to 10.5.3
    • #1711 - Bump eslint-plugin-prettier from 3.1.4 to 3.2.0
    • #1710 - Bump devtools-protocol from 0.0.832201 to 0.0.832784
    • #1709 - Selenoid support
    • #1708 - Bump devtools-protocol from 0.0.831461 to 0.0.832201
    • #1706 - Bump prettier from 2.2.0 to 2.2.1
    • #1705 - Bump devtools-protocol from 0.0.829642 to 0.0.831461
    • #1702 - Bump lint-staged from 10.5.1 to 10.5.2
    • #1701 - Upgrade npm packages
    • #1700 - Bump @babel/parser from 7.12.5 to 7.12.7
    • #1699 - Bump eslint from 7.13.0 to 7.14.0
    • #1698 - Bump devtools-protocol from 0.0.829242 to 0.0.829642
    • #1697 - docs: add taiko-video plugin to plugin docs
    • #1696 - Bump prettier from 2.1.2 to 2.2.0
    • #1695 - Bump typescript from 4.0.5 to 4.1.2
    • #1694 - Bump debug from 4.2.0 to 4.3.1
    • #1693 - Bump devtools-protocol from 0.0.828856 to 0.0.829242
    • #1692 - Bump markdown-it-anchor from 6.0.0 to 6.0.1
    • #1691 - Bump dtslint from 4.0.5 to 4.0.6
    • #1688 - Add plugin documentation
    • #1686 - Bump devtools-protocol from 0.0.828424 to 0.0.828856
    • #1685 - Bump devtools-protocol from 0.0.827510 to 0.0.828424
    • #1683 - Bump devtools-protocol from 0.0.826646 to 0.0.827510
    • #1682 - Update chromium to revision 823078
    • #1681 - Bump eslint-plugin-jest from 24.1.0 to 24.1.3
    • #1680 - #1604 dont close page on windows headful mode
    • #1678 - Bump devtools-protocol from 0.0.825619 to 0.0.826646
    Source code(tar.gz)
    Source code(zip)
  • v1.0.28(Nov 11, 2020)

  • v1.0.27(Nov 11, 2020)

  • v1.0.26(Oct 28, 2020)

  • v1.0.25(Oct 14, 2020)

    Features

    • #1588 - #1557 Update $ selector to take a callback

    Bug Fixes

    • #1593 - Update scroll to nearest
    • #1583 - Fix text search for special char
    Source code(tar.gz)
    Source code(zip)
  • v1.0.24(Oct 5, 2020)

    Features

    • #1537 - #1511 add within proximity selector
    • #1535 - Add regex support for text() API

    Bug Fixes

    • #1550 - #1499 bubble events for checkBox and radioButton API
    • #1536 - Fix typescript typings
    Source code(tar.gz)
    Source code(zip)
  • v1.0.23(Sep 14, 2020)

  • v1.0.22(Sep 10, 2020)

    Features

    • #1486 - fix-1356 Add option to set wsDebugUrl to openBrowser API

    Bug Fixes

    • #1490 - #1477 Fix assertion on runtime result
    • #1485 - #1476 fix buttons
    • #1491 - Fix instance check
    Source code(tar.gz)
    Source code(zip)
  • v1.0.21(Sep 1, 2020)

  • v1.0.20(Aug 28, 2020)

    Features

    • #1432 - Use identifiers for tabs

    Bug Fixes

    • #1456 - scan symlinks recursively, fixes #1449
    • #1448 - #1437 fix check in tap
    • #1445 - Fix text regression
    • #1435 - Removed obsolete function defs
    Source code(tar.gz)
    Source code(zip)
  • v1.0.19(Aug 21, 2020)

  • v1.0.18(Aug 12, 2020)

    Features

    • #1422 - Add regex support for dropdown text selection
    • #1418 - Print action output when env is set. #1328

    Bug Fixes

    • #1414 - #1285 close and reconnect only if target matches active tab
    Source code(tar.gz)
    Source code(zip)
  • v1.0.17(Aug 10, 2020)

Owner
Gauge
A free and open source test automation framework by ThoughtWorks
Gauge
End-to-end testing framework written in Node.js and using the Webdriver API

Nightwatch.js Homepage | Getting Started | Developer Guide | API Reference | About Automated end-to-end testing framework powered by Node.js and using

Nightwatch.js 11.3k Jan 7, 2023
CasperJS is no longer actively maintained. Navigation scripting and testing utility for PhantomJS and SlimerJS

CasperJS Important note: the master branch hosts the development version of CasperJS, which is now pretty stable and should be the right version to us

CasperJS 7.3k Dec 25, 2022
A simple and stable cross-browser testing tool. 简单稳定的跨浏览器测试工具。

totoro A simple and stable cross-browser testing tool. Latest stable version: v2.0 Change Log 中文版使用文档 0. Features Run in real browsers Support all tes

totoro 568 Dec 21, 2022
A next-generation code testing stack for JavaScript.

Intern Software testing for humans ⚠️ This documentation is for the development version of Intern. For the current release version, go here. Intern is

Intern: next-gen JavaScript testing 4.4k Jan 7, 2023
Headless Chrome Node.js API

Puppeteer API | FAQ | Contributing | Troubleshooting Puppeteer is a Node library which provides a high-level API to control Chrome or Chromium over th

Puppeteer 81.4k Jan 1, 2023
Next-gen browser and mobile automation test framework for Node.js

Next-gen browser and mobile automation test framework for Node.js. Homepage | Developer Guide | API Reference | Contribute | Changelog | Roadmap Webdr

WebdriverIO 7.9k Jan 3, 2023
A testing focused Remix Stack, that integrates E2E & Unit testing with Playwright, Vitest, MSW and Testing Library. Driven by Prisma ORM. Deploys to Fly.io

Live Demo · Twitter A testing focused Remix Stack, that integrates E2E & Unit testing with Playwright, Vitest, MSW and Testing Library. Driven by Pris

Remix Stacks 18 Oct 31, 2022
Grupprojekt för kurserna 'Javascript med Ramverk' och 'Agil Utveckling'

JavaScript-med-Ramverk-Laboration-3 Grupprojektet för kurserna Javascript med Ramverk och Agil Utveckling. Utvecklingsguide För information om hur utv

Svante Jonsson IT-Högskolan 3 May 18, 2022
Hemsida för personer i Sverige som kan och vill erbjuda boende till människor på flykt

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

null 4 May 3, 2022
Kurs-repo för kursen Webbserver och Databaser

Webbserver och databaser This repository is meant for CME students to access exercises and codealongs that happen throughout the course. I hope you wi

null 14 Jan 3, 2023
Playwright is a framework for Web Testing and Automation. It allows testing Chromium, Firefox and WebKit with a single API.

?? Playwright Documentation | API reference Playwright is a framework for Web Testing and Automation. It allows testing Chromium, Firefox and WebKit w

Microsoft 46.3k Jan 9, 2023
🐐 Simple and complete React DOM testing utilities that encourage good testing practices.

React Testing Library Simple and complete React DOM testing utilities that encourage good testing practices. Read The Docs | Edit the docs Table of Co

Testing Library 17.3k Jan 4, 2023
🐐 Simple and complete React DOM testing utilities that encourage good testing practices.

React Testing Library Simple and complete React DOM testing utilities that encourage good testing practices. Read The Docs | Edit the docs Table of Co

Testing Library 17.3k Jan 4, 2023
Javascript-testing-practical-approach-2021-course-v3 - Javascript Testing, a Practical Approach (v3)

Javascript Testing, a Practical Approach Description This is the reference repository with all the contents and the examples of the "Javascript Testin

Stefano Magni 2 Nov 14, 2022
AREX: It is a “Differential Testing” and “Record and Replay Testing” Tool.

AREX: It is a “Differential Testing” and “Record and Replay Testing” Tool. Test restful API by record, replay and stub request/response. Differential

ArexTest 15 Nov 1, 2022
Monkey testing library for web apps and Node.js

gremlins.js A monkey testing library written in JavaScript, for Node.js and the browser. Use it to check the robustness of web applications by unleash

marmelab 8.9k Dec 31, 2022
Automated testing for single-page applications (SPAs). Small, portable, and easy to use. Click on things, fill in values, await for things exist, etc.

SPA Check Automated testing for single-page applications (SPAs). Small, portable, and easy to use. Click on things, fill in values, await for things e

Cory Leigh Rahman 5 Dec 23, 2022
Modern Cross Browser Testing in JavaScript using Playwright

Modern Cross Browser Testing in JavaScript using Playwright This repository contains the example code for the Modern Cross Browser Testing in JavaScri

Applitools 5 Oct 3, 2022
A simple library for Node and the browser that allows you to rapidly develop stateful, socketed multiplayer games and web applications.

gameroom.js Overview gameroom.js is a simple library for Node and the browser that allows you to rapidly develop stateful, socketed multiplayer games

Jackson Bierfeldt 3 Nov 3, 2022
A Node.js tool to automate end-to-end web testing.

A Node.js tool to automate end-to-end web testing. Write tests in JS or TypeScript, run them and view results. Homepage • Documentation • FAQ • Suppor

Developer Express Inc. 9.5k Jan 9, 2023