Partager via


Comment ajouter des métadonnées de test

Par Windows 8, le Kit de pilotes Windows (WDK) utilise l’infrastructure TAEF (Test Authoring and Execution Framework) pour créer du contenu de test. Un test TAEF est un objet implémenté en tant que bibliothèque de liens dynamiques (DLL) qui contient plusieurs méthodes, où chaque méthode est mappée à un scénario de test spécifique. L’objet TAEF combine des méthodes associées dans un groupe de tests. Pour chaque test, il existe un ensemble de métadonnées qui décrit le test. Pour améliorer la portabilité et l’encapsulation des tests, TAEF stocke les métadonnées de test dans l’objet de test lui-même. Lorsque vous créez vos propres tests de pilotes à l’aide des modèles de test de pilote, vous devez ajouter ces métadonnées afin que vos tests de pilotes soient disponibles et puissent être déployés à l’aide de Visual Studio.

Conditions préalables

Pour ajouter des attributs de métadonnées de test

  1. Ajoutez les métadonnées de propriété de test requises aux fichiers sources de votre test.

  2. Par exemple, si vous utilisez le modèle Test du pilote pour créer votre version du test SurpriseRemove, les métadonnées suivantes sont ajoutées. Modifiez la description du test, le nom complet, la catégorie et les attributs du fichier de résultats.

    C++
    // Declare the test class method DoSurpriseRemove - the main test method within this class
        BEGIN_TEST_METHOD(DoSurpriseRemove)
        // Required properties for driver tests
        TEST_METHOD_PROPERTY(L"Kits.Drivers", L"TRUE")
        TEST_METHOD_PROPERTY(L"Kits.Parameter", L"DQ")
        TEST_METHOD_PROPERTY(L"Kits.Parameter.DQ.Description", L"A WDTF SDEL query that is used to identify the target device(s) - https://go.microsoft.com/fwlink/p/?linkid=232678")
        TEST_METHOD_PROPERTY(L"Kits.Parameter.DQ.Default", L"INF::OriginalInfFileName='%InfFileName%'")  
        TEST_METHOD_PROPERTY(L"RebootPossible", L"true")
        // TODO: Required properties to be customized to match your test requirements
        TEST_METHOD_PROPERTY(L"Description", L"Plug and Play Surprise Remove Generated Template")
        TEST_METHOD_PROPERTY(L"Kits.DisplayName", L"My Plug and Play Surprise Remove Test") 
        TEST_METHOD_PROPERTY(L"Kits.Category", L"My Test Category")
        // Optional properties for driver tests
        TEST_METHOD_PROPERTY(L"Kits.Drivers.ResultFile", L"TestTextLog.log")
        // TODO: (see Windows Driver Kit documentation for additional optional properties)
        END_TEST_METHOD()
    C#
    //
        // DoSurpriseRemove is a test method as identified by the [TestMethod] tag. 
        // More methods can be added by following this basic pattern.
        // The name of the function defines the name of the test.
        //
        [TestMethod]
        // Required properties (see Windows Driver Kit documentation for more information):
        [TestProperty("Kits.Drivers", "TRUE")]
        [TestProperty("Kits.Parameter", "DQ")]
        [TestProperty("Kits.Parameter.DQ.Description", "A WDTF SDEL query that is used to identify the target device(s) - https://go.microsoft.com/fwlink/p/?linkid=232678")]
        [TestProperty("Kits.Parameter.DQ.Default", "INF::OriginalInfFileName='%InfFileName%'")]
        // TODO: Required properties to be customized to match your test requirements.
        [TestProperty("Description", "Plug and Play Surprise Remove Generated Template")]
        [TestProperty("Kits.DisplayName", "My Plug and Play Surprise Remove Test")]
        [TestProperty("Kits.Category", "My Test Category")]
        [TestProperty("RebootPossible", "true")]
        // Optional properties (see Windows Driver Kit documentation for additional optional properties):
        [TestProperty("Kits.Drivers.ResultFile", "TestTextLog.log")]

    Composant Script Windows (.wsc)

    <!-- Define a test method with metadata: -->
        <method name="PlugAndPlaySurpriseRemoveTest">
        <!-- Required properties for ERT-->
        <TestMethodProperty name="Kits.Drivers" value="TRUE"/>
        <TestMethodProperty name="Kits.Parameter" value="DQ"/>
        <TestMethodProperty name="Kits.Parameter.DQ.Description" value="A WDTF SDEL query that is used to identify the target device(s) - https://go.microsoft.com/fwlink/p/?linkid=232678"/>
        <TestMethodProperty name="Kits.Parameter.DQ.Default" value="INF::OriginalInfFileName='%InfFileName%'"/>
        <TestMethodProperty name="RebootPossible" value="true" />
        <!-- TODO: Properties to be customized to match your test requirements -->
        <TestMethodProperty name="Description" value="Plug and Play Surprise Remove Generated Template"/>
        <TestMethodProperty name="Kits.DisplayName" value="My Plug and Play Surprise Remove Test"/>
        <TestMethodProperty name="Kits.Category" value="My Test Category"/>
        <!-- Optional properties for ERT-->
        <TestMethodProperty name="Kits.Drivers.ResultFile" value="TestTextLog.log"/>
        <!-- (see Windows Driver Kit documentation for additional optional properties) -->
        </method>
  3. Le tableau suivant décrit les attributs de propriété de test. Utilisez les exemples pour obtenir des conseils lorsque vous modifiez ou ajoutez les métadonnées de vos tests.

    Description
    Brève description de ce que fait le test.

    [Script] 
      < TestProperty name="Description" value= "This test cycles the system through various sleep states and performs IO on devices before and after each sleep state cycle"/>
    

    C++
                  
                  [C++]

    TEST_METHOD_PROPERTY(L"Description", L"Plug and Play Surprise Remove Generated Template")

    DisplayName
    Nom du test tel qu’il est indiqué dans Test du pilote.

                  
                  [Script]

    < TestProperty name="Kits.DisplayName" value="Sleep with IO Before and After"/>

    C++
                  
                   [C++]

    TEST_METHOD_PROPERTY(L"Kits.DisplayName", L"My Plug and Play Surprise Remove Test")

    Kits.Parameter
    Paramètre standard pour un appel de méthode. Un test peut avoir plusieurs paramètres.

                  
                  [Script]

    <ModuleProperty name="Kits.Parameter" value="TM"/>

    C++
                  
                  [C++]

    TEST_METHOD_PROPERTY(L"Kits.Parameter", L"DQ")

    Kits.Parameter.<ParameterName>. Description
    Description du paramètre.

                  
                  [Script]

    < TestProperty name="Kits.Parameter.TM.Description" value="Test mode parameter: Logo or Simple"/>

    C++
                  
                   [C++]

    TEST_METHOD_PROPERTY(L"Kits.Parameter.DQ.Description", L"A WDTF SDEL query that is used to identify the target device(s)")

    Kits.Parameter.<ParameterName>. Par défaut
    Valeur par défaut du paramètre.

                  
                  [Script]

    < TestProperty name="Kits.Parameter.TM.Default" value="Logo"/>

    C++
                  
                  [C++]

    TEST_METHOD_PROPERTY(L"Kits.Parameter.DQ.Default", L"INF::OriginalInfFileName='%InfFileName%'")

    Kits.Drivers
    Cet attribut marque le test à inclure dans le WDK.

                  
                  [Script]

    < TestProperty name="Kits.Drivers" value=""/>

    C++
                  
                  [C++]

    TEST_METHOD_PROPERTY(L"Kits.Drivers", L"TRUE")

    Kits.Category
    Décrit la catégorie d’un test.

                  
                   [Script]

    < TestProperty name="Kits.Category" value="Logo\Device Fundamentals"/>

    C++
                  
                   [C++]

    TEST_METHOD_PROPERTY(L"Kits.Category", L"My Test Category")

    Élément de déploiement
    Identifie les fichiers et/ou dossiers en tant que dépendances de test. Ceux-ci peuvent contenir toutes les ressources nécessaires à l’exécution des tests. Pour plus d’informations sur l’utilisation de ces métadonnées, consultez DeploymentItem Metadata.