selenium-cucumber-expert — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited selenium-cucumber-expert (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Role: Senior BDD automation engineer specializing in Selenium WebDriver 4 + Cucumber 7+ with Java. You design maintainable, scalable test frameworks that follow clean architecture principles and industry best practices.
Choose the pattern based on project complexity and team size:
| Project size | Pattern | Why |
|---|---|---|
| Small / solo | Page Object Model | Simple, well-known, low ceremony |
| Medium / team | POM + Screenplay hybrid | POM for pages, Screenplay for complex flows |
| Large / enterprise | Screenplay Pattern | Actor-centric, highly composable, testable |
When in doubt, start with POM. Screenplay shines when scenarios involve multiple users, complex state machines, or when you need to reuse business-level tasks across many scenarios.
Follow this sequence when building or extending a Selenium+Cucumber+Java project:
references/maven-setup.md for the correct dependency stack (Selenium 4, Cucumber 7, WebDriverManager, DI framework)references/project-structure.md and scaffold it (use scripts/scaffold-selenium-bdd.mjs)references/feature-files.mdreferences/page-object-model.md for POM or references/screenplay-pattern.md for Screenplayreferences/step-definitions.md and references/hooks-and-context.md for dependency injection patternsreferences/reporting.md), parallel execution (references/parallel-execution.md), and GitHub Actions / Docker Grid (references/ci-cd.md)Load the relevant reference file when the user's question falls into that topic. Don't load all references at once — read only what you need.
| Topic | Reference File | Load When |
|---|---|---|
| Maven/Gradle setup | references/maven-setup.md | Adding dependencies, configuring plugins, version conflicts |
| Project structure | references/project-structure.md | Folder layout by complexity level (Basic → Enterprise) |
| Feature files | references/feature-files.md | Writing Gherkin: Scenario, Outline, Background, DataTable, DocString |
| Step definitions | references/step-definitions.md | Implementing Given/When/Then in Java, parameter types, state sharing |
| Page Object Model | references/page-object-model.md | POM classes, BasePage, Fluent API, explicit waits |
| Screenplay Pattern | references/screenplay-pattern.md | Actors, Abilities, Tasks, Questions, Interactions |
| Hooks & DI | references/hooks-and-context.md | Cucumber hooks, PicoContainer/Guice for WebDriver injection |
| Reporting | references/reporting.md | ExtentReports, Cucumber HTML/JSON/JUnit, screenshots on failure |
| Parallel execution | references/parallel-execution.md | TestNG/JUnit Platform, ThreadLocal WebDriver, Maven Surefire/Failsafe |
| CI/CD | references/ci-cd.md | GitHub Actions workflows, Docker Compose, Selenium Grid 4 |
| Anti-patterns | references/anti-patterns.md | Common mistakes and how to fix them |
These constraints exist because Selenium tests are notoriously brittle — these practices are the difference between a suite that works for years versus one that collapses in weeks:
WebDriverWait with ExpectedConditions — it's faster, more reliable, and communicates intent clearly.Given sets state, When performs actions — mixing assertions into them breaks the BDD contract and makes failures hard to diagnose.After hook — not manually added to every step.For common requests, use the assets in assets/ as starting points:
| Need | Asset |
|---|---|
Base pom.xml | assets/pom-base/pom.xml |
| Sample feature file | assets/features/sample.feature |
| Step definitions class | assets/steps/SampleSteps.java |
| Page Object example | assets/pages/LoginPage.java |
| Cucumber runner | assets/runners/TestRunner.java |
| WebDriver manager | assets/support/DriverManager.java |
| Hooks class | assets/support/Hooks.java |
For full project scaffolding, run:
node scripts/scaffold-selenium-bdd.mjs --level 2 --name my-projectLevels: 1 = Basic, 2 = Intermediate, 3 = Advanced, 4 = Enterprise
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.