Projet

Général

Profil

Development #67106

tests : revoir les test_large_userbase_find_duplicates*

Ajouté par Paul Marillonnet il y a presque 2 ans. Mis à jour il y a presque 2 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Catégorie:
-
Version cible:
-
Début:
07 juillet 2022
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

Deux tests unitaires de l’api de recherche de doublons, pour lesquels on crée 100 000 utilisateurs en base.
L’idée est que, sur ce nombre élevé d’utilisateurs dont les attributs ont été définis aléatoirement (module Faker), une probabilité de doublon sur le premier utilisateur crée parmi les cent milles tend vers un. On est donc certain de disposer d’un vrai positif pour tester l’api de rercherche de doublons.

On pourrait modifier la fixture et les tests d’une façon qui permette de réduire ce nombre d’utilisateurs élévé (et un temps d’exécution des tests en conséquence), par exemple en :
· réduisant l’espace d’arrivée des attributs générés aléatoirement, augmentant ainsi la probabilité de doublon entre deux usagers,
· en faisant des tests de doublons de n à n usagers (pour l’instant les doublons ne sont testés que sur le premier usager parmi tous ceux créés),
· générer des données de tests, qui bien que plus réduites et toujours randomisées permettent de s’assurer d’une probabilité de doublon égale à 1 (par exemple avec un nombre d’usagers de tests N et un espace d’arrivée des usagers générés aléatoirement de cardinalité M, avec N > M).


Fichiers


Demandes liées

Lié à Authentic 2 - Development #67101: build nocturne casséFermé07 juillet 2022

Actions

Révisions associées

Révision d5f16e62 (diff)
Ajouté par A. Berriot il y a presque 2 ans

ci: removed unnecessary slow marker (#67106)

Révision 062f1f10 (diff)
Ajouté par A. Berriot il y a presque 2 ans

ci: removed unnecessary test case, as find_duplicates is already tested (#67106)

Révision 03d12e32 (diff)
Ajouté par A. Berriot il y a presque 2 ans

ci: speed up slow tests by reducing loop sizes (#67106)

Historique

#1

Mis à jour par Paul Marillonnet il y a presque 2 ans

  • Assigné à mis à A. Berriot

(Agate me dit qu’elle regarde.)

#2

Mis à jour par Paul Marillonnet il y a presque 2 ans

  • Description mis à jour (diff)
#3

Mis à jour par Paul Marillonnet il y a presque 2 ans

  • Description mis à jour (diff)
#5

Mis à jour par A. Berriot il y a presque 2 ans

  • Assigné à changé de A. Berriot à Benjamin Dauvergne

Voici les points implémentés dans le ticket (les patchs sont normalement relativement explicites):

1. Suppression de marker slow, qui rajoute de la complexité pour seulement trois tests
2. Suppression du test tests/test_large_userbase.py car find_duplicates est testé de manière extensive ailleurs, notamment dans tests/api/test_all.py
3. Reducation de la taille de certaines boucles / créations d'objects, pour réduire le temps d'exécution (je comprends le besoin de créer pleins d'utilisateurs, mais 5 ou 10 suffisent peut-être au lieu de 100 ;)

#6

Mis à jour par A. Berriot il y a presque 2 ans

#7

Mis à jour par Benjamin Dauvergne il y a presque 2 ans

  • Statut changé de Solution proposée à Solution validée

Ok, c'était pensé un peu comme des tests de perf mais comme on a pas de rendu graphique des temps dans jenkins ça sert un peu à rien au milieu des tests. On en remettra un jour de pluie.

#8

Mis à jour par A. Berriot il y a presque 2 ans

  • Statut changé de Solution validée à Résolu (à déployer)
commit 03d12e329b7c68ae43ade11911cdb41b5da411c2
Author: Agate <aberriot@entrouvert.com>
Date:   Thu Jul 7 10:56:52 2022 +0200

    ci: speed up slow tests by reducing loop sizes (#67106)

commit 062f1f10c6398c84cc3b1ece06bfb9b986f37b70
Author: Agate <aberriot@entrouvert.com>
Date:   Thu Jul 7 10:53:26 2022 +0200

    ci: removed unnecessary test case, as find_duplicates is already tested (#67106)

commit d5f16e620dcc2544e468f5807c5db3d34ab60906
Author: Agate <aberriot@entrouvert.com>
Date:   Thu Jul 7 10:48:44 2022 +0200

    ci: removed unnecessary slow marker (#67106)
#9

Mis à jour par Transition automatique il y a presque 2 ans

  • Statut changé de Résolu (à déployer) à Solution déployée
#10

Mis à jour par Transition automatique il y a plus d'un an

Automatic expiration

Formats disponibles : Atom PDF