FS22 - TestRunner - Outil pour tester les mods

Heizer
GIANTS Software | Gameplay Programmer
Posts: 1239
Joined: Thu Jul 02, 2009 5:00 pm

FS22 - TestRunner - Outil pour tester les mods

Post by Heizer »

Outil pour tester les mods Farming Simulator 22
Comme pour FS19, nous sommes heureux de proposer notre outil de test des mods mis à jour pour FS22.

TestRunner_public.exe
  • vérifie un mod et montre les diverses erreurs et manquements aux directives de ModHub
  • fournit le résultat du test sous forme de document html et xml
  • les tests sont structurés en plusieurs modules/groupes
  • est également utilisé en interne par notre service d'assurance qualité (avec un ensemble de fonctionnalités étendu).

Objectifs :
  • accélérer le processus de test des mods en aidant le moddeur à identifier et à corriger les problèmes (avant de les soumettre sur le ModHub)
  • détecter diverses erreurs et fournir des conseils pour les corriger
  • s'assurer que les directives de ModHub sont respectées
  • améliorer les performances et minimiser la taille globale des fichiers du mod et l'utilisation de la mémoire

Caractéristiques principales / Ce qu'il fait (exemples sélectionnés)
  • vérifier si la descVersion correspond au niveau du patch actuel
  • vérifier les erreurs de syntaxe xml
  • alerte sur les textures dds mal exportées
  • avertir en cas de fichiers manquants ou obsolètes
  • afficher les fichiers en double (dans le mod et dans le jeu de base)
  • fournir des informations sur les problèmes de shader, qui doivent être corrigés pour une version console
  • et bien d'autres choses encore, pour des explications détaillées voir la section "Test Cases".
  • Tous les problèmes trouvés seront fournis sous la forme d'un document HTML et d'un fichier xml.Example Result HTML

Conditions d'utilisation de l'outil
  • Farming Simulator 22 (min. version 1.8)
  • GIANTS Editor (min. Version 9.0.3)
    => le chemin d'installation du jeu doit être correctement défini dans l'éditeur.
  • dernière version du Farming Simulator 22 TestRunner (0.8.8)

Clause de non-responsabilité
  • l'outil est encore en phase bêta, certains tests peuvent montrer des erreurs qui n'en sont pas (appelées "faux positifs")
    en particulier les "fichiers inutilisés" signalés par le module "ObsoleteFiles".
  • veuillez signaler tous les cas où vous pensez que l'outil produit des erreurs qui sont des faux positifs
    lorsque vous faites un rapport de bogue, veuillez inclure le journal de testrunner, les fichiers de résultats (xml et html) et si possible le mod lui-même (ou son identifiant sur le ModHub), afin que nous puissions reproduire le problème.
    utiliser idéalement le projet "TestRunner" sur notre Bugtracker public pour signaler tout bug.

Instructions / Mode d'emploi
  1. faire glisser et déposer le répertoire d'un mod dézippé suro TestRunner_public.exe
    • note : le dossier du mod ne doit pas nécessairement se trouver dans le même répertoire que le TestRunner
    • une fenêtre de ligne de commande s'ouvre et affiche la progression actuelle.
    • si quelque chose ne va pas, un message d'erreur s'affiche et donne des détails sur le problème.
      toutes les sorties sont également enregistrées dans le fichier "TestRunner.log"
  2. si les conditions sont remplies, l'outil commencera à analyser le mod.
    • la ligne de commande affichera quelques informations sur la progression actuelle
      à moins qu'il n'y ait un message "critique", cette information peut être ignorée
    • GIANTS Editor sera automatiquement ouvert et fermé pendant le processus
    • note : selon la taille du mod et la vitesse du disque dur, le processus peut prendre plusieurs minutes.
  3. lorsque le processus de test est terminé, le message "Finished execution" s'affiche dans la ligne de commande.
    • Un fichier xml et html sera généré dans le même répertoire que le TestRunner.
    • Les fichiers sont nommés d'après le nom du répertoire du mod testé et contiennent le résultat du test.
      • le fichier html contient seulement toutes les erreurs trouvées (par module)
      • le xml contient toutes les erreurs et des (méta)informations plus détaillées.
  4. le fichier html généré sera automatiquement ouvert dans votre navigateur où vous pourrez vérifier si des erreurs ont été trouvées dans votre mod.
    • les erreurs sont soulignées en rouge
    • les explications sont en italique
    • les instructions sur la façon de corriger les erreurs sont colorées en vert


Cas de tests et explications

Dans ce qui suit, les différents modules et leurs cas de test sont expliqués en détail.
Travaux en cours
  • [xml-file well-formedness (seulement requis par le jeu dans une certaine mesure, mais devrait être rempli néanmoins)
  • Module DXTCheck : vérifie que les fichiers dds utilisent les bons formats DXT, suggère la conversion en DXT1 si possible.
  • Module MipMapCheck : vérifie que les textures pour les objets 3D ont des MipMaps, avertit si la texture a une résolution trop faible.
  • Module TextureCheck : vérifie que les textures ont une résolution de 2^n.
  • Module I3DCheck : vérifie l'intégrité des références, les lumières/caméras obsolètes et l'utilisation de textureArray.
  • Module ModDescCheck : vérifie un ensemble de directives ModHub (descVersion, format du numéro de version, changelog, localisation, ...)
  • Module VehicleCheck : vérifier que des éléments xml spécifiques aux véhicules sont présents (par exemple "washable") ou absents (par exemple "dailyUpkeep" dans les véhicules).
  • Module SlotCheck : calcule le nombre estimé d'emplacements utilisés pour chaque article du magasin comme référence pour le moddeur.
  • Module ObsoleteFiles : liste des fichiers sources obsolètes non chargés par le jeu, liste des textures éventuellement inutilisées, liste des fichiers en double.
  • Module EditorCheck : charge tous les fichiers i3d contenus dans le mod et vérifie les erreurs éventuelles.
  • Module ShaderCheckEditor : avertit si des shaders personnalisés sont présents dans le mod, annulant ainsi la compatibilité avec la console, génère des erreurs si des configurations de matériaux sont utilisées alors qu'elles ne sont pas disponibles dans le cache des shaders.

Dépannage
  • problème : l'installation du jeu est introuvable
    • raison : les outils vérifient l'emplacement d'installation par défaut et lisent l'emplacement à partir du registre, assurez-vous que vous n'avez pas déplacé le jeu après l'installation.
    • solution : exécutez cmd (voir les instructions ci-dessous) avec l'argument -g <pathToGameInstallation> pour définir manuellement le chemin.
      Image
  • problème : l'installation de l'éditeur est introuvable
    • les outils recherchent les éditeurs Giants installés dans le fichier xml giantsPackageRegistry situé dans appdata/local.
    • solution : exécuter dans cmd (voir instructions ci-dessous) avec l'argument -p $FS22_EDITOR$ <pathToEditorExe>.
  • problème : le programme se ferme tout seul/se casse
    • afficher/envoyer TestRunner.log, si possible envoyer le mod testé dans un message privé
    • si possible, exécutez l'outil en ligne de commande et ajoutez "--verbose" comme argument et envoyez-nous le log.
      de cette façon, plus d'informations seront incluses dans le fichier journal et nous aideront à déboguer le processus.


Instructions pour l'utilisation avec la ligne de commande (cmd)

si vous devez effectuer des réglages supplémentaires (par exemple, si l'installation du jeu ne peut être trouvée automatiquement), vous pouvez exécuter l'outil à partir d'une ligne de commande
  1. lancer une fenêtre de ligne de commande ou powershell
    • Option A : cliquez sur la barre d'adresse de la fenêtre de l'explorateur Windows, tapez "cmd", appuyez sur la touche Entrée.
      cela ouvrira une ligne de commande dans le répertoire actuel de l'explorateur.
    • Option B: maintenez shift et faites un clic droit sur l'arrière-plan de la fenêtre de l'explorateur, sélectionnez "Ouvrir la fenêtre de ligne de commande ici" ou "Ouvrir la fenêtre PowerShell ici".
      Cela ouvrira une ligne de commande/powershell dans le répertoire actuel de l'explorateur.
    • Option C: Press "Win" + "R", type "cmd" dans la boîte de dialogue, appuyez sur Entrée
      cela ouvrira une ligne de commande dans votre profil d'utilisateur
      => naviguer jusqu'à l'emplacement du TestRunner_public.exe
  2. type "TestRunner_public.exe" ("./TestRunner_public.exe" pour PowerShell)
  3. appuyez sur espace et entrez le chemin d'accès à votre mod dézippé, e.g. "D:\mods\FS22_caseIHMagnum724Pro"
  4. Facultatif : ajoutez des arguments supplémentaires si nécessaire/désiré
    Image
  5. appuyez sur la touche Entrée pour lancer l'outil de test

Si vous trouvez des bugs, je vous suggère de les signaler sur notre site Web. public Bugtracker, car il est plus efficace de les gérer là.
Nous attendons vos réactions et espérons que l'outil vous aidera à créer des mods et à les soumettre sur le ModHub.
Gruß Heizer