Sdílet prostřednictvím


Jak: Vytvoření diagnostické datový adaptér

Vytvořit diagnostických dat adaptéru, vytvořte knihovnu tříd pomocí sady Visual Studio a přidejte diagnostické API adaptér dat poskytované Visual Studio Premium do knihovny tříd.Veškeré informace, které chcete jako datový proud souboru nebo odeslat DataCollectionSink poskytnutých rámci při zpracování událostí, které jsou aktivována při zkoušce.Proudy nebo soubory odeslány DataCollectionSink jsou uloženy jako přílohy výsledky testu po dokončení test.Vytvoříte-li testování chyb z těchto výsledků nebo při použití Test Runner, soubory jsou také spojeny chyb.

Můžete vytvořit adaptér diagnostických dat, který má vliv na počítač, kde vaše testy nebo počítač, který je součástí prostředí, které spustit aplikaci v testu.Například shromažďování souborů na zkušební stroj, kde jsou testy běhu nebo sběrné soubory na obsluze počítače v roli serveru WWW aplikace.

Diagnostické datový adaptér můžete přidělit popisný název, který se zobrazí při vytváření nastavení testu pomocí Test Manager nebo pomocí sady Visual Studio.Test nastavení umožňují definovat, jaké role počítače bude spuštěna adaptéry určitých diagnostických dat v prostředí při spuštění testů.Můžete také nakonfigurovat adaptéry diagnostických dat při vytváření test nastavení.Může například vytvořit diagnostických dat adaptéru, který shromažďuje vlastní protokoly z webového serveru.Při vytváření test nastavení můžete vybrat tento adaptér diagnostických dat spustit počítač nebo stroje, které při provedení této role serveru WWW a můžete změnit konfiguraci nastavení testu shromažďovat pouze poslední tři protokoly, které byly vytvořeny.Další informace o nastavení testu viz Nastavení stroje a shromažďování diagnostických informací pomocí nastavení testu.

Události jsou zaznamenávány při spuštění testů tak, aby adaptér diagnostických dat lze v daném okamžiku provádět úkoly v testu.

Důležitá poznámkaDůležité

Tyto události může být zvýšena na různých podprocesů, zvláště když máte zkoušky více počítačů se systémem.Proto musí být vědomi možných problémů podprocesů a nejsou neúmyslnému poškození vnitřních dat vlastní adaptér.Zkontrolujte, zda že adaptér diagnostických dat je bezpečné podprocesy.

Následuje neúplný seznam klíčových událostí, které můžete použít při vytváření diagnostické datový adaptér.Úplný seznam diagnostických dat adaptéru událostí naleznete v přehledu DataCollectionEvents třídy.

Událost

Description

SessionStart

Start spustit test

SessionEnd

Konec spustit test

TestCaseStart

Začátku každé zkoušky v

TestCaseEnd

Konci každé zkoušky v zkoušky

TestStepStart

Spustit test každý krok zkouška

TestStepEnd

Konec každý krok zkouška testu

[!POZNÁMKA]

Po dokončení testu ruční jsou odesílány žádné další události shromažďování dat adaptér diagnostických dat.Při zkoušce je znovu, bude mít nový identifikátor testovacího případu.Pokud uživatel obnoví test během zkoušky (které vznese TestCaseReset událostí), nebo změní zkušební krok výsledku, žádná událost shromažďování dat je odeslána adaptéru diagnostických dat, ale identifikátor testovacího případu zůstává stejné.Zjistit, zda byla obnovena testovacího případu, musí sledovat identifikátor testovacího případu v diagnostické datový adaptér.

Pomocí následujícího postupu vytvořte diagnostických dat adaptéru, který shromažďuje datový soubor, který je založen na informace, konfigurovat vytváření test nastavení.

Adaptér projektu kompletní příklad diagnostických dat, včetně vlastní konfigurace editoru, viz Ukázkový projekt pro vytvoření diagnostické datový adaptér.

Vytvoření a instalaci diagnostických dat adaptéru

Vytvoření a instalaci adaptéru diagnostických dat

  1. Vytvořte novou knihovnu tříd.

    1. Na soubor nabídce zvolte Novýa přejděte na Nový projekt.

    2. Z typy projektů, vyberte jazyk, který chcete použít.

    3. Z Visual Studio nainstalované šablony, vyberte Knihovna tříd.

    4. Zadejte název pro diagnostiku datový adaptér.

    5. Klepněte na tlačítko OK.

  2. Přidání sestavení Microsoft.VisualStudio.QualityTools.ExecutionCommon.

    1. V aplikaci Solution Explorer klepněte pravým tlačítkem na odkazy a zvolte Přidat odkaz na příkaz.

    2. Zvolte .NET a vyhledejte Microsoft.VisualStudio.QualityTools.ExecutionCommon.dll.

    3. Klepněte na tlačítko OK.

  3. Přidání sestavení Microsoft.VisualStudio.QualityTools.Common.

    1. V aplikaci Solution Explorer klepněte pravým tlačítkem na odkazy a vyberte Přidat odkaz na příkaz.

    2. Choose /.NET, locate Microsoft.VisualStudio.QualityTools.Common.dll.

    3. Klepněte na tlačítko OK.

  4. Přidat následující using příkazy souboru třídy:

    using Microsoft.VisualStudio.TestTools.Common;
    using Microsoft.VisualStudio.TestTools.Execution;
    using System.Linq;
    using System.Text;
    using System.Xml;
    using System;
    
  5. Přidat DataCollectorTypeUriAttribute do třídy pro adaptér diagnostických dat k identifikaci jako diagnostická data adaptér nahrazení společnosti, produkt, a verze odpovídající informace pro diagnostiku datový adaptér:

    [DataCollectorTypeUri("datacollector://Company/Product/Version")]
    
  6. Přidat DataCollectorFriendlyNameAttribute atribut třídy, nahrazení parametrů příslušné informace pro diagnostiku datový adaptér:

    [DataCollectorFriendlyName("Collect Log Files", false)]
    

    Tento popisný název se zobrazí v testu nastavení aktivity.

    [!POZNÁMKA]

    Můžete také přidat DataCollectorConfigurationEditorAttribute zadat Type své vlastní konfiguraci editoru pro tento adaptér dat a volitelně určit soubor nápovědy pro editor.

    Můžete také použít DataCollectorEnabledByDefaultAttribute určit, že je by měla být vždy povolena.

  7. Třída adaptéru diagnostických dat musí dědit z DataCollector třídy takto:

    public class MyDiagnosticDataAdapter : DataCollector
    
  8. Přidejte místní proměnné:

    private DataCollectionEvents dataEvents;
    private DataCollectionLogger dataLogger;
    private DataCollectionSink dataSink;
    private XmlElement configurationSettings;
    
  9. Přidat Initialize metoda a Dispose metoda.V Initialize metodu inicializace jímky dat, konfigurační data z test nastavení a registraci obslužných rutin událostí, které chcete použít takto:

    public override void Initialize(
        XmlElement configurationElement, 
        DataCollectionEvents events, 
        DataCollectionSink sink, 
        DataCollectionLogger logger, 
        DataCollectionEnvironmentContext environmentContext)
    {
           dataEvents = events;  // The test events
           dataLogger = logger;  // The error and warning log
           dataSink = sink;      // Saves collected data
           // Configuration from the test settings
           configurationSettings = configurationElement;
    
           // Register common events for the data collector
           // Not all of the events are used in this class
        dataEvents.SessionStart += 
            new EventHandler<SessionStartEventArgs>(OnSessionStart);
        dataEvents.SessionEnd += 
            new EventHandler<SessionEndEventArgs>(OnSessionEnd);
        dataEvents.TestCaseStart += 
            new EventHandler<TestCaseStartEventArgs>(OnTestCaseStart);
        dataEvents.TestCaseEnd += 
            new EventHandler<TestCaseEndEventArgs>(OnTestCaseEnd);
    }
    
    public override void Dispose(bool disposing)
    {
        if (disposing)
        {
            // Unregister the registered events
            dataEvents.SessionStart -= 
                new EventHandler<SessionStartEventArgs>(OnSessionStart);
            dataEvents.SessionEnd -= 
                new EventHandler<SessionEndEventArgs>(OnSessionEnd);
            dataEvents.TestCaseStart -= 
                new EventHandler<TestCaseStartEventArgs>(OnTestCaseStart);
            dataEvents.TestCaseEnd -= 
                new EventHandler<TestCaseEndEventArgs>(OnTestCaseEnd);
        }
    }
    
  10. Použijte následující kód obslužné rutiny události a soukromé metody shromažďování souboru protokolu generované při zkoušce:

    public void OnTestCaseEnd(sender, TestCaseEndEventArgs e)
    {
        // Get any files to be collected that are
        // configured in your test settings
        List<string> files = getFilesToCollect();
    
        // For each of the files, send the file to the data sink
        // which will attach it to the test results or to a bug
        foreach (string file in files)
        {
            dataSink.SendFileAsync(e.Context, file, false);
        }
    }
    
    // A private method that returns the file names
    private List<string> getFilesToCollect()
    {
        // Get a namespace manager with our namespace
        XmlNamespaceManager nsmgr =
            new XmlNamespaceManager(
                configurationSettings.OwnerDocument.NameTable);
        nsmgr.AddNamespace("ns", 
            "http://MyCompany/schemas/MyDataCollector/1.0");
    
        // Find all of the "File" elements under our configuration
        XmlNodeList files =
            configurationSettings.SelectNodes(
                "//ns:MyDataCollector/ns:File");
    
        // Build the list of files to collect from the 
        // "FullPath" attributes of the "File" nodes.
        List<string> result = new List<string>();
        foreach (XmlNode fileNode in files)
        {
            XmlAttribute pathAttribute = 
                fileNode.Attributes["FullPath"];
            if (pathAttribute != null &&
                !String.IsNullOrEmpty(pathAttribute.Value))
            {
                result.Add(pathAttribute.Value);
            }
        }
    
        return result;
    }
    

    Tyto soubory jsou připojeny k výsledky testu.Vytvoříte-li testování chyb z těchto výsledků nebo při použití Test Runner, jsou také soubory připojeny k chyb.

    Pokud chcete použít ke shromažďování dat použít test nastavení naleznete v tématu vlastní editor Jak: vytvoření Editor vlastních dat adaptéru diagnostických dat.

  11. Shromáždit soubor protokolu po dokončení testu založené na jaké uživatelem konfigurovaným v nastavení testu, musíte vytvořit App.config soubor a přidat do vašeho řešení.Tento soubor má následující formát a musí obsahovat URI adaptéru diagnostické údaje pro jeho identifikaci.Nahradit skutečné hodnoty "Společnosti/ProductName/verze".

    [!POZNÁMKA]

    Pokud není třeba konfigurovat žádné informace o adaptéru diagnostických dat, pak není třeba vytvořit konfigurační soubor.

    <?xml version="1.0" encoding="utf-8"?>
    <configuration>
      <configSections>
        <section name="DataCollectorConfiguration" 
          type="Microsoft.VisualStudio.TestTools.Execution.DataCollectorConfigurationSection, 
          Microsoft.VisualStudio.QualityTools.ExecutionCommon, 
          Version=4.0.0.0, Culture=neutral, 
          PublicKeyToken=b03f5f7f11d50a3a" />
      </configSections>
      <DataCollectorConfiguration 
        xmlns="https://microsoft.com/schemas/VisualStudio/TeamTest/11">
        <DefaultConfiguration>
          <!-- Your default config settings -->
            <File FullPath="C:\temp\logfile1.txt"/>
            <File FullPath="C:\temp\logfile2.txt"/>
        </DefaultConfiguration>
      </DataCollectorConfiguration>
    </configuration> 
    

    [!POZNÁMKA]

    Výchozí konfigurace prvek může obsahovat data, která požadujete.Pokud uživatel test nastavení v konfiguraci adaptéru diagnostických dat, pak výchozí data bude předán diagnostických dat adaptéru po spuštění.Protože XML přidáte <DefaultConfigurations> oddíl není pravděpodobně součástí deklarovaných schématu, můžete ignorovat chyby generuje XML.

    Existují další příklady v následující cestě založené na instalační adresář konfigurační soubory: Program Files\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies\DataCollectors.

    Další informace o konfiguraci nastavení testu při spuštění testů pomocí prostředí naleznete v Určení nastavení testů v nástroji Microsoft Test Manager nebo Vytváření nastavení testů pro automatizované systémové testy pomocí nástroje Microsoft Test Manager.

    Další informace o instalaci konfigurační soubor nalezneteJak: Nainstalujte adaptér vlastní diagnostických dat

  12. Sestavte řešení vašeho adaptéru shromáždění diagnostických dat vytvořit.

  13. Informace o instalaci vlastní editor Jak: Nainstalujte adaptér vlastní diagnostických dat.

  14. Další informace o konfiguraci nastavení testu při spuštění testů pomocí prostředí naleznete v Určení nastavení testů v nástroji Microsoft Test Manager nebo Vytváření nastavení testů pro automatizované systémové testy pomocí nástroje Microsoft Test Manager.

  15. Vyberte adaptér diagnostických dat, musíte nejprve vyberte existující test nastavení nebo vytvořit nový z Microsoft Test Manager nebo Visual Studio.Adaptér je zobrazen na dat a Diagnostika kartu Nastavení testu s popisným názvem přiřazenou třídu.

  16. Pokud používáte testy z Microsoft Test Manager, můžete přiřadit tyto otestovat nastavení plán testování před spustit testy nebo použít s možností testování příkazu přiřadit test nastavení a přepíše nastavení.Další informace o nastavení testu viz Nastavení stroje a shromažďování diagnostických informací pomocí nastavení testu.

    Pokud používáte testy z aplikace Visual Studio, musíte tyto testování nastavení být aktivní.Další informace o nastavení testu viz Nastavení testů v sadě Visual Studio.

  17. Testy test nastavení pomocí adaptéru diagnostických dat vybrána.

    Zadaný soubor dat je připojen k výsledky testování.

Viz také

Úkoly

Vytváření nastavení testů pro automatizované systémové testy pomocí nástroje Microsoft Test Manager

Referenční dokumentace

DataCollectorConfigurationEditorAttribute

DataCollectionEvents

DataCollector

DataCollectionSink

DataCollectorTypeUriAttribute

DataCollectorFriendlyNameAttribute

DataCollectorEnabledByDefaultAttribute

Koncepty

Nastavení stroje a shromažďování diagnostických informací pomocí nastavení testu

Jak: vytvoření Editor vlastních dat adaptéru diagnostických dat

Další zdroje

Nastavení testů v sadě Visual Studio

Určení nastavení testů v nástroji Microsoft Test Manager