GitHub - webdriverio/codemod: A codemod to transform Protractor into WebdriverIO tests (original) (raw)

WebdriverIO Codemod Test

This project contains various codemods to help migrating from either one major WebdriverIO version to another or from a specific framework to WebdriverIO. It can be used with jscodeshift and currently supports the following migrations:

If you run into any issues during your migration please let us know.

Install

To transform your spec files, you need to install the following packages:

$ npm install jscodeshift @wdio/codemod

Usage

To transform you code, run:

$ npx jscodeshift -t ./node_modules/@wdio/codemod/

e.g. to migrate from v5 to v6

$ npx jscodeshift -t ./node_modules/@wdio/codemod/v6 ./e2e/

e.g. to migrate from v6 to v7:

$ npx jscodeshift -t ./node_modules/@wdio/codemod/v7 ./e2e/

e.g. to transform Protractor code:

$ npx jscodeshift -t ./node_modules/@wdio/codemod/protractor ./e2e/

e.g. to tranform from sync to async

$ npx jscodeshift -t ./node_modules/@wdio/codemod/async ./e2e/

If you use TypeScript make sure you apply a different parser as parameter, e.g.:

$ npx jscodeshift -t ./node_modules/@wdio/codemod/protractor --parser=tsx ./e2e/*.ts

If you use a different line terminator from your os, you can override it as parameter, e.g.:

$ npx jscodeshift -t ./node_modules/@wdio/codemod/async --printOptions='{"lineTerminator":"\n"}' ./e2e/

You can transform tests as well as config files, e.g.:

Codemod Usage Example