mcpbeat

Testdriver:performing Actions

testdriverai/testdriverai-testdriver:performing-actions

Click, type, hover, scroll and more with TestDriver

384 tokens
context cost
the whole folder, loaded on every use
1
files
instructions only
0
copies elsewhere
how many repositories repackaged it
237
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/testdriverai/testdriverai --skill testdriver:performing-actions

The instruction itself

2 sections, as written by the author

<!-- Generated from performing-actions.mdx. DO NOT EDIT. -->

Performing Actions

TestDriver provides a variety of actions you can perform, like clicking, typing, hovering, and scrolling. For a full list, see the API Reference.

// Clicking
await testdriver.find('submit button').click();
await testdriver.find('file item').doubleClick();
await testdriver.find('text area').rightClick();

// Typing
await testdriver.find('email input').type('[email protected]');
await testdriver.find('password input').type('secret', { secret: true });

// Keyboard shortcuts
await testdriver.pressKeys(['enter']);
await testdriver.pressKeys(['ctrl', 'c']);

// Hovering
await testdriver.find('dropdown menu').hover();

// Scrolling
await testdriver.scroll('down', 500);

// Waiting
await testdriver.wait(2000); // Wait 2 seconds for animation/state change

// Extracting information from screen
const price = await testdriver.extract('the total price');
const orderNumber = await testdriver.extract('the order confirmation number');

Chaining Actions

TestDriver supports method chaining for cleaner code:

// Chain find() with actions
const button = await testdriver.find('submit button').click();

Or save element reference for later use:

const button = await testdriver.find('submit button');
await button.click();

How to use it

Copy the folder

Take testdriverai/testdriverai-testdriver:performing-actions from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.