Centraliser vos rapports de test dans Notion : simple, gratuit et collaboratif

23 Mai 2025

par Ayoub Elmenssouri

Share

Le reporting des tests est souvent réservé aux équipes techniques. Les outils comme Allure, ReportPortal ou TestRail sont puissants, mais peu accessibles pour les non-développeurs . Pourquoi ne pas centraliser automatiquement les résultats dans un outil simple, gratuit et accessible par tous ?

🌟 Problèmes fréquents

Rapports peu lisibles : Générés en HTML, JSON ou XML, ils sont difficiles à comprendre pour les profils non techniques.

Données dispersées : Les résultats sont éparpillés dans plusieurs outils ou pipelines, ce qui complique leur analyse.

Feedback lent : Les anomalies ne sont pas toujours visibles rapidement, ralentissant les corrections.

Solutions coûteuses : Les outils de reporting avancés nécessitent souvent des licences ou une infrastructure complexe.

🚀 Pourquoi choisir Notion ?

Simple et collaboratif : Notion offre une interface claire, accessible à tous les profils (QA, Dev, PO, etc.).

Intégration facile : L'API officielle `@notionhq/client` permet d'envoyer des données avec quelques lignes de code en Node.js.

Base de données flexible : Filtres, tris, vues personnalisées : organisez vos résultats comme vous le souhaitez.

Visualisation intégrée : Ajoutez des graphiques et des vues dynamiques directement dans Notion.

Zéro coût : Notion est gratuit pour un usage individuel ou d’équipe de petite taille.

🧑‍💻 Comment ça fonctionne ?

Un petit script Node.js lit les résultats de vos tests (ex. `cypress-report.json`) à chaque exécution, et les envoie vers une base Notion via l’API. Alimente un tableau qui se met à jour et s’enrichit à chaque nouvelle exécution.

Installez les dépendances nécessaires à l’envoi des données vers Notion :

1npm install @notionhq/client dotenv
1import * as fs from "fs";2import * as dotenv from "dotenv";3import { Client } from "@notionhq/client";45dotenv.config();6const notion = new Client({ auth: process.env.NOTION_TOKEN });7const databaseId = process.env.NOTION_DB_ID;89async function sendReportToNotion() {10  try {11    const raw = fs.readFileSync("cypress-report.json", "utf8");12    const data = JSON.parse(raw);13    const stats = data.stats;14    const status = stats.failures > 0 ? "Failed" : "Passed";15    const environment = process.env.ENVIRONMENT || "staging";1617    await notion.pages.create({18      parent: { database_id: databaseId },19      properties: {20        Status: { select: { name: status } },21        Date: { date: { start: new Date().toISOString() } },22        Total_Tests: { number: stats.tests || 0 },23        Passed_Tests: { number: stats.passes || 0 },24        Failed_Tests: { number: stats.failures || 0 },25        Environment: { select: { name: environment } },26      },27    });28  } catch(error) {29    console.error("Erreur lors de l'envoi du rapport à Notion :", error);30  }31}3233sendReportToNotion();

Alimente un tableau qui se met à jour et s’enrichit à chaque nouvelle exécution.

reporting-notion

Permet de créer des vues dynamiques : par exemple, afficher uniquement les tests échoués aujourd’hui, ou les régressions critiques à corriger en priorité.

reporting-notion

Affiche des graphiques pour visualiser les statistiques clés : taux de réussite, durée moyenne, tendances dans le temps.

reporting-notion

🤝 Bénéfices pour l’équipe

Résultats visibles par tous : Plus besoin d’accès à un outil technique pour voir l’état des tests.

Réaction rapide : Les anomalies sont visibles en temps réel, permettant des corrections immédiates.

Suivi qualité facilité : Le management peut suivre les KPIs qualité facilement, sans demande au QA.

Culture qualité partagée : Toute l’équipe peut contribuer au maintien de la stabilité du produit.

user

Ayoub Elmenssouri

Ingénieur QA - Automatisation des tests

JumpIT-mobile

Rue Al Borj, Résidence Zineb, Appt12, Rabat 10020, Maroc

Copyright © 2024 JumpIT

Tous droits réservés