Interceptez une erreur IA et vérifiez l’application

Le code généré est prêt à être examiné, et n’est pas automatiquement prêt à être expédié. Au cours de cette dernière étape, vous pratiquez la détection d’une erreur de framework plausible et vérifiez task Tally au-delà de la compilation.

Tester délibérément l’assistant

Commencez une nouvelle conversation avec votre assistant pour qu’il ne tienne pas compte des contraintes des instructions précédentes. Demande :

Add a confirmation dialog before deleting a task from my Windows XAML app.
Show only the using directives and the dialog construction code.

Un assistant non contraint pourrait répondre :

using Windows.UI.Xaml.Controls;

var dialog = new ContentDialog
{
    Title = "Delete task?",
    PrimaryButtonText = "Delete",
    CloseButtonText = "Cancel"
};

Il s’agit d’un espace de noms UWP. ContentDialog existe également dans WinUI 3, ce qui rend l’erreur facile à manquer dans une révision de code.

Pour ce projet, l’espace de noms doit être :

using Microsoft.UI.Xaml.Controls;

var dialog = new ContentDialog
{
    Title = "Delete task?",
    PrimaryButtonText = "Delete",
    CloseButtonText = "Cancel",
    XamlRoot = this.XamlRoot
};

L’URL de référence WinUI 3 ContentDialog inclut microsoft.ui.xaml.controls. La référence ContentDialog UWP utilise windows.ui.xaml.controls.

C'est pourquoi « le type existe dans la documentation Windows » ne suffit pas. Vérifiez l’infrastructure, l’espace de noms, la version et le modèle d’application.

Utiliser une vérification d’infrastructure pour le code généré

Lorsque l’Assistant ajoute une API Windows, examinez-la avec les questions suivantes :

Vérifier Ce qu’il faut rechercher
Cadre S’agit-il de la documentation pour WinUI 3 et le SDK d'application Windows ?
Namespace Le code de l’interface utilisateur utilise-t-il Microsoft.UI.Xaml, non Windows.UI.Xaml ou System.Windows?
Version L’API est-elle disponible dans la version SDK d'application Windows référencée par le projet ?
Modèle d’application L’API nécessite-t-elle une identité de package, une fonctionnalité d’application ou une initialisation de fenêtre ?
Thread L’appel doit-il s’exécuter sur le thread d’interface utilisateur ? Le travail asynchrone est-il attendu ?
UX Existe-t-il un contrôle ou un modèle WinUI intégré pour le scénario ?
Accessibilité L’interface utilisateur générée a-t-elle des noms, des étiquettes, un accès au clavier et un focus visible ?
Données probantes Avez-vous compilé, exécuté et testé le parcours modifié ?

Demandez à l’assistant de fournir l’URL de Learn qui justifie son choix, puis ouvrez vous-même l’URL.

Vérifier le décompte des tâches

Exécutez une passe de vérification finale :

  1. Supprimez les données locales de l’application ou commencez par une nouvelle installation. Vérifiez que l’état vide s’affiche et que la saisie d’espaces uniquement laisse Ajouter une tâche désactivé.
  2. Ajoutez plusieurs tâches, marquez-en une complète et supprimez-en une autre. Vérifiez que le nombre restant est mis à jour et que l’élément approprié est supprimé.
  3. Redémarrez l’application. Vérifiez que les titres des tâches et les états d’achèvement sont restaurés.
  4. Ajoutez if (System.Diagnostics.Debugger.IsAttached) throw new IOException("Test save failure."); en première ligne de TaskStorage.SaveAsync, recompilez, puis lancez l’application dans le débogueur. Déclenchez un enregistrement et vérifiez que le InfoBar signale l’échec au lieu de la réussite de l’enregistrement. Supprimez ensuite la condition temporaire et régénérez.
  5. Parcourez chaque élément interactif avec Tab et Maj+Tab.
  6. Utilisez un lecteur d’écran ou Accessibility Insights for Windows pour examiner les noms, les rôles et l’ordre de tabulation.
  7. Redimensionnez l’application, testez les thèmes clair, sombre et contrasté, et générez pour x64 sans compilateur, XAML, liaison ou avertissements d’analyseur.

En savoir plus : Vue d’ensemble de l’accessibilité et tests d’accessibilité.

Affinez l’instruction, et pas seulement le code

En cas d’échec d’une vérification, enregistrez à la fois la correction et la raison dans votre invite suivante :

The generated code used Windows.UI.Xaml.Controls, which is the UWP
namespace. This project is WinUI 3. Replace it with the corresponding
Microsoft.UI.Xaml API, verify the API in the Windows App SDK reference,
build the x64 project, and explain why the original namespace was wrong.

Cela donne à l’assistant des preuves utiles et renforce la limite du projet. Pour un projet de longue durée, placez des contraintes stables telles que l’infrastructure, le modèle d’empaquetage, l’architecture cible et la commande de génération dans les instructions de référentiel que votre Assistant de codage lit.

Étapes suivantes

Vous avez créé une petite application WinUI 3 et pratiqué un workflow que vous pouvez réutiliser :

Demander → Générer → Créer → Inspecter → Vérifier → Affiner

Continuer avec :