coderedcorp / coderedcorp/coderedcms
Unit Test Generator
Personne n'a encore pris cette issue.
- Langage dominant
- Python
- Étoiles
- 765
- Forks
- 154
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
As part of the project_template, I think it would be beneficial to also create a template for unit tests, to instantly provide some minimal coverage and to make it as easy as possible for developers to get started writing more advanced tests.
The biggest barrier to entry is often times just setting all the test framework up, and remembering how to do it.
Two ideas here, not necessarily mutually exclusive:
-
A generic test which loads all known models based on CoderedPage (we already have this list). Loops through them and creates an object with a title and some other basic fields, and asserts a successful GET response. The advantage is that you get free unit tests; the disadvantage is that it would still require writing custom unit tests for actual functionality.
-
Similar to
makemigrations, a management commandmaketestswhich creates a boilerplate unit test file for each model that doesn't already have a test file. This would be super easy to implement as it could essentially just copy a python template into the folder. The result would be a basic unit test similar to 1 above, but with the intention that the developer can start customizing it to do more.
As part of this we would also need to provide test tooling in requirements-dev.txt, similar to how the sass template works.
While 1 above is a bit "cooler", I think 2 is a more useful approach, as it would give the same coverage as 1, but be a lot easier to understand and add to over time.
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
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 examiner project_template et requirements-dev.txt, puis comparez les deux approches proposées : un test générique pour les modèles basés sur CoderedPage ou une commande de gestion maketests conçue sur le modèle de makemigrations. Confirmez le périmètre et les outils de test avant l’implémentation ; le travail est terminé lorsqu’il existe un point de départ documenté et utilisable pour les tests de modèles, avec une couverture du comportement de base prévu.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- django, python
- Domaine
- backend, testing, tooling
- Type d'issue
- Fonctionnalité
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Activité
- À l'abandon
- Clarté
- À clarifier
- Accessibilité débutants
- 25/100