Skip to main content

gui_coverage

Macro gui_coverage 

Source
macro_rules! gui_coverage {
    {
        $(buttons: [$($btn:expr),* $(,)?])?
        $(, inputs: [$($inp:expr),* $(,)?])?
        $(, screens: [$($scr:expr),* $(,)?])?
        $(, modals: [$($mod:expr),* $(,)?])?
        $(,)?
    } => { ... };
}
Expand description

Create a GUI coverage tracker with minimal boilerplate

ยงExample

use jugar_probar::gui_coverage;

// Define what needs to be tested
let mut gui = gui_coverage! {
    buttons: ["start", "pause", "quit"],
    inputs: ["username", "password"],
    screens: ["login", "main", "settings"]
};

// During tests, record interactions
gui.click("start");
gui.input("username");
gui.visit("login");

// Check coverage
println!("{}", gui.summary());  // "GUI: 33% (3/9 elements, 1/3 screens)"
assert!(gui.meets(30.0));       // At least 30% covered