Apparence
27.2 Inventaire exhaustif des fonctionnalités du marché
🆕 Section prospective
Inventaire volontairement exhaustif : on liste d'abord tout ce que font les outils du marché, puis on marque ce qui nous concerne. Le tri se fait après, pas pendant — pour éviter d'écarter par réflexe une fonctionnalité qu'on n'a jamais évaluée.
Périmètre étudié : TestRail, Xray (Jira), Zephyr Scale / Enterprise, qTest (Tricentis), PractiTest, Qase, et Jira seul. Sources : voir Analyse du marché.
Colonne « État » — 🟢 présent (v1 ou v2 déjà spécifié) · 🟡 partiel · 🔴 absent. Colonne « Suite » — la fiche qui la traite, ou — si écartée / déjà couverte par l'existant.
A. Référentiel de tests & organisation
| # | Fonctionnalité | Qui le fait | État | Suite |
|---|---|---|---|---|
| C01 | Arborescence dossiers / sections / sous-sections | tous | 🟢 | module → fonctionnalité → scénario → flux → étape |
| C02 | Suites de tests multiples par projet | TestRail | 🔴 | écartée (1 projet actif — Q11) |
| C03 | Étapes partagées / réutilisables (édition unique propagée) | TestRail (shared steps) | 🔴 | A9 |
| C04 | Modèles (templates) de cas de test | TestRail, Zephyr | 🔴 | Perspectives |
| C05 | Paramètres / jeux de données (un cas × N combinaisons) | TestRail (parameters), Zephyr (datasets) | 🔴 | A9 |
| C06 | Champs personnalisés (cas, exécution, campagne) | tous | 🔴 | Perspectives |
| C07 | Étiquettes / tags libres | tous | 🔴 | Perspectives |
| C08 | Archivage réversible (masquer sans supprimer) | Zephyr Scale, TestRail | 🔴 | A2 |
| C09 | Corbeille avec rétention avant purge (7/14/30 j) | TestRail | 🔴 | A2 · Q21 |
| C10 | Versionnage d'un cas avec historique et différentiel | TestRail, Zephyr Scale | 🔴 | Perspectives |
| C11 | Baselines / branches de référentiel (plusieurs versions ERP en parallèle) | TestRail | 🔴 | Perspectives — seulement si Q11 le confirme |
| C12 | Édition en masse (bulk edit) | tous | 🟡 réordonnancement seul | A11 |
| C13 | Copier / déplacer des cas entre dossiers | tous | 🟡 moveTest, moveScenario… | — |
| C14 | Import CSV/Excel avec mapping colonnes et valeurs | TestRail, Xray | 🔴 | A7 |
| C15 | Export multi-format (XLSX, CSV, PDF, XML) | tous | 🟡 XLSX seul | A7 |
| C16 | Recherches / filtres enregistrés et partagés | TestRail, PractiTest | 🔴 | A11 |
| C17 | Détection de doublons de cas | PractiTest (SmartFox) | 🔴 | Perspectives |
B. Périmètre d'exécution & campagnes
| # | Fonctionnalité | Qui le fait | État | Suite |
|---|---|---|---|---|
| C18 | Constitution du périmètre par sélection dans un référentiel stable | tous | 🔴 (v1 : copie intégrale à l'activation) | A3 / A3bis |
| C19 | Retrait d'un flux du périmètre sans détruire les résultats | tous | 🔴 (v1 : suppression en cascade) | A3 |
| C20 | Un même cas dans plusieurs périmètres simultanés | Xray (Test Sets) | 🔴 | A3bis (association) |
| C21 | Jalon / release / version regroupant plusieurs exécutions | TestRail (milestone), Zephyr (version), Xray (Test Plan) | 🟡 version_erp existe, sans relation entre campagnes | A6 |
| C22 | Relation entre campagnes (la campagne N rejoue N-1) | Xray, TestRail | 🔴 | A6 |
| C23 | Comparatif N vs N-1 → détection de régressions (OK → KO) | Xray, Zephyr | 🔴 | A6 — cœur de la valeur métier |
| C24 | Assignation d'une exécution à un testeur | tous | 🔴 | A10 |
| C25 | Configurations / environnements (matrice version × environnement × entité) | TestRail (configuration groups), Zephyr | 🟡 champ environnement plat | A10 |
| C26 | Rejouer uniquement les cas en échec | tous | 🔴 | A6 (présélection 1) |
| C27 | Clôture de campagne figeant les résultats | TestRail (fermeture de run) | 🟡 v1 fige à l'activation, pas à la clôture | A3bis |
| C28 | Statuts d'exécution configurables (au-delà de OK/KO/NT/BLQ) | tous | 🔴 | Q12 |
| C29 | Temps passé / durée d'exécution par cas | TestRail, qTest | 🔴 | A10 (option) |
| C30 | Sessions de test exploratoire | PractiTest, qTest | 🔴 | ❌ écartée — hors métier recette fonctionnelle ERP |
C. Traçabilité & couverture
| # | Fonctionnalité | Qui le fait | État | Suite |
|---|---|---|---|---|
| C31 | Rattachement cas ↔ exigence / user story | Xray, Zephyr, PractiTest | 🟡 CRIM ≈ exigence, rattaché à l'étape | A8 |
| C32 | % de couverture par exigence | Xray (graphiques interactifs), qTest | 🔴 | A8 |
| C33 | Matrice de traçabilité exigence → cas → exécution → défaut | PractiTest, qTest, Xray | 🔴 | A8 |
| C34 | Analyse d'impact (quelle exigence modifiée touche quels cas) | qTest | 🔴 | A6 (« CRIM impacté ») |
| C35 | Traçabilité de l'origine d'un cas généré par IA | Xray, TestRail | 🔴 | A5 |
D. Anomalies / défauts
| # | Fonctionnalité | Qui le fait | État | Suite |
|---|---|---|---|---|
| C36 | Création d'un défaut depuis l'exécution en échec | tous | 🟢 | F5 |
| C37 | Synchronisation bidirectionnelle du statut avec le bug tracker | TestRail, Xray, Zephyr | 🔴 champ texte jiraLink | Q10 · Perspectives · alternative légère : round-trip A7 |
| C38 | Pré-remplissage du défaut (étape, jeu, attendu, obtenu, preuve) | TestRail | 🟡 | A11 |
| C39 | Workflow de statut d'anomalie configurable | tous | 🟡 statuts figés, jeu à confirmer | Q12 |
| C40 | Regroupement / déduplication d'anomalies | PractiTest | 🔴 | Perspectives |
| C41 | Anomalie rattachée à un résultat d'étape par campagne | tous | 🔴 v1 : UNIQUE(etape_id) → une seule anomalie par étape, toutes campagnes confondues | A3bis — corrige RG-07 |
E. Automatisation & CI/CD
| # | Fonctionnalité | Qui le fait | État | Suite |
|---|---|---|---|---|
| C42 | API REST publique (lecture/écriture) | tous | 🔴 fonctions Convex non exposées | Perspectives |
| C43 | Ingestion de résultats automatisés (JUnit / xUnit / Cucumber) | tous | 🔴 | Perspectives — pertinent seulement si le client a des tests automatisés |
| C44 | Webhooks sortants | TestRail | 🔴 | Perspectives |
| C45 | Plugins CI (Jenkins, GitHub Actions, Azure DevOps) | tous | 🔴 | ❌ écartée |
| C46 | BDD / Gherkin / Cucumber | Xray, Zephyr | 🔴 | ❌ écartée — recette fonctionnelle manuelle |
| C47 | Génération de code d'automatisation par IA | TestRail 10.2 | 🔴 | ❌ écartée |
F. Reporting & tableaux de bord
| # | Fonctionnalité | Qui le fait | État | Suite |
|---|---|---|---|---|
| C48 | Rapports prédéfinis en nombre | TestRail (70+), Zephyr Scale (30+) | 🟡 écran Synthèse + export | A1 |
| C49 | Rapports planifiés + envoi par e-mail | TestRail | 🔴 aucun ordonnanceur ni canal e-mail en v1 | A1 · Q16 |
| C50 | Tableaux de bord personnalisables (widgets) | PractiTest, qTest, Zephyr (gadgets Jira) | 🔴 | Perspectives |
| C51 | Courbes de tendance multi-périodes | tous | 🔴 toutes les mesures v1 sont instantanées | A1 |
| C52 | Rapport de charge par testeur | TestRail (User Test Execution Workload) | 🔴 | A1 + A10 |
| C53 | Rapport d'activité (cas créés / modifiés sur une période) | TestRail (Activity Summary) | 🔴 | A1 |
| C54 | Tableaux de bord inter-projets | TestRail (Enterprise) | 🔴 | dépend de Q11 |
| C55 | Export des rapports (PDF / Excel / CSV) | tous | 🟡 XLSX | A7 |
G. Administration, sécurité, gouvernance
| # | Fonctionnalité | Qui le fait | État | Suite |
|---|---|---|---|---|
| C56 | Rôles & permissions configurables | TestRail | 🟡 matrice figée dans le code | A4 |
| C57 | Permissions par projet | TestRail, Zephyr Scale | 🔴 | dépend de Q11 |
| C58 | Groupes d'utilisateurs | TestRail | 🔴 | Perspectives |
| C59 | Permissions par type d'objet (ex. droit de suppression des cas) | Zephyr Scale | 🔴 | Perspectives |
| C60 | Édition complète du profil + écran « Mon profil » | tous | 🔴 rôle et suppression seuls | A4 |
| C61 | Désactivation de compte (≠ suppression) | tous | 🔴 | A4 |
| C62 | Invitation / onboarding utilisateur | tous | 🔴 | A4 · Q3 |
| C63 | SSO / SAML / SCIM | qTest, TestRail Enterprise | 🔴 | Q34 (nouvelle) |
| C64 | Piste d'audit (suppressions, changements de rôle, activations) | qTest, Zephyr Scale | 🟡 journal d'exécution seul | Q8 |
| C65 | Multi-projet par organisation | tous | 🟡 le code suppose 1 projet actif | Q11 |
| C66 | Multi-organisation / multi-tenant | tous (SaaS) | 🟡 champ posé, UI absente | CLAUDE.md §D |
H. Intelligence artificielle
| # | Fonctionnalité | Qui le fait | État | Suite |
|---|---|---|---|---|
| C67 | Génération de cas depuis une exigence textuelle sélectionnée | Xray, TestRail 9.5, Zephyr HaloAI | 🔴 | A5 |
| C68 | Revue humaine obligatoire avant écriture (human-in-the-loop) | les trois, revendiqué | 🔴 | A5 — non négociable |
| C69 | Génération de scénarios BDD | TestRail, Xray | 🔴 | ❌ écartée |
| C70 | Résumé d'une exécution en échec → description de défaut | Zephyr HaloAI | 🔴 | Perspectives |
| C71 | Détection de tests instables / à risque | Zephyr HaloAI, Qase | 🔴 | Perspectives |
| C72 | Détection de doublons et suggestions d'optimisation | PractiTest SmartFox | 🔴 | Perspectives |
| C73 | Assistant conversationnel sur le référentiel | qTest Copilot | 🔴 | ❌ écartée (non prioritaire) |
I. Collaboration & notifications
| # | Fonctionnalité | Qui le fait | État | Suite |
|---|---|---|---|---|
| C74 | Commentaires par cas / par exécution | tous | 🟡 commentaire de résultat | — |
| C75 | Mentions @utilisateur | qTest, PractiTest | 🔴 | Perspectives |
| C76 | Notifications e-mail métier (anomalie assignée, campagne clôturée) | tous | 🔴 | Q15 + Q16 — même prérequis technique que l'e-mail d'A1 : un fournisseur d'envoi |
| C77 | Flux d'activité (activity feed) | tous | 🟡 journal | F8 |
| C78 | Abonnement à un objet (watch) | Jira, Xray | 🔴 | Perspectives |
Synthèse
- 78 fonctionnalités recensées : ~10 présentes, ~14 partielles, ~54 absentes.
- 12 fiches (A1 – A12) couvrent les manques retenus au périmètre.
- 8 fonctionnalités écartées explicitement (C02, C30, C45, C46, C47, C69, C73 et le volet automatisation en général) : hors métier de la recette fonctionnelle ERP manuelle. Elles sont listées ici pour que l'écart soit assumé et documenté, pas subi.
- Le reste part en Perspectives : identifié, non planifié.