Skip to contents

Start Shiny + profvis in the background. Chrome connects to the app and then closes to interrupt profvis. The profile report is then saved and exported in the public folder needed for CI/CD.

Usage

profile_app(
  headless_actions = NULL,
  timeout = NULL,
  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.

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.

Value

Write a .Rprof file to be reused by CI/CD to publish the report on GitLab pages