tests: test infrastructure (setup/teardown) improvements
Les mainteneurs répondent en général sous 10 jours
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
- Refactorisation
- Clarté
- À clarifier
- Activité
- À l'abandon
- Stack technique
- python
- Domaine
- testing-qa
Piste de recherche
Commencez par lire Modified_Testcase et la discussion sur l’infrastructure de test de #1346 afin de recenser les modèles existants de setup et de teardown. Comparez la manière dont les tests créent, servent, exposent et suppriment les dépôts et les répertoires temporaires. Le travail est terminé lorsque l’approche partagée couvre les dépôts au niveau de la classe et de l’instance sans nettoyage répété ou peu fiable.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
(Documenting test improvement ideas from #1346)
A lot (most?) of our tests require a test server (or several). This typically means moving metadata from sources to a temp directory, serving the temp directory and finally removing the temporary directories. Modified_Testcase handles parts of that but it seems obvious that A) it does not provide the required functionality (as tests re-implement a lot of it) and B) that it is hard to use correctly (as #1346 and many previous issues prove). The end result is that there are temp directories created inside tempdirectories and then those directories may or may not get removed (often in a fairly random order)
The common needs are these I think:
- Test class must be able to serve a repository that all its tests run against
- test instance must be able to serve it's own repository (because it wants to modify the contents)
- the served repository paths must be exposed so the content can be modified during test
We could have a better Modified_Testcase that just always runs one test server per class, and provides helpers to "intitialize a new repo" (copy files from sources into a directory inside the served directory). This way both server startup/shutdown and tempdir management would be handled in one place: the actual test classes would only have to remember to chain up Setup*() and *Teardown() -- if they even need those when Modified_Testcase is better.
- Langage dominant
- Python
- Étoiles
- 1.7k
- Forks
- 304
- Merge moyen
- 9 h 25 min
- PR mergées (30 j)
- 14
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Lire 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.
Autres issues de theupdateframework/python-tuf
-
switch to main branch?Ouverte
Difficulté 4/5 3-5 jours Accessibilité débutants 48/100
theupdateframework/python-tuf#3001 ·
Les mainteneurs répondent en général sous 10 jours
-
Difficulté 4/5 3-5 jours Accessibilité débutants 42/100
theupdateframework/python-tuf#2979 · 1 commentaire ·
Les mainteneurs répondent en général sous 10 jours
-
Use Immutable ReleasesOuverteenhancement github_actions
Difficulté 3/5 1-2 jours Accessibilité débutants 45/100
theupdateframework/python-tuf#2920 · 1 commentaire · 2 réactions ·
Les mainteneurs répondent en général sous 10 jours
-
Investigate/test fetcher retriesOuverte
Difficulté 3/5 1-2 jours Accessibilité débutants 35/100
theupdateframework/python-tuf#2842 · 3 commentaires ·
Les mainteneurs répondent en général sous 10 jours
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 25/100
theupdateframework/python-tuf#2836 · 7 commentaires ·
Les mainteneurs répondent en général sous 10 jours
Toutes les issues de theupdateframework/python-tuf
Issues similaires
-
correction metadata
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
acl-org/acl-anthology#10104 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
bug status/needs-triage
Difficulté 2/5 1-3 heures Accessibilité débutants 86/100
prowler-cloud/prowler#12885 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Bug in GaussianTailProbabilityCalibrator: running_statistics=False still uses a windowed varianceOuvertebug good first issue
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
selimfirat/pysad#107 ·
Les mainteneurs répondent en général sous 1 jour
-
bug ci-failure high priority
Difficulté 1/5 Moins d'une heure Accessibilité débutants 88/100
vllm-project/vllm-omni#8194 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
Les mainteneurs répondent en général sous 1 jour