Una ubicación autorizada es solo un caso de prueba.
Separa el permiso del navegador, las coordenadas controladas y la alternativa de la aplicación antes de declarar cubierta la ubicación.

Edición traducida. Los identificadores técnicos permanecen en su forma original.

Una página usa la ubicación correctamente porque la prueba siempre concede permiso. La suite ha aprendido un entorno cómodo, no toda la experiencia. Sin una posición utilizable, alguien puede quedarse esperando o perder la entrada manual. Leer coordenadas no demuestra esas alternativas.
Esta guía usa la documentación de emulación de Playwright y la API BrowserContext para un lector local inventado. Las coordenadas son controladas, no la ubicación actual de una persona. No hay proveedor de mapas, pedido ni cuenta. Separamos permiso, posición y respuesta de la interfaz cuando no existe una posición utilizable.
Permiso y posición son entradas distintas
Conceder geolocalización no define coordenadas. Proporcionarlas no concede permiso para leerlas. Configura ambas cosas deliberadamente en un contexto desechable y limita el permiso al origen conocido.
const context = await browser.newContext({
geolocation: { latitude: 0, longitude: 0 }
});
await context.grantPermissions(['geolocation'], {
origin: 'http://localhost:4179'
});
const page = await context.newPage();
await page.goto('http://localhost:4179/');
await page.getByRole('button', { name: 'Read demo location' }).click();
await expect(page.getByRole('status')).toHaveText('Demo coordinates: 0, 0');
await context.close();El ejemplo requiere un servidor local en ese origen y las fixtures browser y expect de Playwright. Usa ceros como datos claramente controlados, no como dirección recomendada. La página informa los números recibidos; no deduce un lugar real, una zona de servicio o una posición física exacta.
La documentación advierte que los permisos admitidos varían entre navegadores y versiones. Verifica el permiso en el motor concreto. Un resultado de Chromium no certifica otro motor, sistema móvil o dispositivo físico.
Haz observable la alternativa sin posición
La API documenta setGeolocation(null) para emular una posición no disponible. En otro caso controlado, aplica ese dato y deja que la función de error muestre Ubicación no disponible y un campo manual. La muestra tiene un tiempo de espera limitado.
Comprueba que la alternativa es visible y usable, no solo que se llamó al error. La prueba local rellena el campo de zona con Invented area. Eso demuestra una entrada utilizable tras el error, no que un servicio real acepte esa zona.
No lo llames prueba de rechazo del usuario. Permiso concedido con posición no disponible es otra configuración. Una petición de permiso, una política restrictiva, un sensor no disponible y un tiempo agotado pueden producir interfaces parecidas, pero tienen causas distintas. Añade rechazo explícito mediante una configuración admitida y verificada si el producto lo requiere.
Reinicia el contexto, no el significado
Las anulaciones de permisos pertenecen al contexto. clearPermissions() las borra, pero no demuestra que una persona rechazó el permiso. Usa contextos nuevos para escenarios independientes y describe los datos que cada uno proporciona.
Incluye el origen real de la muestra en la concesión. Sin origen, el alcance es mayor de lo necesario. No traslades permisos de un experimento local a otro sitio o a un navegador autenticado compartido. Un contexto desechable facilita revisar el alcance.
Un producto puede guardar la última posición o pedir entrada manual antes del permiso. Acuerda esas expectativas con el equipo. Una lectura positiva no cubre coordenadas antiguas, umbrales de precisión ni actualizaciones posteriores.
Revisa la alternativa como un recorrido del producto
Nombra el caso concedido, el no disponible y el rechazo verificado por separado. Define la siguiente acción de cada estado. Si se promete entrada manual, comprueba su etiqueta y que el siguiente paso acepta el dato autorizado de pruebas.
AnyTest describe exploración y pruebas para revisión humana. Pregunta qué permiso, qué coordenadas y qué alternativa usa el recorrido. No se afirma una API de permisos de AnyTest ni validación en dispositivos físicos. La cobertura útil comienza con un entorno explícito y una alternativa tratada como recorrido real.
Preguntas comunes
¿El permiso de geolocalización proporciona una posición real?
No. Permiso y posición controlada son entradas separadas; la muestra no establece una ubicación física real.
¿Una posición no disponible equivale a rechazar el permiso?
No. Comprueba y etiqueta las causas por separado. Borrar las anulaciones no demuestra un rechazo explícito.