Cas de test
Introduction
Le groupeur GPPH peut générer et exécuter un cas de test pour un cas concret. Cela est utile lorsqu'un résultat de groupage inattendu ou inexplicable doit être analysé ou signalé. La création d'un cas de test augmente les chances que le comportement puisse être rapidement reproduit et corrigé par l'AFG.
Un cas de test est un fichier texte compact qui décrit un cas unique ainsi que la configuration pertinente (release, liste hospitalière éventuelle, surcharge du canton de domicile) de manière à pouvoir reproduire le groupage.
En cas de questions sur un cas concret, nous apprécions que vous nous transmettiez le cas de test correspondant. Nous disposons alors de toutes les informations nécessaires à l'analyse.
Générer un cas de test à partir d'un cas
Si un cas concret est présent dans les données d'entrée, un cas de test peut être généré pour ce cas. Pour cela, la CLI est appelée en mode testcase :
splg-grp-cli.exe --release A_2026 --input C:\Temp\inputdata ^
--create-testcase-for <burnr> <fallid>
Le groupeur cherche dans les données d'entrée le cas
correspondant au BURNR et au Fall-ID indiqués, le groupe et
écrit le cas de test dans le répertoire courant sous le nom
testcase-<burnr>-<fallid>-<datetime>.txt.
Avec --output <dir>, un autre répertoire cible peut
être indiqué.
Avec l'option supplémentaire --with-log, le cas
de test est enrichi d'informations détaillées sur le déroulement
des règles, qui montrent comment le groupeur est arrivé au
résultat :
splg-grp-cli.exe --release A_2026 --input C:\Temp\inputdata ^
--create-testcase-for <burnr> <fallid> --with-log
Format d'un cas de test
Voici un exemple de cas de test simple mais complet :
# SPLG Testcase # Timestamp 06.05.2026 17:49:54 # Grouper 2026.2 # Defversion A_2023_21 # Spitalliste A_2023_3_zh release A_2023 burnr 12345678 fallid 1234568 plz 8000 standort 01 wohnkanton ZH austritt 20230918 agey 28 aged 0 diagnose Z390 # Output: # SPLG: GEB1 # MFZS: # MFZO: # LACTRL: 99 # Lactrlcodes: # Errorcode: 0
Un cas de test est composé de lignes de texte. Les lignes
commençant par # sont des commentaires et sont
ignorées lors de l'exécution. Elles contiennent toutefois des
informations importantes sur le groupeur, la définition utilisée
et (le cas échéant) les résultats d'origine.
Les données proprement dites sont organisées en blocs :
- Bloc de configuration :
release, éventuellementkantonsoverride, une ou plusieurs lignesspitallisteousl, ainsi que, en option,with-log. - Données du cas : informations de base telles que BURNR, Fall-ID, canton de domicile, date de sortie, âge, etc.
- Diagnostics (lignes
diagnose). - Traitements (lignes
behandlung) et opérateurs associés (lignesop). - Mouvements de patient (lignes
bewegung). - En option, un bloc de résultats commenté contenant les résultats d'origine.
- En option, un bloc de log détaillé commenté avec des informations détaillées sur le déroulement des règles.
Chaque ligne contient un mot-clé et une valeur, séparés par des espaces.
Exécuter un cas de test
Si un cas de test est disponible sous forme de fichier, il peut être exécuté directement :
splg-grp-cli.exe --testcase testcase.txt
Le groupeur lit le cas de test, le groupe et écrit un nouveau cas de test (avec un bloc de résultats à jour) sur la sortie standard. La sortie peut être redirigée vers un fichier ou comparée au cas de test d'origine.
Avec --with-log, les informations détaillées sur
le déroulement des règles sont également incluses dans la
sortie :
splg-grp-cli.exe --testcase <file> --with-log
Les options principales telles que --release,
--spitalliste ou --wohnkanton-override
peuvent être indiquées à nouveau lors de l'exécution et
remplacent les valeurs du fichier de cas de test. Cela permet
de tester un cas avec une autre définition ou une autre liste
hospitalière sans modifier le fichier.
Listes hospitalières dans le cas de test
Dans un cas de test, on peut utiliser aussi bien des fichiers de liste hospitalière existants que des listes définies en ligne :
spitalliste <file>- Utilise le fichier de liste hospitalière indiqué (peut être
indiqué plusieurs fois). Correspond à l'option CLI
--spitalliste. sl <entrée>- Entrée de liste hospitalière en ligne, au format
burnr,plz,standort,referenz,kanton,année[,gpph[:vfrom[:vto]],...]. Pratique pour des expériences rapides avec différents mandats de prestations, sans devoir créer un fichier de liste hospitalière. Peut être indiqué plusieurs fois.
Exemple concret : le BURNR 12345678 reçoit pour
l'année 2025 les mandats de prestations BP et NEO1 :
sl 12345678,,,1,ZH,2025,BP,NEO1
Pour sl, vfrom et vto
sont facultatifs et ne sont utilisés que si une GPPH n'est
valide que pour une partie de l'année (format MMJJ,
p. ex. 0106:3112). Si un BURNR de site est
utilisé, plz et standort peuvent être
laissés vides. referenz vaut 1 si la
liste hospitalière est une liste de référence, sinon
0.
Référence des commandes
Les commandes suivantes peuvent apparaître dans un fichier de cas de test. Les commandes inconnues sont silencieusement ignorées lors de la lecture. Cela permet d'utiliser sans modification des cas de test générés pour d'autres variantes du groupeur GPPH (p. ex. les modules d'intégration) — les champs non pris en charge sont simplement sans effet.
Configuration
release <release>- Sélectionne la définition GPPH à utiliser (p. ex.
A_2026). kantonsoverride <kanton>- Force le canton de domicile du cas. Avec
-, la surcharge est réinitialisée. spitalliste <file>- Utilise le fichier de liste hospitalière indiqué.
sl <burnr,plz,standort,referenz,kanton,année,gpph:vfrom:vto,...>- Entrée de liste hospitalière en ligne (voir ci-dessus).
with-log- Active le log détaillé pour le groupage.
Données du cas
burnr <valeur>- BURNR de l'établissement.
fallid <valeur>- Fall-ID au sein de l'établissement.
plz <valeur>- NPA de l'établissement.
standort <valeur>- Numéro de site de l'établissement.
wohnkanton <valeur>- Canton de domicile du patient.
austritt <aaaammjj>- Date de sortie du patient.
agey <valeur>- Âge en années.
aged <valeur>- Âge en jours (uniquement pour les nouveau-nés avec
ageyégal à0). ssw <valeur>- Âge gestationnel (en jours).
ggw <valeur>- Poids de naissance (en grammes).
dmb <valeur>- Durée de la ventilation manuelle.
freiwilligkeit <valeur>- Caractère volontaire (uniquement psychiatrie).
Diagnostics, traitements, mouvements
diagnose <code,latéralité>- Ajoute un diagnostic.
latéralitéest facultative (0=bilatérale,1=gauche,2=droite). La première lignediagnoseest considérée comme diagnostic principal. behandlung <code,latéralité,début,ambext>- Ajoute un traitement. Les champs en fin peuvent être omis.
op <gln,fonction,admission>- Ajoute un opérateur au dernier traitement indiqué
(
fonction:1=primaire,2=secondaire ;admission:1=sur la liste hospitalière). bewegung <début,fin,type,burnr>- Ajoute un mouvement de patient (épisode)
(
type:1=inhouse).