---
title: "Recommended practices | Grafana k6 documentation"
description: "A list of different examples and recommended practices when working with the k6 browser module"
---

# Recommended practices

This section presents some examples and recommended practices when working with the `k6 browser` module to leverage browser automation as part of your k6 tests.

- [Handle stale or dynamic elements after navigation](/docs/k6/next/using-k6-browser/recommended-practices/handle-dynamic-elements/)
- [Hybrid approach to performance](/docs/k6/next/using-k6-browser/recommended-practices/hybrid-approach-to-performance/)
- [Page object model](/docs/k6/next/using-k6-browser/recommended-practices/page-object-model-pattern/)
- [Prevent cookie banners from blocking interactions](/docs/k6/next/using-k6-browser/recommended-practices/prevent-cookie-banners-blocking/)
- [Prevent too many time series error](/docs/k6/next/using-k6-browser/recommended-practices/prevent-too-many-time-series-error/)
- [Select elements](/docs/k6/next/using-k6-browser/recommended-practices/select-elements/)
- [Simulate user input delay](/docs/k6/next/using-k6-browser/recommended-practices/simulate-user-input-delay/)
- [Use Page.close to clean up test resources](/docs/k6/next/using-k6-browser/recommended-practices/clean-up-test-resources-page-close/)
- [When to use sleep() and page.waitForTimeout()](/docs/k6/next/using-k6-browser/recommended-practices/sleep-vs-page-wait-for-timeout/)
