-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Initial commit for vitam-itests master_3.0.x
- Loading branch information
Jenkins
committed
Mar 27, 2020
0 parents
commit cb3630d
Showing
808 changed files
with
386,921 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
*.gz filter=lfs diff=lfs merge=lfs -text | ||
*.zip filter=lfs diff=lfs merge=lfs -text | ||
*.png filter=lfs diff=lfs merge=lfs -text | ||
*.bz2 filter=lfs diff=lfs merge=lfs -text | ||
*.tar filter=lfs diff=lfs merge=lfs -text |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,95 @@ | ||
############ | ||
VITAM Itests | ||
############ | ||
|
||
|
||
.. section-numbering:: | ||
|
||
.. image:: logo_vitam.png | ||
:alt: Logo Vitam (Bêta) | ||
:align: center | ||
|
||
Le projet Vitam Itests | ||
====================== | ||
|
||
Il a pour objectif : | ||
|
||
* de permettre la définition de fichiers feature décrivant une série de scénarios de tests regroupés par fonctionnalités. | ||
* l'aggrégation de fichiers de tests (dans le répertoire data) : contrats, référentiels de formats, requêtes DSL, rêgles de gestions, et différents SIP. | ||
|
||
A la racine du projet, on trouvera donc les différents fichiers .feature permettant de lancer les différents cas de test. | ||
Dans le répertoire data, seront regroupés les différents fichiers nécéssaires aux différents scénarios décrits dans les fichiers .feature. | ||
|
||
Liste des fichiers feature | ||
========================== | ||
|
||
- access-accession-register.feature : | ||
Regroupe des scénarios de test sur les recherches dans les registres de fonds. | ||
|
||
- access-archive-unit.feature : | ||
Regroupe des scénarios de test sur les recherches d'unités archivistiques. | ||
|
||
- access-archive-unit-rule-heritance.feature : | ||
Regroupe des scénarios de test concernant l'héritage de règles de gestion pour les unités archivistiques. | ||
|
||
- access-archive-unit-rules-calculation.feature : | ||
Regroupe des scénarios de test concernant le calcul de règles de gestion. | ||
|
||
- access-archive-unit-update.feature : | ||
Regroupe des scénarios de test sur la mise à jour d'unités archivistiques. | ||
|
||
- access-logbook.feature : | ||
Regroupe des scénarios de test sur la recherche dans le journal des opérations. | ||
|
||
- contracts.feature : | ||
Regroupe des scénarios de test sur les contrats (d'accès et d'entrée) - import et recherche. | ||
|
||
- ingest.feature : | ||
Regroupe des scénarios de test sur des entrées de SIP (OK, KO ou en WARNING). | ||
|
||
- ingest_atr.feature : | ||
Regroupe des scénarios de test sur la récupération d'un ATR. | ||
|
||
- ingest-tree-filing-plan.feature : | ||
Regroupe des scénarios de test sur des entrées d'arbres et de plans de classement. | ||
|
||
- referential.feature : | ||
Regroupe des scénarios de test sur les différents référentiels (de formats, des règles de gestion), en import comme en recherche. | ||
|
||
- storage.feature : | ||
Regroupe des scénarios de test sur la vérification du stockage des objets sur les différentes offres de stockage. | ||
|
||
- traceability.feature : | ||
Regroupe des scénarios de test sur la fonctionnalité de sécurisation du journal des opérations. | ||
|
||
- security_profiles.feature : | ||
Regroupe des scénarios de test sur les profiles de sécurité. | ||
|
||
|
||
Fichiers de configuration pour lancement en local | ||
================================================= | ||
|
||
Pour pouvoir lancer depuis un poste local les différents fichiers features, il convient d'avoir une configuration. | ||
Dans le répertoire /data/conf, se trouvent les différents fichiers nécéssaires. | ||
|
||
- access-external-client.conf : fichier de configuration permettant l'appel vers le module Access External | ||
- ingest-external-client.conf : fichier de configuration permettant l'appel vers le module Ingest External | ||
- logback.xml : fichier de configuration des logs | ||
- logbook-client.conf : fichier de configuration permettant d'appeler directement le module Logbook Internal | ||
- tnr.conf : fichier de configuration permettant de configurer l'url du Workspace ainsi que la liste des tenants de test à purger. | ||
|
||
|
||
Lancement en local (Eclipse) | ||
============================ | ||
|
||
Pour pouvoir lancer les TNR en local, il faut disposer des sources VITAM et notamment du module functional-test. | ||
Ensuite il s'agit d'ajouter une nouvelle configuration de lancement (Run Configuration) et d'y indiquer les informations suivantes : | ||
Dans Main : | ||
- Project : functional-test | ||
- Main class : cucumber.api.cli.Main | ||
Dans Arguments : | ||
- Program arguments : -g fr.gouv.vitam.functionaltest.cucumber -p fr.gouv.vitam.functionaltest.cucumber.report.VitamReporter:report.json | ||
- Program arguments bis (pour ne lancer qu'un fichier feature) : -g fr.gouv.vitam.functionaltest.cucumber -p fr.gouv.vitam.functionaltest.cucumber.report.VitamReporter:report.json /home/vitam/vitam-itests/contracts.feature | ||
- VM arguments : -DtnrBaseDirectory=/home/vitam/vitam-itests | ||
Dans Classpath : Dans les Advanced Options > Add External Folders > Séléctionner l'endroit de sa configuration locale (ex : /home/vitam/conf-tnr/) | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,157 @@ | ||
# language: fr | ||
|
||
@Ontology | ||
Fonctionnalité: Import de vocabulaire externe dans l'ontologie | ||
|
||
Contexte: Avant de lancer cette suite de test, je vérifie que je suis bien sur le tenant d'administration | ||
Etant donné les tests effectués sur le tenant 1 | ||
|
||
Scénario: restauration de l'ontologie | ||
Etant donné un fichier ontologie nommé data/ontology/vitam_ontology.json | ||
Quand j'importe l'ontologie | ||
Alors les metadonnées sont | ||
| Code | 200 | | ||
Et le statut final du journal des opérations est OK | ||
Et le champ 'outMessg' de l'évenement final est : Succès du processus d'import de l'ontologie | ||
|
||
Scénario: Vérification et import d'une ontologie au bon format | ||
Etant donné un fichier ontologie nommé data/ontology/ok_ontology_voc_ext_all_types.json | ||
Quand j'importe l'ontologie | ||
Alors les metadonnées sont | ||
| Code | 200 | | ||
Et le statut final du journal des opérations est OK | ||
Et le champ 'outMessg' de l'évenement final est : Succès du processus d'import de l'ontologie | ||
|
||
|
||
Scénario: Vérification et import d'une ontologie au mauvais format | ||
Quand un fichier ontologie nommé data/ontology/ko_ontologie_format.csv | ||
Quand j'importe l'ontologie | ||
Alors les metadonnées sont | ||
| Code | 412 | | ||
|
||
|
||
|
||
Scénario: Vérification et import d'une ontologie avec un 2 identifiants identiques et de même casse | ||
Etant donné un fichier ontologie nommé data/ontology/vitam_ontology.json | ||
Quand j'importe l'ontologie | ||
Etant donné un fichier ontologie nommé data/ontology/ko_ontology_voc_ext_same_identifier.json | ||
Quand j'importe l'ontologie | ||
Alors les metadonnées sont | ||
| Code | 400 | | ||
Et le statut final du journal des opérations est KO | ||
Et le champ 'outMessg' de l'évenement final est : Échec du processus d'import de l'ontologie | ||
|
||
# Bug a crrer | ||
# Scénario: Vérification et import d'une ontologie avec un 2 identifiants identiques et de casses différentes | ||
# Etant donné un fichier ontologie nommé data/ontology/ko_ontology_voc_ext_same_identifier_different_casse.json | ||
# Quand j'importe l'ontologie | ||
# Alors les metadonnées sont | ||
# | Code | 400 | | ||
# Et le statut final du journal des opérations est KO | ||
# Et le champ 'outMessg' de l'évenement final est : Échec du processus d'import de l'ontologie | ||
|
||
|
||
Scénario: Vérification et import d'une ontologie avec un identifiant invalide - identifiant avec espace | ||
Etant donné un fichier ontologie nommé data/ontology/ko_ontology_voc_ext_with_space.json | ||
Quand j'importe l'ontologie | ||
Alors les metadonnées sont | ||
| Code | 400 | | ||
Et le statut final du journal des opérations est KO | ||
Et le champ 'outMessg' de l'évenement final est : Échec du processus d'import de l'ontologie | ||
|
||
|
||
Scénario: Vérification et import d'une ontologie avec un identifiant invalide - identifiant avec diese | ||
Etant donné un fichier ontologie nommé data/ontology/ko_ontology_voc_ext_with_diese.json | ||
Quand j'importe l'ontologie | ||
Alors les metadonnées sont | ||
| Code | 400 | | ||
Et le statut final du journal des opérations est KO | ||
Et le champ 'outMessg' de l'évenement final est : Échec du processus d'import de l'ontologie | ||
|
||
|
||
Scénario: Vérification et import d'une ontologie avec un identifiant invalide - identifiant avec underscore | ||
Etant donné un fichier ontologie nommé data/ontology/ko_ontology_voc_ext_with_diese.json | ||
Quand j'importe l'ontologie | ||
Alors les metadonnées sont | ||
| Code | 400 | | ||
Et le statut final du journal des opérations est KO | ||
Et le champ 'outMessg' de l'évenement final est : Échec du processus d'import de l'ontologie | ||
|
||
|
||
Scénario: Vérification et import d'une ontologie avec un identifiant invalide - identifiant avec espace entourant l'identifiant | ||
Etant donné un fichier ontologie nommé data/ontology/ko_ontology_voc_ext_with_blank.json | ||
Quand j'importe l'ontologie | ||
Alors les metadonnées sont | ||
| Code | 400 | | ||
Et le statut final du journal des opérations est KO | ||
Et le champ 'outMessg' de l'évenement final est : Échec du processus d'import de l'ontologie | ||
|
||
|
||
Scénario: Vérification et import d'une ontologie avec un fichier json invalide | ||
Etant donné un fichier ontologie nommé data/ontology/ko_ontology_invalid_json.json | ||
Quand j'importe l'ontologie | ||
Alors les metadonnées sont | ||
| Code | 412 | | ||
|
||
#depend de la configuration de la plateforme | ||
|
||
# Scénario: Vérification et import d'une ontologie avec un champ interne défini comme externe | ||
# Etant donné un fichier ontologie nommé data/ontology/vitam_ontology.json | ||
# Quand j'importe l'ontologie | ||
# Alors les metadonnées sont | ||
# | Code | 200 | | ||
# Etant donné un fichier ontologie nommé data/ontology/ko_ontology_internal_becomes_external.json | ||
# Quand j'importe l'ontologie | ||
# Alors les metadonnées sont | ||
# | Code | 400 | | ||
# Et le statut final du journal des opérations est KO | ||
# Et le champ 'outMessg' de l'évenement final est : Échec du processus d'import de l'ontologie | ||
|
||
|
||
Scénario: Import d'un vocabulaire de type inconnu dans l'ontologie | ||
Etant donné un fichier ontologie nommé data/ontology/ko_ontology_voc_ext_type_unknown.json | ||
Quand j'importe l'ontologie | ||
Alors les metadonnées sont | ||
| Code | 400 | | ||
# Pas de journal Et le statut final du journal des opérations est KO | ||
|
||
Scénario: Import d'un vocabulaire avec champ obligatoire absent | ||
Etant donné un fichier ontologie nommé data/ontology/ko_ontology_voc_ext_with_mandatory_field_absent.json | ||
Quand j'importe l'ontologie | ||
Alors les metadonnées sont | ||
| Code | 400 | | ||
Et le statut final du journal des opérations est KO | ||
Et le champ 'outMessg' de l'évenement final est : Échec du processus d'import de l'ontologie | ||
|
||
|
||
# doit etre ok mais pas de champs blabla | ||
# Scénario: Import d'un vocabulaire avec champ json inconnu | ||
# Etant donné un fichier ontologie nommé data/ontology/vitam_ontology.json | ||
# Quand j'importe l'ontologie | ||
# Alors les metadonnées sont | ||
# | Code | 200 | | ||
# Etant donné un fichier ontologie nommé data/ontology/ko_ontology_json_field_unknown.json | ||
# Quand j'importe l'ontologie | ||
# Alors les metadonnées sont | ||
# | Code | 400 | | ||
|
||
Scénario: Import d'un vocabulaire avec injection de Html | ||
Etant donné un fichier ontologie nommé data/ontology/ko_ontology_html_injection.json | ||
Quand j'importe l'ontologie | ||
Alors les metadonnées sont | ||
| Code | 412 | | ||
## Bug a créer | ||
# crée une collection blabla | ||
# Scénario: Import d'un vocabulaire avec une collection inconnue | ||
# Etant donné un fichier ontologie nommé data/ontology/vitam_ontology.json | ||
# Quand j'importe l'ontologie | ||
# Alors les metadonnées sont | ||
# | Code | 200 | | ||
# Etant donné un fichier ontologie nommé data/ontology/ko_ontology_unknown_collection.json | ||
# Quand j'importe l'ontologie | ||
# Alors les metadonnées sont | ||
# | Code | 400 | | ||
# Et le statut final du journal des opérations est KO | ||
# Et le champ 'outMessg' de l'évenement final est : Échec du processus d'import de l'ontologie | ||
# | ||
# |
Oops, something went wrong.