Skip to main content

Module ux_coverage

Module ux_coverage 

Source
Expand description

UX Coverage Metrics (Feature 24 - EDD Compliance) UX Coverage Metrics (Feature 24 - EDD Compliance)

Provides 100% provable UX coverage metrics for WASM games and TUI apps. Tracks which UI elements, interactions, and states have been tested.

§EXTREME TDD: Tests written FIRST per spec

§Probar Principles

  • Error Prevention: Type-safe coverage tracking prevents blind spots
  • Efficiency: Efficient hit counting without overhead
  • User Journey Tracking: Coverage reflects actual user journeys
  • Balanced Testing: Even distribution of test coverage

§Simple Usage

use jugar_probar::gui_coverage;
use jugar_probar::ux_coverage::*;

// Define your GUI elements once
let mut tracker = gui_coverage! {
    buttons: ["start", "pause", "restart"],
    screens: ["title", "playing", "game_over"]
};

// Record interactions during tests
tracker.click("start");
tracker.visit("title");

// Get simple coverage report
println!("{}", tracker.summary()); // "GUI: 33% (2/6 elements)"

Structs§

ElementCoverage
Coverage report for a single element
ElementId
A unique identifier for a UI element
StateId
UI state that can be tracked
TrackedInteraction
Tracked interaction on an element
UxCoverageBuilder
Builder for defining UX coverage requirements
UxCoverageReport
UX Coverage Report
UxCoverageTracker
UX Coverage Tracker

Enums§

InteractionType
Types of interactions that can be tracked

Functions§

calculator_coverage
Shorthand for a calculator-style GUI (common pattern)
game_coverage
Shorthand for a simple game GUI