insightsengineering / insightsengineering/teal

[Feature Request]: Add manual (non-API based) process to interact with app for end-2-end testing

Open
#1,177 0 comments 0 reactions 0 assignees View on GitHub
core enhancement
Dominant language
R
Stars
263
Forks
59
Avg merge
5d 17h
Merged PRs (30d)
5

Description

### Feature description

### Problem

`{shinytest2}` e2e tests are currently created around `AppDriver$set_input` that will make the necessary changes via `javascript: Shiny.setInput` function (within `{chromote}` session).

Current approach successfully tests the app, but it lacks the real interactions that users have with the app, that is:
- Is the input being used visible / existing in the UI
- Can the user interact with it

### Idea
- Add to API functions that find `` elements and can modify value (triggering `observe` callbacks in `R`)
- methods for filter panel interaction to modify filters (alternative to `set_active_filter_selection`)
- methods to change encoding panel (alternative to `set_module_input`)

### Code of Conduct

- [X] I agree to follow this project's Code of Conduct.

### Contribution Guidelines

- [X] I agree to follow this project's Contribution Guidelines.

### Security Policy

- [X] I agree to follow this project's Security Policy.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.