Research
Security News
Threat Actor Exposes Playbook for Exploiting npm to Build Blockchain-Powered Botnets
A threat actor's playbook for exploiting the npm ecosystem was exposed on the dark web, detailing how to build a blockchain-powered botnet.
@wdio/types
Advanced tools
Utility package providing type information for a variety of WebdriverIO interfaces
@wdio/types is a TypeScript type definitions package for WebdriverIO, a popular automation test framework. It provides type definitions for various WebdriverIO components, making it easier to write type-safe code when using WebdriverIO.
Type Definitions for WebdriverIO Configuration
This feature provides type definitions for WebdriverIO configuration objects, ensuring that the configuration adheres to the expected structure and types.
const config: WebdriverIO.Config = { runner: 'local', specs: ['./test/specs/**/*.js'], capabilities: [{ browserName: 'chrome' }] };
Type Definitions for WebdriverIO Commands
This feature provides type definitions for WebdriverIO commands, allowing for type-safe interactions with the browser and elements.
browser.url('https://example.com'); const title: string = browser.getTitle();
Type Definitions for WebdriverIO Hooks
This feature provides type definitions for WebdriverIO hooks, ensuring that hooks are implemented with the correct parameters and return types.
const hooks: WebdriverIO.Hooks = { before: (capabilities, specs) => { console.log('Before hook'); } };
WebdriverIO is the main package for the WebdriverIO framework, providing the core functionality for browser automation. While @wdio/types focuses on type definitions, webdriverio provides the actual implementation of the automation commands and features.
selenium-webdriver is the official JavaScript implementation of the Selenium WebDriver API. It provides similar browser automation capabilities as WebdriverIO but does not come with built-in TypeScript type definitions, making @wdio/types a better choice for TypeScript users.
Cypress is an end-to-end testing framework that provides a different approach to browser automation compared to WebdriverIO. It comes with built-in TypeScript support, but its API and architecture differ significantly from WebdriverIO.
This package contains a bunch of TypeScript types for internal WebdriverIO consumption. Feel free however to use them in your TypeScript project too.
To install this package from NPM run:
npm i @wdio/types
The package exports the following major type bundles: Capabilities
, Clients
, Options
, Services
, Frameworks
and Reporters
. A lot of them are very WebdriverIO specific but you can leverage some, e.g.
import { Capabilities } from '@wdio/types';
const w3cCaps: Capabilities.W3CCapabilities = {
alwaysMatch: {...},
firstMatch: [],
// fails with "Object literal may only specify known properties, and 'invalid' does not exist in type 'W3CCapabilities'.ts(2322)"
invalid: 42
}
For details please take a look into the individual files.
For more information on WebdriverIO see the homepage.
FAQs
Utility package providing type information for a variety of WebdriverIO interfaces
The npm package @wdio/types receives a total of 418,355 weekly downloads. As such, @wdio/types popularity was classified as popular.
We found that @wdio/types demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 3 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
A threat actor's playbook for exploiting the npm ecosystem was exposed on the dark web, detailing how to build a blockchain-powered botnet.
Security News
NVD’s backlog surpasses 20,000 CVEs as analysis slows and NIST announces new system updates to address ongoing delays.
Security News
Research
A malicious npm package disguised as a WhatsApp client is exploiting authentication flows with a remote kill switch to exfiltrate data and destroy files.