# Getting Started

Welcome to the WebdriverIO documentation. It will help you to get started fast. If you run into problems, you can find help and answers on our [Discord Support Server](https://discord.webdriver.io) or you can hit us on [𝕏](https://x.com/webdriverio).

info

These are the docs for the latest version (**>=9.x**) of WebdriverIO. If you are still using an older version, please visit the [old documentation websites](/versions)!

Official YouTube Channel 🎥

You can find more videos around WebdriverIO on the [official YouTube channel](https://youtube.com/@webdriverio). Make sure you subscribe!

## Initiate a WebdriverIO Setup[​](#initiate-a-webdriverio-setup "Direct link to Initiate a WebdriverIO Setup")

To add a full WebdriverIO setup to an existing or new project using the [WebdriverIO Starter Toolkit](https://www.npmjs.com/package/create-wdio), run:

If you're in the root directory of an existing project, run:

* NPM
* Yarn
* pnpm
* bun

```
npm init wdio@latest .
```

or if you want to create a new project:

```
npm init wdio@latest ./path/to/new/project
```

```
yarn create wdio .
```

or if you want to create a new project:

```
yarn create wdio ./path/to/new/project
```

```
pnpm create wdio@latest .
```

or if you want to create a new project:

```
pnpm create wdio@latest ./path/to/new/project
```

```
bun create wdio@latest .
```

or if you want to create a new project:

```
bun create wdio@latest ./path/to/new/project
```

This single command downloads the WebdriverIO CLI tool and runs a configuration wizard that helps you to configure your test suite.

<!-- -->

The wizard will prompt a set questions that guides you through the setup. You can pass a `--yes` parameter to pick a default set up which will use Mocha with Chrome using the [Page Object](https://martinfowler.com/bliki/PageObject.html) pattern.

* NPM
* Yarn
* pnpm
* bun

```
npm init wdio@latest . -- --yes
```

```
yarn create wdio . --yes
```

```
pnpm create wdio@latest . --yes
```

```
bun create wdio@latest . --yes
```

## Install CLI Manually[​](#install-cli-manually "Direct link to Install CLI Manually")

You can also add the CLI package to your project manually via:

```
npm i --save-dev @wdio/cli
npx wdio --version # prints e.g. `8.13.10`

# run configuration wizard
npx wdio config
```

## Run Test[​](#run-test "Direct link to Run Test")

You can start your test suite by using the `run` command and pointing to the WebdriverIO config that you just created:

```
npx wdio run ./wdio.conf.js
```

If you like to run specific test files you can add a `--spec` parameter:

```
npx wdio run ./wdio.conf.js --spec example.e2e.js
```

or define suites in your config file and run just the test files defined by in a suite:

```
npx wdio run ./wdio.conf.js --suite exampleSuiteName
```

## Run in a script[​](#run-in-a-script "Direct link to Run in a script")

If you would like to use WebdriverIO as an automation engine in [Standalone Mode](/docs/setuptypes.md#standalone-mode) within a Node.JS script you can also directly install WebdriverIO and use it as a package, e.g. to generate a screenshot of a website:

getting-started/run-in-script.js

```
loading...
```

[View on GitHub](https://github.com/webdriverio/example-recipes/blob/fc362f2f8dd823d294b9bb5f92bd5991339d4591/getting-started/run-in-script.js#L2-L19)

**Note:** all WebdriverIO commands are asynchronous and need to be properly handled using [`async/await`](https://javascript.info/async-await).

## Record tests[​](#record-tests "Direct link to Record tests")

WebdriverIO provides tools to help you get started by recording your test actions on screen and generate WebdriverIO test scripts automatically. See [Recorder tests with Chrome DevTools Recorder](/docs/record.md) for more information.

## System Requirements[​](#system-requirements "Direct link to System Requirements")

You’ll need [Node.js](http://nodejs.org) installed.

* Install at least v18.20.0 or higher as this is the oldest active LTS version
* Only releases that are or will become an LTS release are officially supported

If Node is not currently installed on your system, we suggest utilizing a tool such as [NVM](https://github.com/creationix/nvm) or [Volta](https://volta.sh/) to assist in managing multiple active Node.js versions. NVM is a popular choice, while Volta is also a good alternative.
