support predictive test selection with test runner
Personne n'a encore pris cette issue.
- Langage dominant
- JavaScript
- Étoiles
- 122k
- Forks
- 37.3k
- Merge moyen
- 4 j 2 h
- PR mergées (30 j)
- 283
Description
What is the problem this feature will solve?
Very large projects that have a lot of tests take a very long time to run the full tests suite.
Running all of the tests can be avoided, by doing Predictive Test Selection to select only a subset of tests to run.
This enables speeding up the Continuous Integration turnaround time for users using Test Runner.
What is the feature you are proposing to solve the problem?
Some interface, whether programmatic API or CLI, to do predictive test selection.
If we look at Jest as an example (of a popular testing framework), they have:
--onlyChanged and --changedSince, which analyze the (transitive) source code dependencies of the tests and of the changes in Git/Hg, to select only tests that have a source dependency on the changes.
What alternatives have you considered?
Not sure we'll want to lock in users to Git/Hg, some may want to use a different version control solution, so perhaps the integration with the specific source control can be left up to the community. What Node needs IMO is some interface for such library author to use.
Guide de contribution
Ouvrir 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.
Piste de recherche
Aucun fichier d’implémentation ni test n’est nommé. Commencez par examiner l’API de Node's Test Runner et les points d’entrée de la CLI, puis comparez l’interface proposée avec le comportement de Jest pour --onlyChanged et --changedSince ; le travail est considéré comme terminé lorsqu’un design convenu pour la sélection prédictive et sa limite d’intégration avec le contrôle de version est établi.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- javascript, node.js
- Domaine
- api, cli, testing-qa
- Type d'issue
- Fonctionnalité
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Activité
- À l'abandon
- Clarté
- À clarifier
- Accessibilité débutants
- 25/100