microsoft / microsoft/playwright-java

[Feature]: Order-Insensitive Collection Assertions

Ouverte
#1,876 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub

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

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. 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

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.