Plan des tests Groupe 3 - UQO-2019-INF1583/annotator GitHub Wiki

1. Introduction

1.1 Description du projet

L'application UQO-annotator permettra de modifier des fichiers .xmi avec annotations produites par l'outil cTakes (exemple d'un fichier produit par cTakes) ou d'annoter les fichiers texte. Durant son fonctionnement, UQO-annotator sera similaire à l'outil Brat. Ses fonctionnalités incluent la création/suppression d'annotations et la gestion d'annotateur par projet. L’application n’est pas réservée à un seul domaine d’application, elle sera utile dans plusieurs contextes où l’utilisation des annotations sera nécessaire. En particulier, elle s’intègre bien dans un contexte de recherche et d’apprentissage à partir des textes écrits. Notre équipe a pour but premier d’implémenter une manière d’avoir plusieurs annotateurs en même temps pour le même fichier.

1.2 Buts du plan de tests

Le but de ce plan de test est de valider l’ensemble des opérations d'annotation et les filtres d’affichage pour chaque membre du projet, tel qu’un annotateur ou un administrateur du projet. De plus, ce plan de test s'assurera que le fonctionnement est conforme aux exigences du cahier des charges.

1.3 Portée du plan de tests

Nom: UQO-annotator

Date: 2019-11-30

Numéro de version: 0.4.0 La finalité de ce test est de vérifier et valider le bon fonctionnement de la communication entre notre application et la base de données ainsi que le filtrage des informations en fonction de l’utilisateur qui fait les requêtes. Le but est de confirmer que les données(annotations) envoyées par chaque membre auront une visibilité restreinte grâce aux filtres implémentés lors de la phase de conception.

1.4 Références

Ref-1 : Cahier des charges (version 2.2), projet Application UQO-annotator, UQO, Département d'informatique et d'ingénierie, octobre 2018

#2. Inventaire des tests

Les tests à effectuer:

  • TS.1(section 8.1 du cahier de charges) Vérification de sauvegarde des attributs associés à chaque annotation dans la base de données.
  • TS.2(section 8.2.1 du cahier de charges) Vérifier que chaque annotateur du projet puisse voir seulement ses propres annotations.
  • TS.3 (section 8.2.2 du cahier de charges) Vérifier que l’administrateur du projet puisse voir toutes les annotations du projet.
  • TS.4 (section 8.2.2 du cahier de charges) Vérifier que l’administrateur du projet puisse traiter, valider et fusionner les annotations du projet.

3. Stratégie de tests

3.1.1 Intégrité de données / test unitaires

TS.1 Vérification de sauvegarde des attributs des annotation dans la base de données.

Objectif: Vérifier que la sauvegarde des données associés à chaque annotation dans la base de données sont conformes.
Technique: - Créer une annotation.
- Vérifier si l'annotation dans la base de données est la même que l'annotation sauvegardée préalablement.
Critère de succès: Données en entrée: des chaînes de caractères

Les résultats attendus : Lorsque annotateur sauvegarde une type d'annotation, il doit recevoir un message de confirmation « Annotation sauvegarder ».

Critère de validation : L’annotateur peuvent avoir la confirmation de sa sauvegarde dans la base de données.
Considérations particulières: Protéger l’Intégrité des données.

3.1.2 Tests Fonctionnels

TS.2 Vérifier chaque annotateur puisse voir ses propres annotations.

Objectif: Vérifier que les annotateurs et l'administrateur peuvent seulement voir leurs propres annotations et de permettre aussi que chaque utilisateur ait une copie de ses annotations.
Technique: -Se créer deux profils annotateur unique
-Ouverture de deux pages de l’application
-Ouverture du même document
-Annoter le même document avec chacun de ces profils
-Vérifier la permission de visibilité de chacun de ces profils. (exclusivité des annotations à chaque profil individuel)
Critère de succès: Les résultats attendus : chaque document a annoté doit respecter les contraintes de restriction en lecture et écriture pour les membres dont ces documents n’appartiennent pas. Le but de cette contrainte est d’éviter d’influencer un annotateur avec une opinion extérieure.
Critère de validation : Protéger l'accès des annotateurs afin qu’ils ne puissent pas visualiser l'annotation l’un de l’autre.
Considérations particulières: Existence d’un compte administrateur.
Existence compte d'annotateur.
Existence de fichier à tester.
Le serveur doit être aussi accessible pour la réalisation de ce test.
Les étapes du scénario doivent être effectuées par un humain pour la réussite de ce test.

TS.3 Vérifier que l’administrateur du projet puisse voir toutes les annotations du projet

Objectif: Vérifier que l’administrateur peut voir les annotations de tous les annotateurs et de permettre que chaque utilisateur a une copie de leur annotation.
Technique: -Créer un profil administrateur.
-Se créer deux profils annotateurs unique.
-Ouverture de deux pages de l’application.
-Ouverture de chacun de ces annotateurs.
-Annoter des documents avec chacun de ces profils.
-Se connecter avec le compte administrateur
-Vérifier que l’administrateur à la permission de visibilité et de modification sur chacun de ces profils
Critère de succès: Les résultats attendus : Vérifier si l’administrateur du projet est capable de voir toutes les annotations .
Critère de validation : Donner aux administrateur les droits d'accès en lecture et écriture aux projets. Ceci inclut la possibilité de visionner toutes les annotations courantes au projet.
Considérations particulières: Existence d’un compte administrateur.
Existence comptes d'annotateurs.
Existence de fichier à tester.
Le serveur doit être aussi accessible pour la réalisation de ce test.
Les étapes du scénario doivent être effectuer pour la réussite de ce test. Par l’Intervention d’un humaine.

TS.4 Vérifier que l’administrateur du projet puisse traiter, valider et fusionner les annotations du projet.

Objectif: Vérifier que l’administrateur du projet puisse traiter, valider et fusionner les annotations du projet.
Technique: -Créer un profil administrateur.
-Se connecter avec le compte administrateur
-Ouverture de deux pages de l’application.
-Vérifier si l’administrateur voit toutes les annotations des annotateurs.
-Vérifier si l’administrateur est capable d’interagir avec l’interface afin de valider ou rejeter une annotation.
-Vérifier que l’administrateur à la permission de modification sur chacun des projets sur sa responsabilité
Critère de succès: Les résultats attendus : Vérifier si l’administrateur du projet est capable de fusionner toutes les annotations .
Critère de validation : Donner à l’administrateur le droit de valider ou rejeter une annotation puis la sauvegarder dans la base de données
Considérations particulières: Existence d’un compte administrateur.
Existence comptes d'annotateurs.
Existence de fichier à tester.
Le serveur doit être aussi accessible pour la réalisation de ce test.
Les étapes du scénario doivent être effectuer pour la réussite de ce test. Par l’Intervention d’un humaine.

3.1.7 Outils

OUT1.SonarQube

OUT2.Make

OUT3.Jasmine

4. Cas de tests

4.1 <Cas 1> Vérification de sauvegarde des attributs associés à chaque annotation dans la base de données.

4.1.1 Objet du test

Dans ce test, on vérifie que chaque sauvegarde enregistre correctement tous les attributs associés à chaque annotation. Les attributs dans la base de données doivent correspondre à ceux qui ont été reçu lors de la requête.

Le but de ce test est de voir si on peut avoir plusieurs annotateurs donc il faudrait faire les mêmes étapes sur le même projet avec un autre utilisateur.

4.1.2 Scénario de test

Étape Point de contrôle? Description Valeur à saisir Valeur attendue
1 Non Se connecter en tant que utilisateur Identifiant et mot de passe valide.
2 Non Ouvrir un document où l’utilisateur a des droits de annotateur
3 Oui Créer et sauvegarder une annotation Une annotation nouvelle
4 Oui Vérifie si l’annotation dans la base de données est la même que celle sauvegarder L’annotation dans la base de données est la même que celle sauvegarder

4.2 <Cas 2> Vérifier que chaque annotateur du projet puisse voir seulement ses propres annotations.

4.2.1 Objet du test

TS.2: Vérifier que chaque annotateur du projet puisse voir seulement ses propres annotations. Dans ce test, on vérifie qu'un annotateur ne voit que ces propres annotations sur un document non-fusionner.

4.2.2.a Scénario de test

Étape Point de contrôle? Description Valeur à saisir Valeur attendue
1 Non L’utilisateur 1 sélectionne un projet
2 Non L’utilisateur 2 sélectionne le même projet
3 Non L’utilisateur 1 sélectionne un document à annoter
4 Non L’utilisateur 2 sélectionne le même document que l'utilisateur 1
5 Oui L’utilisateur 1 crée une annotation Une nouvelle annotation
6 Oui L’utilisateur 1 voit seulement ses propres annotations Seulement les annotations d’utilisateur 1 sont visible

4.2.2.b Scénario de test

Étape Point de contrôle? Description Valeur à saisir Valeur attendue
1 Non L’utilisateur 1 sélectionne un projet
2 Non L’utilisateur 2 sélectionne le même projet
3 Non L’utilisateur 1 sélectionne un document à annoter
4 Non L’utilisateur 2 sélectionne le même document que l'utilisateur 1
5 Non L’utilisateur 1 crée une annotation Une nouvelle annotation
6 Oui L’utilisateur 1 voit seulement ses propres annotations L’utilisateur 2 ne vois pas l’annotation des autres utilisateurs

4.3 <Cas 3> Vérifier que l’administrateur du projet puisse voir toutes les annotations du projet.

4.3.1 Objet du test

TS.3 Vérifier que l’administrateur du projet puisse voir toutes les annotations du projet. Dans ce test, on vérifie que l’administrateur du projet peut voir tout les annotations des différents annotateurs sur un document non-fusionner.

4.3.2 Scénario de test

Étape Point de contrôle? Description Valeur à saisir Valeur attendue
1 Non L’utilisateur sélectionne un projet
2 Non L’utilisateur sélectionne un document à annoter
3 Non L’utilisateur 1 crée une annotation Une nouvelle annotation
4 Non L’administrateur sélectionne le même document L’administrateur peut voir l’annotation de l’utilisateur, ainsi que d’autres annotations déjà existante

4.4 <Cas 4> Vérifier que l’administrateur du projet puisse traiter, valider et fusionner les annotations du projet.

4.4.1 Objet du test

TS.4: Vérifier que l’administrateur du projet puisse traiter, valider et fusionner les annotations du projet. Dans ce test, on vérifie que l’administrateur a les droits nécessaires pour valider, rejeter et fusionner tout les annotations d’un projet.

4.4.2.a Scénario de test

Étape Point de contrôle? Description Valeur à saisir Valeur attendue
1 Non Se connecter au système. Identifiant et mot de passe valide.
2 Non Ouvrir un projet qui contient des annotations en tant qu’administrateur.
3 Non Sélectionner une annotation. Une annotation existante
4 Oui Valider l’annotation. Cliquer le bouton de validation L'annotation est validé

4.4.2.b Scénario de test

Étape Point de contrôle? Description Valeur à saisir Valeur attendue
1 Non Se connecter au système. Identifiant et mot de passe valide.
2 Non Ouvrir un projet qui contient des annotations en tant qu’administrateur.
3 Non Sélectionner une annotation. Une annotation existante
4 Oui Rejeter l’annotation. Cliquer le bouton de rejet L’annotation est supprimé du document

4.4.2.c Scénario de test

Étape Point de contrôle? Description Valeur à saisir Valeur attendue
1 Non Se connecter au système. Identifiant et mot de passe valide.
2 Non Ouvrir un projet qui contient des annotations en tant qu’administrateur.
3 Non Vérifier qu’il n’y a plus d’annotations à rejeter.
4 Oui Fusionner le document. Un nouveau document contenant tout les annotations est créé
⚠️ **GitHub.com Fallback** ⚠️