Skip to main content

Configuration

Most of the configuration of Pumpo#5 is based on conventions of the underlying open source software, especially:

  • Maven
  • JUnit
  • Selenoid

We have split the reference into following sections:

Private native WebApplication diagnostics​

Opt in separately for each injected WebApplication with a Boolean capability:

@Capability(key = "pn5:selenide:privateDiagnostics", value = "true", type = ValueType.BOOLEAN)
MyWebApplication app

The default is false. Private agents keep exact successful getter results and setter behavior. Their supported native action and condition failures retain the failure category, method/action, lookup kind, a SHA-256 selector identity, condition/status metadata and the originating agent. Native proxy metadata identifies the declared selector; direct native action metadata identifies the resolved selector. Values, text, payloads, raw expected/actual data and unsafe messages, causes and suppressed exceptions are omitted from the maintained failure representation. Native proxy argument logs and @Log content are also private on successful actions. Native absence checks and configured retry loops retain their original exception control flow; the escaping terminal failure is sanitized at the owning proxy boundary. Direct native method failures are sanitized when no owning proxy invocation is active on that agent and thread.

Private mode configures the agent's dedicated SelenideConfig with screenshots and page source disabled before browser actions, regardless of pn5:selenide:reportsFolderEnabled. Core JUnit reporting skips automatic failure artifacts and browser/console/network capture for private failures. Native session-close failure logs use the retiring agent's private policy. Core ExceptionLoggingExtension writes only the safe failure to full-exception.log; JUnit still receives a failure. An unattributed test assertion in a test with a registered private WebApplication is handled conservatively as private. A failure attributed to an ordinary agent preserves that agent's ordinary behavior.

The supported reporter scope is the core AggregatingReporter without optional transports (or no reporter). A selected external transport or custom reporter is rejected before creating a private WebApplication. This capability does not enumerate, remove or change independently installed Selenide listeners. Such listeners can see raw events before a native catch and are outside this guarantee, as are arbitrary user logging, direct WebDriver calls and manual captures. Optional Allure reporting is not qualified by this core capability. Sanitizing a later failure does not erase evidence already sent to an independent listener or manually captured.