Nous avons généré du code avec Codegen, des Locators robustes, mais nous n’avons rien testé ! Pour vérifier que les résultats obtenus correspondent à ce que l’on attend, on utilise les assertions.
https://playwright.dev/docs/api/class-genericassertions
En vous servant de la doc, faites un test qui vérifie que :
true
est vrai0.1 + 0.2
est égal à 0.3
"$ 128"
correspond au format de prix attendu ($, puis espace, puis le prix) et le prix est un nombre, supérieur à 100Les assertions orientées web (Web-first assertions) sont spécifiquement faite pour tester le DOM. Elles sont conçues avec des notions de HTML et CSS en tête. De plus, il y a un mécanisme d’auto-retry.
Par exemple
expect(locator).toBeChecked()
expect(locator).toBeDisabled()
expect(locator).toBeEditable()
expect(locator).toBeEmpty()
expect(locator).toBeEnabled()
expect(locator).toBeFocused()
expect(locator).toBeHidden()
expect(locator).toBeVisible()
expect(locator).toContainText(text)
expect(locator).toHaveAttribute(name)
expect(locator).toHaveClass(expected)
expect(locator).toHaveCount(count)
expect(locator).toHaveCSS(name, value)
expect(locator).toHaveId(id)
expect(locator).toHaveText(expected)
expect(locator).toHaveValue(value)
Reprenons le test du chapitre Des locators robustes et efficaces.
Vérifions que :
ℹ️ note
Pour éviter les erreurs et aller plus vite, je conseille de configurer ESLint Plugin Playwright https://www.npmjs.com/package/eslint-plugin-playwright
Références
https://playwright.dev/docs/api/class-genericassertions
https://playwright.dev/docs/test-assertions