用途:在 Java 项目中使用 Selenium WebDriver 4 与 Cucumber 7+ 编写端到端 BDD 测试,并搭建可维护、可扩展的测试框架。
主要能力:按项目复杂度选择模式——小型/个人用 Page Object Model(POM),中型/团队用 POM + Screenplay 混合,大型/企业用 Screenplay;提供 Maven/Gradle 依赖栈配置、项目结构分级(Basic 到 Enterprise)、Gherkin 特性文件编写、步骤定义与钩子、PicoContainer/Guice 依赖注入、ExtentReports 与 Cucumber 原生报告、并行执行、GitHub Actions 与 Docker Selenium Grid 4 的 CI/CD 参考。
使用方式:先明确浏览器、环境和用户流程范围;按 references/maven-setup.md 配置依赖;按 references/project-structure.md 选择复杂度并可用脚本脚手架:node scripts/scaffold-selenium-bdd.mjs --level 2 --name my-project(级别 1=Basic、2=Intermediate、3=Advanced、4=Enterprise);再编写特性文件、Page Object 或 Screenplay、步骤定义与钩子,最后配置报告与 CI/CD。assets/ 提供 pom.xml、示例 feature、步骤类、Page Object、Runner、DriverManager、Hooks 等起步模板。
关键约束:并行执行使用 ThreadLocal<WebDriver>;禁用 Thread.sleep(),改用 WebDriverWait 与 ExpectedConditions;通过 DI 注入 WebDriver,避免静态或单例;定位符只放在 Page Object 中并作为常量;断言仅放在 Then 步骤;一个场景对应一个业务行为;失败截图由 After 钩子自动完成。
限制:资料未提供具体版本兼容矩阵、收费或价格信息,也未给出完整代码示例,需按需查阅对应参考文件。