Avec QF-Test 10, il est possible d’intégrer des modèles d’IA tiers tels que GitHub Copilot dans QF-Test. Dans le cas de Copilot, il est généralement nécessaire d’avoir installé Copilot CLI sur le même système que QF-Test.
Cependant, il existe des situations où vous ne pouvez pas installer Copilot CLI sur vos machines de test pour des raisons techniques ou de sécurité.
Dans de tels cas, cet article invité de l’utilisateur expérimenté de QF-Test, Irfan Yigit, vous montre comment configurer Copilot sur une seule machine centrale et établir une connexion réseau SSH vers vos machines de test. Vous pouvez ensuite utiliser vos modèles d’IA GitHub Copilot avec QF-Test via SSH.
Prérequis
Pour mettre en place cette configuration sur un système Windows, OpenSSH est nécessaire. OpenSSH doit être installé sur la VM cliente et sur la VM cible.
La VM cliente doit également avoir QF-Test (10.0 ou supérieur) installé. La VM cible doit disposer d’une installation à jour de GitHub Copilot CLI, et la connexion GitHub (/login) doit avoir été effectuée dans l’environnement SSH.
Pour utiliser GitHub Copilot CLI via SSH distant de manière fiable, une clé SSH est obligatoire, car OpenSSH ne peut pas gérer les invites de mot de passe SSH lors d’appels distants automatisés (comme ceux déclenchés depuis QF-Test). L’authentification par clé SSH est uniquement nécessaire pour établir une connexion SSH stable et sans mot de passe.
Guide étape par étape
Préparation sur la VM cliente
1. Créer le répertoire .ssh (s’il n’existe pas, par exemple C:\Users\Administrator\.ssh)
New-Item -ItemType Directory -Path "$env:USERPROFILE\.ssh" -Force | Out-Null
2. Générer une clé SSH (ed25519) sur la VM cliente (sans phrase secrète)
ssh-keygen -t ed25519 -C "qftest-remote" -f "$env:USERPROFILE\.ssh\id_ed25519"
- Laisser la phrase secrète vide (appuyer deux fois sur Entrée).
- La clé publique générée (
…/.ssh/id_ed25519.pub) sera nécessaire sur la VM cible ultérieurement.
Préparation sur la VM cible
1. Configurer correctement les listes de contrôle d’accès (ACL)
Windows OpenSSH n’accepte les clés que si le fichier se trouve au bon endroit et si les permissions sont définies avec les ACL correctes. Le fichier C:\ProgramData\ssh\administrators_authorized_keys est créé et sécurisé comme suit :
icacls C:\ProgramData\ssh\administrators_authorized_keys /inheritance:r
icacls C:\ProgramData\ssh\administrators_authorized_keys /grant 'Administrators:F'
icacls C:\ProgramData\ssh\administrators_authorized_keys /grant 'SYSTEM:F'
Restart-Service sshd
2. Ajouter la clé publique
Coller le contenu de id_ed25519.pub depuis la VM cliente dans le fichier administrators_authorized_keys sur la VM cible et enregistrer (une clé par ligne).
3. Se connecter à Copilot CLI dans l’environnement SSH sur la VM cible (une seule fois)
Copilot stocke ses identifiants de connexion localement dans le profil utilisateur correspondant. La connexion doit être effectuée au préalable — soit directement sur la VM cible, soit via SSH, selon que différents utilisateurs Windows sont impliqués.
Une fois la connexion Copilot enregistrée dans l’environnement SSH, Copilot peut être entièrement piloté par script via SSH distant depuis QF-Test.
Exécuter les commandes suivantes dans PowerShell si toutes les VM clientes doivent interagir avec le même utilisateur et le même environnement SSH :
- SSH directement vers la VM cible :
ssh -i ~/.ssh/id_ed25519 Administrator@<IP-cible> - Démarrer Copilot :
copilot - Démarrer la connexion :
/login - Confirmer le code d’appareil dans le navigateur.
Test fonctionnel (VM cliente → VM cible, headless)
Exécuter la commande suivante sur la VM cliente dans PowerShell :
ssh -i ~/.ssh/id_ed25519 Administrator@<IP-cible> "copilot -p 'Dis bonjour' --stream on"
Dépannage
Tester la connexion par clé SSH depuis la VM cliente
Vérifier que SSH fonctionne sans mot de passe avec la clé SSH (condition préalable pour QF-Test) :
ssh -i $env:USERPROFILE\.ssh\id_ed25519 Administrator@<IP-cible> 'echo OK'
- Si
OKs’affiche → l’authentification par clé fonctionne. - En cas d’erreur : vérifier les clés SSH ou les ACL sur la VM cible.
Connexion de l’interface de ligne de commande Copilot à QF-Test via SSH
Suivez ces instructions :
Apportez les modifications suivantes au script ai.addCustomModel (indiquez l’utilisateur, le chemin et l’adresse IP correspondant à votre configuration) :
ai.addCustomModel("GitHub Copilot", (msg) -> {
def remoteUser = "Administrator"
def remoteHost = "192.168.0.2" // IP of target VM
def remoteCmd = "cmd /c \"C:/Users/Administrator/AppData/Local/GitHubCopilotCLI/copilot.exe --silent --stream off --model claude-sonnet-4.6 --prompt \\\"${msg}\\\"\""
def cmd = [
"ssh",
"-o",
"StrictHostKeyChecking=no",
"${remoteUser)@${remoteHost)",
remotecmd
]
def proc = cmd.execute()
proc.outputStream.close()
proc.waitFor()
return proc.in.text.replace("● ", "")
})
Découvrez plus d’informations sur les intégrations d’IA dans QF-Test 10 :

Max Melzer
