1. Page Object Model (POM)
Encapsulates UI elements and actions to improve code maintainability.
2. Factory Pattern
Dynamically creates objects like browsers or drivers based on input/config.
3. Singleton Pattern
Ensures only one instance of classes like WebDriver or Config Manager exists.
4. Strategy Pattern
Allows selecting different data sources or logic at runtime.
5. Builder Pattern
Helps in creating complex test data objects step-by-step.
6. Decorator Pattern
Adds extra features like logging and reporting without modifying core code.
7. Command Pattern
Wraps test steps as commands for flexibility and retries.
8. Observer Pattern
Notifies listeners (e.g., loggers, reporters) when events occur.
9. Facade Pattern
Provides a simplified interface to complex logic (e.g., DB + API + UI integration).
10. Adapter Pattern
Bridges between incompatible interfaces or tools.
11. Service Object Pattern
Like POM but for API testing—wraps REST calls in reusable objects.
These patterns help make your test framework clean, modular, and scalable