Développement #74289
testdef, gestion des sources de données
0%
Description
Actuellement il y a un problème bloquant, si on crée un test sur un formulaire de prise de rendez-vous, il va planter très vite ensuite, parce que le créneau sélectionné au moment de la création du test sera à un moment réservé, ou plus proposé à cause du temps qui passe (le test échouera sur une erreur « Choix invalide »).
Une idée pour remédier à ça pourrait être d'avoir un paramétrage supplémentaire au champ liste en question, dire « sélectionner la première valeur valide », ça résoudrait le cas soulevé.
Resterait qu'en cas d'indispo/dysfonctionnement de la source de donnée, le test aurait toujours des chances de planter.
D'où une autre approche, plutôt rendre le test indépendant du réseau : lors de l'exécution on détecte que le champ est alimenté par une source de données, et on le remplit artificiellement à partir des données enregistrées lors de la création du test, c'est à dire en ajoutant à la saisie en cours les données _structured et compagnie qu'on récupérerait normalement après un appel WS.
On perd en dynamisme car en cas de modification de la source de donnée, on continuera à jouer le test sur de vieilles données et ça finira par planter le test aussi. Mais de manière moins systématique qu'actuellement (et de toute façon en cas de grosse modification à un formulaire on ne coupera jamais à devoir aller modifier les tests).
Il me semble que cette idée permet de lever le point bloquant sus-mentionné, assez facilement et sans complexifier l'UI : je fais le patch ?
Associated revisions
testdef: statically retrieve values for field with data source (#74289)
History
Updated by Valentin Deniaud almost 2 years ago
Plus j'y pense plus je suis convaincu qu'il faut tout faire statiquement, ne jamais réinterroger la source de donnée (on a accès à un inspect pour voir les données du test, ça n'a pas de logique de jouer le test sur d'autres données que celles affichées sur cette page).
Donc ce qu'il y a à faire c'est 1/ ignorer qu'un choix est invalide (y compris pour les champs sans source de données, c'est une erreur qui n'a pas d'intérêt) et 2/ stocker les valeurs _display et _structured à la création du test puis les réutiliser.
Updated by Robot Gitea almost 2 years ago
- Status changed from Nouveau to Solution proposée
Valentin Deniaud (vdeniaud) a ouvert une pull request sur Gitea concernant cette demande :
- URL : https://gitea.entrouvert.org/entrouvert/wcs/pulls/115
- Titre : testdef, gestion des sources de données (#74289)
- Modifications : https://gitea.entrouvert.org/entrouvert/wcs/pulls/115/files
Updated by Robot Gitea almost 2 years ago
- Status changed from Solution proposée to Solution validée
Frédéric Péters (fpeters) a approuvé une pull request sur Gitea concernant cette demande :
Updated by Robot Gitea almost 2 years ago
- Status changed from Solution validée to Résolu (à déployer)
Valentin Deniaud (vdeniaud) a mergé une pull request sur Gitea concernant cette demande :
- URL : https://git.entrouvert.org/entrouvert/wcs/pulls/115
- Titre : testdef, gestion des sources de données (#74289)
- Modifications : https://git.entrouvert.org/entrouvert/wcs/pulls/115/files
Updated by Transition automatique almost 2 years ago
- Status changed from Résolu (à déployer) to Solution déployée
testdef: allow invalid value for item fields (#74289)