posit-dev / posit-dev/vip

fix(workbench): positron extensions test looks for wrong element selector

Open Beginner friendly
#274 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

team: workbench
Dominant language
Python
Stars
8
Forks
1
Avg merge
18h 23m
Merged PRs (30d)
63

Description

Problem

test_positron_extensions[chromium] fails looking for get_by_role("button", name="home Posit Workbench") but the actual Positron UI has a tab element named "Posit Workbench" instead.

Observed at: PHS UAT (pwb-uat.publichealthscotland.org) on 2026-05-20

Error output:

Locator expected to be visible
waiting for get_by_role("button", name="home Posit Workbench")

The accessibility tree dump shows Positron loaded successfully with a tab labeled "Posit Workbench" visible in the sidebar:

- tab "Posit Workbench"

The step "the Posit Workbench extension is visible in Positron" (test_ide_extensions.py:280-287) waits for a button with name "home Posit Workbench", but newer Positron versions appear to render this as a tab in the Activity Bar rather than a button.

Expected Behavior

The selector should match the actual UI element that represents the Posit Workbench extension presence — whether it's rendered as a button or a tab.

Suggested Fix

Update the selector to look for the Posit Workbench extension indicator using a more resilient locator, e.g.:

  • page.get_by_role("tab", name="Posit Workbench") or
  • A locator that accepts either role

Reproduction

Run VIP against a Workbench instance with a recent Positron version installed.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in test_ide_extensions.py:280-287, where the Posit Workbench extension visibility step uses the button locator. Check the accessibility tree in a Workbench instance with a recent Positron version, then update the selector to match the rendered extension indicator. Done means test_positron_extensions[chromium] passes when the indicator is a tab or button.

Written by the indexing model from the issue text.

Assessment

Tech stack
playwright, python
Domain
testing-qa
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
78/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.