New keyword "Compare Query Results"

Ouverte
#251 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
5/5
Temps estimé
Plus d'une semaine
Accessibilité débutants
25/100
Type d'issue
Fonctionnalité
Clarté
À clarifier
Activité
À l'abandon
Stack technique
python, sql
Domaine
database, testing

Piste de recherche

L’issue ne mentionne aucun fichier, test ou point d’entrée. Commencez par localiser les mots-clés existants liés aux requêtes et leurs tests, puis clarifiez l’ordre des lignes, les écarts de nombre de lignes, le formatage de la sortie et le comportement des assertions. Le travail est considéré comme terminé lorsque le mot-clé de comparaison, le signalement des erreurs et l’affichage visuel des différences ont un comportement défini pour les résultats égaux et inégaux.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

improvement

The keyword should compare results of two SQL queries and show the difference.

The arguments would be like query_1, query_2 and assert_results_equal (True or False).
If False, there is no assertion - just show print the difference in the RF log.

Both queries must deliver the same columns - same numbers and the same names.
It has to be implemented in the queries themselves.

The output should look like a merged table

  • The columns are the same, they're merged (no duplicated cols like Col_A_Query_1 and Col_A_Query_2 - just Col_A).
  • The cells with not equal values should get a red background and contain both values like Value 1 != Value 2.
  • The column name and the row number with a cell with unequal values shall be highlighted as well.
  • And maybe keep them visible during the scrolling (sticky scroll)?
  • All other cells with equal values should be either not highlighted at all or get a green background maybe.

Apart from the visual highlighting, there should be an assertion to provide the keyword status and the error message

  • The error message should not include all details, but maybe a number of rows and column names? Like this: X rows had differences in cols A, B and C?

The very first check though should be the comparison of row number in results

  • If they are unequal, there should be an error message (without details) - and an additional visual output.
  • Visually, it would be maybe nice to print both tables aside and highlight rows, which exist in one of the results only - in green and red, like git merge style?
  • No further assertions are performed in this case.
Langage dominant
Python
Étoiles
179
Forks
178
Merge moyen
28 min
PR mergées (30 j)
1

Préparer son environnement

Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.

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.

Autres issues de MarketSquare/Robotframework-Database-Library

Toutes les issues de MarketSquare/Robotframework-Database-Library

Issues similaires

Plus d'issues Python

Recevez les nouvelles issues par e-mail

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