Skip to contents

Start Shiny app as local R subprocess. Connect the shinyloadtest recorder and connect Chrome to the recorder. Manipulate the headless Chrome and close connection. shinycannon replays

Usage

record_app(
  headless_actions = NULL,
  timeout = NULL,
  workers = 5,
  port = randomPort(max = 3500),
  ...
)

Arguments

headless_actions

Custom code passed as an expression to manipulate the app with headless web browser, for instance app$set_inputs(obs = 200); app$run_js('1+1');. See https://rstudio.github.io/shinytest2/reference/AppDriver.html to get all available methods. If NULL, the app will undergo a classic random Monkey test session, taking a screenshot right after loading and after the monkey test. We do not recommend running a monkey test if your app is pointing to a database, unless the pipeline CI/CD runs in a dedicated test environment.

timeout

Time to wait after starting the subprocess (s). Useful is you know how much time the app takes to load. Defaults to 10 seconds locally and 20 seconds on CI/CD.

workers

Number of workers for shinycannon. Default to 5.

port

Port to start the app, default to httpuv::randomPort().

...

Pass extra parameters to run_app_audit. This is useful if you work with packages like golem.