testdriver:right-click

SkillDev tools

Perform a right-click action to open context menus

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the testdriver:right-click skill

What this skill tells your AI

The instructions your AI receives, as published by testdriverai/testdriverai in ai/skills/testdriver-right-click/SKILL.md and read by ahel’s review.

Overview

The rightClick() method does a right-click action on an element. It usually opens context menus. You can call it on an Element instance. Or you can use it with a selector.

Syntax

// Right-click on an element
await element.rightClick();

// Right-click using a selector
await ai.rightClick('selector');

Parameters

When called on an Element, no parameters are required.

When called directly on the AI client:

ParameterTypeDescription
selectorstringThe selector describing the element to right-click

Returns

It returns a Promise<void>. The promise resolves when the right-click action completes.

Examples

Right-Click to Open Context Menu

const fileItem = await ai.find('README.md file');
await fileItem.rightClick();

// Select menu option
await ai.click('Delete from context menu');

Direct Right-Click with Selector

await ai.rightClick('image in the gallery');
await ai.click('Save image as');

VS Code Context Menu

import { test } from 'vitest';
import { vscode } from '@testdriver/sdk';

test('renames a file via context menu', async () => {
  const { ai } = await vscode();

  // Right-click on a file
  await ai.rightClick('test.js in the file explorer');

  // Click rename option
  await ai.click('Rename');

  // Type new name
  await ai.type('test.spec.js');
  await ai.pressKeys('Enter');

  // Verify rename
  const renamedFile = await ai.find('test.spec.js in the file explorer');
  expect(renamedFile).toBeTruthy();
});

Browser Context Menu

import { test } from 'vitest';
import { chrome } from '@testdriver/sdk';

test('opens link in new tab', async () => {
  const { ai } = await chrome('https://example.com');

  // Right-click on a link
  await ai.rightClick('Documentation link');

  // Select "Open in new tab"
  await ai.click('Open link in new tab');
});

Custom Context Menu in Web App

test('uses custom context menu', async () => {
  const { ai } = await chrome('https://app.example.com');

  // Right-click on custom element
  await ai.rightClick('project item in the list');

  // Wait for custom menu to appear
  await ai.find('custom context menu');

  // Click menu option
  await ai.click('Duplicate project');

  // Verify duplication
  const duplicatedProject = await ai.find('project item (copy)');
  expect(duplicatedProject).toBeTruthy();
});

Related Methods

Signals

GitHub stars
242
Forks
35
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
testdriver-right-click
Source
github.com/testdriverai/testdriverai