microsoft / microsoft/playwright-java
[Feature]: Order-Insensitive Collection Assertions
Personne n'a encore pris cette issue.
- Langage dominant
- Java
- Étoiles
- 1.6k
- Forks
- 298
- Merge moyen
- 3 j 2 h
- PR mergées (30 j)
- 14
Description
🚀 Feature Request
The hasText(String[] expected) assertion is strictly order-dependent. However, many UI components (like tags, filter chips, or list items) might appear in a non-deterministic order or the order might be irrelevant to the test case.
Example
Add a param to HasTextOptions or a new method to ignore order: hasText(String[] expected, boolean ignoreOrder) or hasTextInAnyOrder(String[] expected).
Motivation
Resilience to Change: Tests won't fail due to minor UI sorting changes that do not affect business logic.
Cleaner Test Code: Developers won't need to manually fetch, sort, and compare lists, which often bypasses Playwright's automatic retries.
Implementation: This can be implemented by internally sorting both the actual and expected collections before comparison when the flag is set.
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par localiser l’assertion hasText(String[] expected) et HasTextOptions, puis examinez comment les valeurs des collections sont comparées et comment les tests d’assertions existants couvrent les nouvelles tentatives. Décidez quelle API proposée correspond aux conventions du projet et ajoutez des tests montrant qu’une correspondance indépendante de l’ordre réussit tout en préservant le comportement actuel dépendant de l’ordre. Le travail est terminé lorsque la nouvelle option ou méthode gère un ordre non déterministe de la collection sans contourner les nouvelles tentatives automatiques.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- java, playwright
- Domaine
- testing
- Type d'issue
- Fonctionnalité
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- Calme
- Clarté
- Plutôt claire
- Accessibilité débutants
- 48/100