API de la classe Locator de Playwright
Locator est l'objet de localisation de Playwright, offrant un filtrage, des opérations et des assertions chaînés.
Méthodes d'opérations de Locator
| Méthode | Description |
locator.click(options?) | Cliquer sur un élément |
locator.dblclick(options?) | Double-cliquer sur l'élément |
locator.hover(options?) | Survoler avec la souris |
locator.fill(value, options?) | Effacer et remplir le texte |
locator.type(text, options?) | Taper caractère par caractère |
locator.clear(options?) | Effacer le champ de saisie |
locator.check(options?) | Cocher la case à cocher |
locator.uncheck(options?) | Décocher |
locator.setChecked(checked, options?) | Définir l'état de la case à cocher |
locator.selectOption(values, options?) | Sélectionner une option de liste déroulante |
locator.setInputFiles(files, options?) | Définir le fichier à téléverser |
locator.dragTo(target, options?) | Glisser vers l'élément cible |
locator.press(key, options?) | Appuyer sur une touche |
locator.screenshot(options?) | Capture d'écran d'élément |
locator.scrollIntoViewIfNeeded(options?) | Défiler jusqu'à l'élément |
Filtrage chaîné des localisateurs
| Méthode | Description |
locator.first() | Obtenir le premier élément correspondant |
locator.last() | Obtenir le dernier élément correspondant |
locator.nth(index) | Obtenir le n-ième (base 0) |
locator.filter(options?) | Filtrer par conditions (hasText, has, hasNot) |
locator.locator(selector) | Continuer la recherche dans les résultats correspondants |
locator.getByRole(role, options?) | Rechercher par rôle dans les résultats correspondants |
locator.getByText(text) | Rechercher par texte dans les résultats correspondants |
locator.getByLabel(text) | Rechercher par libellé dans les résultats correspondants |
locator.and(locator) | ET logique (1.63+) |
locator.or(locator) | OU logique (1.63+) |
Récupération des informations du localisateur
| Méthode | Description |
locator.textContent(options?) | Obtenir le contenu textuel |
locator.innerHTML(options?) | Obtenir innerHTML |
locator.innerText(options?) | Obtenir le texte visible |
locator.inputValue(options?) | Obtenir la valeur d'entrée |
locator.getAttribute(name) | Obtenir la valeur de l'attribut |
locator.count() | Obtenir le nombre de correspondances |
locator.isVisible(options?) | Si visible |
locator.isHidden(options?) | Si masqué |
locator.isEnabled(options?) | Si activé |
locator.isDisabled(options?) | Si désactivé |
locator.isEditable(options?) | Si modifiable |
locator.isChecked(options?) | S'il est coché |
locator.boundingBox(options?) | Obtenir la position et la taille de l'élément |
Exécution JS de Locator
| Méthode | Description |
locator.evaluate(fn, arg?, options?) | Exécuter JS dans le contexte de l'élément |
locator.evaluateAll(fn, arg?) | Exécuter JS sur tous les éléments correspondants |
locator.evaluateHandle(fn, arg?, options?) | Exécuter JS et renvoyer JSHandle |
LocatorAssertions (Réessai automatique)
| Méthode d'assertion | Description |
expect(locator).toBeAttached() | L'élément est dans le DOM |
expect(locator).toBeChecked() | Checked |
expect(locator).toBeDisabled() | Désactivé |
expect(locator).toBeEditable() | Modifiable |
expect(locator).toBeEmpty() | Le contenu est vide |
expect(locator).toBeEnabled() | Enabled |
expect(locator).toBeFocused() | A le focus |
expect(locator).toBeHidden() | L'élément n'est pas visible |
expect(locator).toBeInViewport() | L'élément est dans la fenêtre d'affichage |
expect(locator).toBeVisible() | L'élément est visible |
expect(locator).toContainText(text) | Contient du texte |
expect(locator).toHaveAccessibleDescription(desc) | Possède une description accessible |
expect(locator).toHaveAccessibleName(name) | Possède un nom accessible |
expect(locator).toHaveAttribute(name, value?) | Possède un attribut DOM |
expect(locator).toHaveClass(className) | Possède un nom de classe CSS |
expect(locator).toHaveCount(count) | Possède un nombre spécifié |
expect(locator).toHaveCSS(name, value) | Possède une valeur de propriété CSS |
expect(locator).toHaveId(id) | Possède un ID |
expect(locator).toHaveText(text) | Le contenu textuel correspond |
expect(locator).toHaveValue(value) | La valeur d'entrée correspond |
expect(locator).toHaveValues(values) | Plusieurs valeurs correspondent (sélection multiple) |
expect(locator).toHaveScreenshot(options?) | Comparaison de capture d'écran d'élément |
Classe FrameLocator
| Méthode | Description |
frameLocator.getByRole(role, options?) | Localiser par rôle |
frameLocator.getByText(text) | Localiser par texte |
frameLocator.getByLabel(text) | Localiser par libellé |
frameLocator.getByPlaceholder(text) | Localiser par placeholder |
frameLocator.getByTestId(id) | Localiser par testId |
frameLocator.locator(selector) | Localisation CSS/XPath |
frameLocator.frameLocator(selector) | Localisation d'iframe imbriquée |
frameLocator.first() | Obtenir le premier |
frameLocator.last() | Obtenir le dernier |
frameLocator.nth(index) | Obtenir le n-ième |
Autres extensions