Aracılığıyla paylaş


DeploymentItemAttribute Sınıf

Dosyaların veya dizinlerin, testin ve test altındaki uygulama derlemelerinin birlikte dağıtılması belirtmek için kullanılır.Bu öznitelik alınmadı.Daha hızlı testler için dikkate Çıktı Kopyala özelliği veri dosyaları yerine.

Devralma Hiyerarşisi

System.Object
  System.Attribute
    Microsoft.VisualStudio.TestTools.UnitTesting.DeploymentItemAttribute

Ad alanı:  Microsoft.VisualStudio.TestTools.UnitTesting
Derleme:  Microsoft.VisualStudio.QualityTools.UnitTestFramework (Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll içinde)

Sözdizimi

'Bildirim
<AttributeUsageAttribute(AttributeTargets.Class Or AttributeTargets.Method, AllowMultiple := True)> _
Public NotInheritable Class DeploymentItemAttribute _
    Inherits Attribute
[AttributeUsageAttribute(AttributeTargets.Class|AttributeTargets.Method, AllowMultiple = true)]
public sealed class DeploymentItemAttribute : Attribute
[AttributeUsageAttribute(AttributeTargets::Class|AttributeTargets::Method, AllowMultiple = true)]
public ref class DeploymentItemAttribute sealed : public Attribute
[<Sealed>]
[<AttributeUsageAttribute(AttributeTargets.Class|AttributeTargets.Method, AllowMultiple = true)>]
type DeploymentItemAttribute =  
    class
        inherit Attribute
    end
public final class DeploymentItemAttribute extends Attribute

DeploymentItemAttribute türü aşağıdaki üyeleri ortaya koyar.

Oluşturucular

  Ad Açıklama
Genel yöntem DeploymentItemAttribute(String) Bir test çalıştırmadan önce başlar dağıtılmak üzere bir öğeyi belirtir.
Genel yöntem DeploymentItemAttribute(String, String) Bir test çalıştırmadan önce başlar dağıtılmak üzere bir öğeyi belirtir.

Üst

Özellikler

  Ad Açıklama
Genel özellik OutputDirectory Çıktı dizini yolunu gösteren bir değeri alır.
Genel özellik Path Dağıtım öğesi yolu gösteren değeri alır.
Genel özellik TypeId Türetilmiş bir sınıf içerisinde uygulanan, bunun için benzersiz bir tanımlayıcı alır Attribute. (Attribute kaynağından devralındı.)

Üst

Yöntemler

  Ad Açıklama
Genel yöntem Equals Altyapı. Bu örnek, belirtilen bir nesneye eşit olup olmadığını gösteren bir değeri döndürür. (Attribute kaynağından devralındı.)
Genel yöntem GetHashCode Bu örnek için karma kodunu döndürür. (Attribute kaynağından devralındı.)
Genel yöntem GetType Alır Type geçerli örneğinin. (Object kaynağından devralındı.)
Genel yöntem IsDefaultAttribute Türetilmiş bir sınıfta geçersiz kılınmış, bu örneğin değeri türetilmiş bir sınıf için varsayılan değer olup olmadığını gösterir. (Attribute kaynağından devralındı.)
Genel yöntem Match Türetilmiş bir sınıfta geçersiz kılınmış, bu örnek, belirtilen nesne eşit olup olmadığını gösteren bir değeri döndürür. (Attribute kaynağından devralındı.)
Genel yöntem ToString Geçerli nesneyi temsil eden bir dize döndürür. (Object kaynağından devralındı.)

Üst

Açık Arabirim Uygulamaları

  Ad Açıklama
Açık arabirim uygulamasıÖzel yöntem _Attribute.GetIDsOfNames Adlar kümesi dağıtma tanımlayıcıları karşılık gelen bir dizi eşleştirir. (Attribute kaynağından devralındı.)
Açık arabirim uygulamasıÖzel yöntem _Attribute.GetTypeInfo Bir arabirim türü bilgilerini almak için kullanılan bir nesne türü bilgilerini alır. (Attribute kaynağından devralındı.)
Açık arabirim uygulamasıÖzel yöntem _Attribute.GetTypeInfoCount Bir nesne (0 veya 1) sağlar türü bilgileri arabirimi sayısının alır. (Attribute kaynağından devralındı.)
Açık arabirim uygulamasıÖzel yöntem _Attribute.Invoke Özellikleri ve yöntemleri bir nesnesinin kullandığı erişim sağlar. (Attribute kaynağından devralındı.)

Üst

Notlar

Visual Studio 2012ya da, bunları hazırladığınız veya test için benzersiz bir ayrı "dağıtım" klasöründe klasör çalıştırma testleri çalıştırır.Bir dağıtım klasörü kullandıysanız, test ve uygulama assemblies Çalıştır önce dağıtım klasörüne otomatik olarak kopyalanır.Bu öznitelik, test gibi verilerin kopyalanması gereken ek dosyaları belirtmek için kullanabilirsiniz.

Bir dağıtım klasörü kullanılır:

  1. DeploymentItem özniteliğini herhangi bir test yöntemlerini veya testi sınıfları vardır ve size dağıtım kullanılarak devre dışı değil bir .runsettings dosyası.

    - veya -

  2. Kullanmakta olduğunuz bir .testsettings dosyası.

Yürütülebilir dosyalar yalnızca yapı klasöründen dağıtım klasörüne kopyalanır.Yapı işlemi bunları yapı dizine kopyalar olsa da, diğer tüm dosyaları belirtmek için bu öznitelik kullanmanız gerekir.Alternatif olarak, kullanıyorsanız, bir .testsettings dosyası, dağıtım öğeleri belirtebilirsiniz.

Yapı testleri çalıştıran derlemeler dağıtım klasörüne kopyalamak için geçen süre klasörüne kaydeder çıktı.Bu özellikle yüksek miktarlarda testleri çalıştırmak için olan bir yapı sunucu önemlidir.Bu nedenle, dağıtım öğelerini belirten kaçının.Bunun yerine, veri dosyaları, Visual Studio projenize dahil ve set Çıktı Dizinine Kopyala özelliği.Ancak kullanıyorsanız, Not DeploymentItem herhangi bir sınıf veya bir test çalışması bir dağıtım klasörü içindeki yöntem özniteliği kullanılır ve testlerinizi gerektiren tüm öğeleri dağıtılacak emin olmanız gerekir.

Bu öznitelik, test yöntemine veya test sınıf belirtilebilir.Bu özniteliğin türetilmiş sınıfları tarafından alınmadı.Herhangi bir test başlamadan önce tüm öğelerde Çalıştırılacak testleri bir test çalışması içinde dağıtılır.

Birden fazla öğeyi seçmek için bu özniteliğin birden çok kopyası olabilir.Yolları, mutlak veya göreli olabilir.

  • Kaynak öğe yolu göre proje yoludur.Bir dosya veya klasör olabilir.

  • Hedef dizin yolunu bir klasör olmalı ve dağıtım dizini ile ilişkili değil.Klasör yoksa, oluşturulur.Dağıtım dizinine varsayılan değerdir.

Aşağıdaki örnekler, farklı kullanımı gösterir DeploymentItemAttribute:

  • [DeploymentItem("file1.xml")]
    Proje çıktısı (yapı) dizininde bulunan bir adlı bir öğe file1.xml dağıtır.Dosya dağıtımı kök dizinine kopyalanır.

  • [DeploymentItem(@"..\..\file1.xml")]
    Proje dizinden bir öğe dağıtır.Bu çıktı, örneğin, bin\Debug içinde olduğu tipik bir proje yapısını varsayar.

    Bu şekilde proje yapısını güvenmek yerine, dosyanın ayarlamayı düşünün Çıktı Kopyala özelliği.Çıktı dosyasını dağıtın.

  • [DeploymentItem("file2.xml", "DataFiles")]
    Bir proje çıktı (yapı) dizininden adlı bir öğe file2.xml dağıtır.Dosya dağıtım dizinine veri dosyaları alt dizine dağıtılır.

  • [DeploymentItem("C:\\MyDataFiles\\")]
    MyDataFiles dizininin içeriğini dağıtım dizinine kopyalar.Dosyalar ve dizinler içinde MyDataFiles dağıtılan diğer öğeler görünür.

  • [DeploymentItem("C:\\MyDataFiles\\", "MyDataFiles")]
    MyDataFiles içeriğini dağıtım dizinin alt dizini kopyalar.

  • (Kullanırsanız, bir .testsettings dosyası)[DeploymentItem("%myDir%\myFile.txt")]
    Bu dosyayı dizine varsa dosya Dosyam.txt dağıtır %myDir% giderir.

Öznitelikleri kullanma hakkında daha fazla bilgi için bkz: Öznitelikleri kullanarak meta verileri genişletme.

Örnekler

Aşağıdaki sınama "testData1.txt" adlı bir dosyayı okur.Bu dosya içinde tanımlandığı gibi dağıtılacak DeploymentItemAttribute.Test yöntemini test derlemesinin uygulamayı test etmek için geçmeden önce aynı dizinde dosyanın var olduğunu doğrulayın.

using System;
using System.IO;
using Microsoft.VisualStudio.TestTools.UnitTesting;

namespace DeploymentTest
{
    [TestClass]
    public class UnitTest1
    {
        [TestMethod]
        [DeploymentItem("testData1.txt")]
        public void ConstructorTest()
        {
            string file = "testData1.txt";
            // Verify that the data file exists in the deployment directory
            Assert.IsTrue(File.Exists(file), "Deployment failed: " 
                + file + " was not deployed");

            // Now test the application ...
        }
    }
}
Imports System
Imports System.IO
Imports Microsoft.VisualStudio.TestTools.UnitTesting

Namespace DeploymentTest
    <TestClass()> _
    Public Class UnitTest1
        <TestMethod()> _
        <DeploymentItem("testData1.txt")> _
        Sub ConstructorTest()
            Dim file As String = "testData1.txt"
            Assert.IsTrue(IO.File.Exists(file), "Deployment failed: " _
                + file + " was not deployed")

            ' Now test the application ...
        End Sub
    End Class
End Namespace

İş Parçacığı Güvenliği

Bu türün tüm genel statik (Visual Basic'te Shared) üyeleri iş parçacığı açısından güvenlidir. Hiçbir örnek üyesinin iş parçacığı açısından güvenliği garanti edilemez.

Ayrıca bkz.

Başvuru

Microsoft.VisualStudio.TestTools.UnitTesting Ad Alanı