This project contains the configuration and the adapter that implements an ActionGenerator interface for generating specifications using the web-browser-test-creator utility.
- node >= 10.12.0
yarn add --dev @eigenspace/web-browser-test-kit
- Be sure that the target machine has Docker
- Setup Selenoid with
the instruction from the official documentation.
The definition of done is that:
- You can access to
{{host}}:4444
and you get a JSON with browser usage statistics - You can access to
{{host}}:8080
and see the Selenoid's user interface
- You can access to
- If you're a Windows user please disable Firewall
-
Add all required folders to tsconfig
include
section:... "include": [ "ui-specs", "node_modules/@wdio/sync/webdriverio-core.d.ts", "node_modules/@wdio/sync/webdriverio.d.ts", ... ]
-
Run
node PATH/TO/web-wdio-e2e-kit/scripts/generate-specs.js --outputDir=pathToDir --configDir=pathToDir
Parameter Type Required Default Description outputDir string false /ui-specs/specs output directory for generating specs configDir string false /ui-specs/configs directory with scenario configs
Just run yarn jest
@eigenspace/web-browser-test-creator
- used to generate specs in human understandable language.@eigenspace/argument-parser
- used to parse arguments.chromedriver
- chromium webdriver implementation.expect
- used as assert library .ts-node
- used to enable wdio to work with ts files.tsconfig-paths
- used to resolve ts files.webdriverio
- used for Selenoid remote connection.jest-diff
- used for comparing two objects in the results and outputting differences.jest-image-snapshot
- used for comparison of image snapshots
ing actual and result images and outputting differences.
@types/*
- contains type definitions for a specific library.@eigenspace/codestyle
- includes lint rules, config for typescript.@eigenspace/common-types
- includes common types.@eigenspace/helper-scripts
- helps us deploy the package.eslint-plugin-eigenspace-script
- Includes set of script linting rules and configuration for them.typescript
- is a superset of JavaScript that have static type-checking and ECMAScript features.husky
- used for configure git hooks.lint-staged
- used for configure linters against staged git files.eslint
- it checks code for readability, maintainability, and functionality errors.jest
- spec runner.ts-jest
- it lets you use Jest to test projects written in TypeScript.