alm Geliştirici'nda gün: kullanıcı Öykü için yeni bir kod yazma

Yeni bir kullanıcı Visual Studio uygulama yaşam döngüsü Yönetimi (alm) ve Team Foundation Server (tfs)?Nasıl sizin ve ekibinizin en fazla alacağı merak ediyor, uygulama oluşturmak için bu araçları en son sürümünden faydalanırsınız?

Adım-adım bu iki bölüm öğretici Yürüyüş ve bir gün Peter ve Julia, Fabrikam Fiber iki geliştiricileri büyürken izleyin birkaç dakika alabilir; kablolu televizyon ve ilgili hizmetleri sağlayan hayali bir şirket.Kullanıma ve update kodu, iş yarıda zaman askıya alma, kod gözden geçirme isteği, yaptığınız değişiklikleri denetleyin ve diğer görevleri gerçekleştirmek için Visual Studio ve tfs nasıl kullanabileceğinizi gösteren örnekler göreceksiniz.

Öykü için şimdiye kadar

Ekip son başladı Visual Studio ve Team Foundation Server uygulama yaşam döngüsü Yönetimi (alm) kullandığı.Bunlar kendi sunucusu kurun ve bir bekleme listesi oluşturulan istemci makinelerin planlı bir yineleme ve diğer kendi uygulama geliştirme başlamak için gereken planlama tamamlandı.

Bu bölümde, genel bakış

Peter kısaca kendi bekleme listesi gözden geçirir ve he bugün çalışır görevi seçer.HE he Geliştirme planları kod birimi sınamaları yazar.Genellikle, birkaç kez bir saat içinde he sınamalar çalıştırır, giderek daha ayrıntılı testler yazma ve bunları yapan kod yazma geçirin.HE genellikle he yazma yöntemini kullanan arkadaşlarınızla kendi kod arabirim anlatılmaktadır.

[!NOT]

Bu konuda tartışılan Çalışmam ve kod kapsamı özellikleri yalnızca Visual Studio Premium ve Visual Studio Ultimate.

Bu konuda

  • Kişisel bekleme listesi gözden geçirin ve görevleri işe başlaması için hazırlama

  • İlk birim test oluşturma

  • Yeni kodu için bir saplama oluşturma

  • İlk sınama çalıştırmak

  • API kabul

  • Kırmızı, yeşil, erişimcilerinden...

  • Kod kapsamı

  • Ne zaman biz tamamladınız mı?

  • Değişiklikleri teslim et

Kişisel bekleme listesi gözden geçirin ve görevleri işe başlaması için hazırlama

İçinde Team Explorer, Peter açar Çalışmam sayfa.Ekip, geçerli sprint sırasında Peter değerlendir Fatura durumu, ürün bekleme listesi öncelik üst öğesinde çalışır, Bankada.Peter Implement matematik fonksiyonları, üst öncelikli bekleme listesi öğesinin bir alt görevi başlatmak karar verir.HE sürüklediğinde bu görevden Kullanılabilir çalışma öğeleri liste halinde devam eden iş öğeleri & Değişiklikleri listesi.

Hh543900.collapse_all(tr-tr,VS.110).gifİş görevleri başlatmak için kişisel bekleme listesi gözden geçirmek ve hazırlamak için

Takım Gezgini içindeki çalışma sayfamdaki listelemek için

  1. Takım Gezgini'nde:

    1. Ardından çalımak istediiniz ekibi projeye bağlı değilseniz ekibi projeye Bağlan.

    2. Choose Ev simgesiniHome, and then choose Benim iş simgesiMy Work.

  2. Üzerinde Çalışmam görevden sürükleyin, sayfa Kullanılabilir çalışma öğeleri listelemek için Devam eden iş öğeleri bölüm.

    Ayrıca bir görev seçin Kullanılabilir çalışma öğeleri listeleyebilir ve sonra seçin Start.

Hh543900.collapse_all(tr-tr,VS.110).gifTaslak artan iş planı

Peter genellikle küçük adımlar bir dizi kod geliştirir.Her adımı tipik bir saatten uzun sürer ve on dakika olarak biraz zaman alabilir.Her adımda yeni bir birim test yazar ve he he önceden yazılmış sınamaları yanı sıra yeni sınama geçmesini sağlayacak şekilde, he geliştirme kodu değiştirir.Bazen istediği kodu değiştirmeden önce yeni test yazar ve bazen istediği kodu test yazmadan önce değiştirir.Bazen he refactors.Diğer bir deyişle, he yalnızca kod yeni sınamalar eklemeden artırır.Bunu doğru bir gereksinim temsil değil, he vazgeçerse sürece he hiçbir zaman geçirir, bir sınama değiştirir.

Her küçük adım sonunda he kodunun bu alanla ilgili tüm birimi sınamalarını çalıştırır.Her sınama işlemini geçinceye kadar he adım tam dikkate almaz.

HE tüm görev bitinceye kadar ancak istediği kodu Team Foundation Server denetlemez.

Bu küçük adımların sırasını için kaba bir plan aşağı Peter yazar.HE he çalışır gibi tam ayrıntıları ve daha sonra olanları sırasını muhtemelen değişeceğini bilir.Kendi ilk adımlar bu belirli görev listesi aşağıdadır:

  1. Test method stub oluştur — başka bir deyişle, yalnızca yöntem imzası.

  2. Belirli bir normal durum karşılar.

  3. Geniş kapsamlı test edin.Kodun büyük bir değer aralığı için doğru biçimde yanıt emin olun.

  4. Negatif üzerinde özel durum.Yanlış parametrelerle alabilme.

  5. Kod Kapsamı.En az % 80'ine kod birimi sınamaları tarafından kullandı emin olun.

Bazı arkadaşları bu tür bir plan test kodlarına açıklamaları yazın.Diğerleri, yalnızca kendi planını ipucunu.Peter görev çalışma öğesi Açıklama alanına adımları kendi listesi yazmak yararlı bulur.HE daha Acil bir görev geçici olarak geçiş yapmanız, he he kendisine iade etme olanağınız olduğunda listede nerede bulacağını bilir.

İlk birim test oluşturma

Peter, birim sınaması oluşturulmasıyla başlar.Yeni kendi sınıfını kullanan kod örneği yazmak istediği için birim sınaması ile başlar.

Kendisine yeni bir birim proje oluşturur böylece he sınama, sýnýf kitaplýðý için ilk birim test budur.HE açılır Yeni bir proje iletişim kutusu ve seçer Visual C#, Testve sonra Birim projesinin.

Yeni Proje iletişim kutusunda seçili birim testi

Birim test projesi içine he kendi örnek yazabilirsiniz bir C# dosyası sağlar.Bu aşamada, yalnızca kendi yeni yöntemlerden birini kullanarak nasıl çağrılacak göstermek istediği:

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

namespace Fabrikam.Math.UnitTest
{
    [TestClass]
    public class UnitTest1
    {
        [TestMethod]
        // Demonstrates how to call the method.
        public void SignatureTest()
        {
            // Create an instance:
            var math = new Fabrikam.Math.LocalMath();

            // Get a value to calculate:
            double input = 0.0;

            // Call the method:
            double actualResult = math.SquareRoot(input);

            // Use the result:
            Assert.AreEqual(0.0, actualResult);
        }
    }
}

Örnek bir çözüm bulmak için istediği zaman istediği kendi kod yazmıştır, çünkü kendisinin bir test yöntemi örnek yazar.

Hh543900.collapse_all(tr-tr,VS.110).gifTest proje ve yöntemleri bir birim oluşturmak için

Genellikle sınanan her proje için yeni bir test projesi oluşturacak.Test projesi zaten varsa, yalnızca yeni test yöntemleri ve sınıflarını da ekleyebilirsiniz.

Visual Studio birim Test çerçevesine bu yordamı kullanır, ancak diğer sağlayıcılardan çerçeveleri de kullanabilirsiniz.Explorer works test uygun bağdaştırıcı yüklemek sağlanan diğer çerçeveleri ile eşit olarak iyi.

  • Zaten yoksa, bir Test projesi oluşturun.

    • İçinde Yeni bir proje iletişim kutusunda, bir dil gibi seçim Visual Basic, Visual C++ veya Visual C#.Seçim Test ve sonra Birim projesinin.
  • Sınamalarınızı sağlanan sınama sýnýfýna ekleyin.Her birim sınaması bir yöntemdir.

    Her birim test tarafından eklenmelidir TestMethod özniteliği ve birim test yöntemi herhangi bir parametre olmalıdır.Birim test yöntemi için istediğiniz herhangi bir ad kullanabilirsiniz:

            [TestMethod]
            public void SignatureTest()
            {...}
    
        <TestMethod()>
        Public Sub SignatureTest()
        ...
        End Sub
    
  • Her sınama yöntemi yöntemini çağırmalıdır Assert geçirilen başarısız oldu veya olup olmadığını göstermek için sınıf.Genellikle, bir işlemin beklenen ve fiili sonuçları eşit olduğunu doğrulayın:

    Assert.AreEqual(expectedResult, actualResult);
    
    Assert.AreEqual(expectedResult, actualResult)
    
  • Test yöntemleri, olmasa da diğer sıradan yöntemlerini çağırabilir TestMethod özniteliği.

  • Sınamalarınızı birden fazla sınıf halinde düzenleyebilirsiniz.Her sınıf tarafından eklenmelidir TestClass özniteliği.

    [TestClass]
    public class UnitTest1
    { ... }
    
    <TestClass()>
    Public Class UnitTest1
    ...
    End Class
    

C++ kullanmalarý yay birim testleri hakkında daha fazla bilgi için bkz: Birim testleri için C++ c/C++ Microsoft birim sınama çerçevesi ile yazma.

Yeni kodu için bir saplama oluşturma

Daha sonra Peter bir class library projesi için yeni kendi kodu oluşturur.Var. Şimdi bir proje kodu geliştirme aşamasındadır ve birim testleri için bir proje.HE proje başvuru sınaması projeden geliştirilmekte kod ekler.

Solution Explorer ile Test ve sınıf projeleri

Yeni projede he yeni sınıf ve sınama başarılı bir şekilde oluşturmak en az izin yöntemi en az bir sürümünü ekler.Bunu yapmanın en hızlı yoludur sınamada çağırma karşı sınıf ve yöntem saplama oluşturmaktır.

        public double SquareRoot(double p)
        {
            throw new NotImplementedException();
        }

Hh543900.collapse_all(tr-tr,VS.110).gifTest sınıfları ve yöntemleri oluşturmak için

Öncelikle, zaten varolduğu sürece yeni sınıf eklemek istediğiniz proje oluşturun.

Bir sınıf oluşturmak için

  1. İmleci yerleştirmek istediğiniz üretmek için örneğin, sınıfın bir örneği LocalMath.Kısayol menüsünden seçim Kod üretmek, Yeni.

  2. İçinde Yeni bir türü iletişim kutusu, set Proje class library projesi için.Bu örnekte olduğu Fabrikam.Math.

Bir yöntem oluşturmak için

  • Örneğin, imleci yöntemine yapılan bir çağrı üzerine getirin SquareRoot.Kısayol menüsünden seçim Kodu üret, Method Stub.

İlk sınama çalıştırmak

Peter oluşturup t. ctrl + r tuşlarına basarak test çalıştırır.Sınama listesi altında görünür ve test sonucu kırmızı başarısız göstergesi gösterir Sınamaları başarısız.

Birim Test başarısız bir test gösteren Explorer

HE kodu basit bir değişiklik yapar.

       public double SquareRoot(double p)
        {
            return 0.0;
        }

HE yeniden test çalıştırır ve geçirir:

Birim Test Explorer geçirilen bir test ile

Hh543900.collapse_all(tr-tr,VS.110).gifBirimi sınamaları çalıştırmak için

Tüm Çalıştır düğmesini gösteren Explorer'ı sınayın

  • Üzerinde Test menüsünden seçin Çalıştır, Tüm sınamalar.

    - veya -

  • Test Explorer açık ise, Çalışan tüm.

    - veya -

  • İmleci yerleştirin bir test kod dosyası ve ENTER tuşuna ctrl + r, t.

  • Bir test altında görünüyorsa, Sınamaları başarısız:

    Test, örneğin, adı çift tıklatarak açın.

    Sınama başarısız noktası görüntülenir.

Testleri, tam bir listesini görmek için seçim Tümünü Göster.Özete dönmek için seçin Ev görüntüleyin.

Test sonucu ayrıntılarını görmek için Explorer Test Sına'yı seçin.

Bir sınama koduna gitmek için test Test Explorer'da çift tıklatın ya da seçim Açık Test kısayol menüsünde.

Bir test, hata ayıklamak için bir veya daha fazla sınamaları için kısayol menüsünü açın ve sonra seçin Hata ayıklama sınamaları seçili.

Çözümü oluþturun her sınamaları arka planda çalışmaya devam geçiş Sınamalar yapı sonra.Daha önce başarısız olan sınamaları ilk çalıştırılır.

Arabirim kabul

Peter Lync üzerinde kendi iş arkadaşı Julia çağırır ve kendi ekran paylaşır.Filiz kendi bileşeni kullanıyor olacaksınız.HE kendi ilk örneği gösterir.

Tamam, "lot işlevleri o sınamasından geçmesi." yorumları örnektir Julia düşünerek

Peter yanıtlar, "ilk sınama yalnızca ad ve fonksiyon parametreleri doğru olduğundan emin olmak için var.Şimdi Biz bu işlevin ana gereksinimi yakalayan bir test yazabilirsiniz."

Birlikte aşağıdaki sınama yazma:

  
      [TestMethod]
        public void QuickNonZero()
        {
            // Create an instance to test:
            LocalMath math = new LocalMath();

            // Create a test input and expected value:
            var expectedResult = 4.0;
            var inputValue = expectedResult * expectedResult;

            // Run the method:
            var actualResult = math.SquareRoot(inputValue);

            // Validate the result:
            var allowableError = expectedResult/1e6;
            Assert.AreEqual(expectedResult, actualResult, allowableError,
                "{0} is not within {1} of {2}", actualResult, allowableError, expectedResult);
        }
İpucuİpucu

Bu işlev, Peter, ilk, he önce bir özellik için birim sınaması yazar ve test karşılayan kod Yazar geliştirme, Test kullanıyor.Diğer durumlarda, he bu yöntem bunun yerine, istediği kodu yazdırdıktan sonra he testleri Yazar gerçekçi olmadığını bulur.Ancak he birimi sınamaları yazmak çok önemli bulduğu — önce veya sonra kod — bunlar kod kararlı tutmak için.

Kırmızı, yeşil, erişimcilerinden...

Peter izleyen bir döngüsü, he sürekli olarak bir sınama yazar ve onaylar başarısız, pass, sınama yapmak için kod yazar ve sonra yeniden yazma çabasını düşünür — yani sınamaları değiştirmeden kod geliştirme.

Hh543900.collapse_all(tr-tr,VS.110).gifKırmızı

Peter t he Julia ile oluşturulan yeni sınama çalıştırmak için ctrl + r tuş bileşimine basar.HE herhangi bir sınama yazdırdıktan sonra kendisine her zaman he geçişi kolaylaştırır kod Yazar önce onu başarısız olduğundan emin olmak için çalışır.Bu, he he he yazmış bazı sınamalar onaylamaları koymak unuttum sonra öğrenilen bir uygulamadır.Hata sonucu görme ona he geçişi kolaylaştırır, test sonucu doğru bir gereklilik memnun gösterir, güven verir.

Başka bir kullanışlı için uygulamadır Sınamalar yapı sonra.Çözümü geliştirmek her zaman bu seçenek sınamaları kodunuzu sınama durumu yedeklemelerinin bir raporunuz varsa, arka planda çalışır.Peter was ilk bakışta şüpheli Visual Studio yavaş yanıt yapmak, ancak nadiren böyle he bulur.

Birim Test Explorer başarısız bir test ile

Hh543900.collapse_all(tr-tr,VS.110).gifYeşil

Peter he geliştirme yöntemi koda kendi ilk deneme Yazar:

    public class LocalMath
    {
        public double SquareRoot(double x)
        {
            double estimate = x;
            double previousEstimate = -x;
            while (System.Math.Abs(estimate - previousEstimate) > estimate / 1000)
            {
                previousEstimate = estimate;
                estimate = (estimate * estimate - x) / (2 * estimate);
            }
            return estimate;
        }
        

Peter sınamaları yeniden çalışır ve tüm sınamaların başarılı:

Birim Test Gezgini iki başarılı testleri

Hh543900.collapse_all(tr-tr,VS.110).gifRefactor

Kod ana işlevi gerçekleştiren artık, onu daha iyi yapma yollarını bulun ya da gelecekte değiştirmek daha kolay hale getirmek için koda Peter arar.HE he döngü içinde yapılan hesaplamaların sayısını azaltabilir durumun etti:

public class LocalMath
    {
        public double SquareRoot(double x)
        {
            double estimate = x;
            double previousEstimate = -x;
            while (System.Math.Abs(estimate - previousEstimate) > estimate / 1000)
            {
                previousEstimate = estimate; 
                estimate = (estimate + x / estimate) / 2;
                //was: estimate = (estimate * estimate - x) / (2 * estimate);
            }
            return estimate;
        }

HE sınamaların yine de başarılı olduğunu doğrular:

Birim Test Gezgini iki başarılı testleri

İpucuİpucu

Kod geliştirdiğiniz sırada yaptığınız her değişiklik bir yeniden yazma çabasını veya bir uzantısı olması gerekir:

  • Yeniden işleme yeni işlevsellik ekleme değil çünkü sınamaları değiştirmeyin anlamına gelir.

  • Uzantı sınamaları ekleme ve varolan ve yeni sınamaları geçmesi için gerekli olan kod değişiklikleri yapmak anlamına gelir.

Değişen gereksinimleri var kodunu güncelleştiriyorsanız, artık geçerli gereklilikleri temsil eden eski testleri de silinecek.

Geçmiş olan sınamaları değiştirmekten kaçının.Bunun yerine, yeni sınamalar ekleyin.Gerçek bir gereksinim temsil eden sınamaları salt yazılır.

Her değişiklikten sonra sınamalarını çalıştırın.

Hh543900.collapse_all(tr-tr,VS.110).gif... ve yineleme

Peter, kendi küçük adımların listesini kaba bir kılavuz olarak kullanarak kendi dizi uzantısı ve adımlar, yeniden işleme devam eder.HE her zaman sonra her uzantının refactoring adım gerçekleşmezse ve he bazen birden fazla refactoring adımı sırayla gerçekleştirir.Ancak kendisine her zaman birimi sınamaları her değişiklikten sonra kodu çalıştırır.

Bazen istediği kodu için hiçbir değişiklik gerektiren, ancak, kendi kod düzgün çalışır kendi güvenilirlik ekler test ekler.Örneğin, işlev girdileri geniş bir aralığında çalıştığından emin olmak istediği.HE bunun gibi daha fazla testler Yazar:

        [TestMethod]
        public void SqRtValueRange()
        {
            LocalMath math = new LocalMath();
            for (double expectedResult = 1e-8;
                expectedResult < 1e+8;
                expectedResult = expectedResult * 3.2)
            {
                VerifyOneRootValue(math, expectedResult);
            }
        }
        private void VerifyOneRootValue(LocalMath math, double expectedResult)
        {
            double input = expectedResult * expectedResult;
            double actualResult = math.SquareRoot(input);
            Assert.AreEqual(expectedResult, actualResult, expectedResult / 1e6);
        }

Bu sınama, ilk çalıştırdığında iletir:

Birim Test Explorer ile geçirilen üç testleri

Sadece bu sonucu bir hata olmadığından emin olun, he geçici olarak küçük bir hatanın kendi sınaması başarısız olmasını tanıştırır.Başarısızlık gördükten sonra isterse onu yeniden giderir.

İpucuİpucu

Her zaman bir sınama geçişi yapmadan başarısız olun.

Hh543900.collapse_all(tr-tr,VS.110).gifÖzel durumlar

Peter şimdi olağanüstü girdileri testleri yazmaya geçer:

[TestMethod]
        public void RootTestNegativeInput()
        {
            LocalMath math = new LocalMath();
            try
            {
                math.SquareRoot(-10.0);
            }
            catch (ArgumentOutOfRangeException)
            {
                return;
            }
            catch
            {
                Assert.Fail("Wrong exception on negative input");
                return;
            }
            Assert.Fail("No exception on negative input");
        }

Bu sınama kod bir döngü koyar.HE kullanılacak olan İptal Test Explorer'da düğmesini.Bu kod 10 saniye içinde sona erer.

Peter, sonsuz bir döngüye yapı sunucuda oluşabilir değil emin olmak istemektedir.Sunucu üzerinde tam bir zaman aşımı uygular, ancak çalıştırmak, çok uzun bir süre olduğundan ve büyük ölçüde gecikmeye neden.Bu nedenle, he kesin bir zaman aşımı Bu sınama ekler:

        [TestMethod, Timeout(1000)]
        public void RootTestNegativeInput()
        {...

Açık zaman aşımı sınaması başarısız olur.

Peter, daha sonra bu olağanüstü servis talebiyle ilgili kod güncelleştirir:

       public double SquareRoot(double x)
        {
            if (x <= 0.0) 
            {
                throw new ArgumentOutOfRangeException();
            }

Hh543900.collapse_all(tr-tr,VS.110).gifGerileme

Yeni test geçişleri, ancak bir gerileme yoktur.Şimdi iletmek için kullanılan bir sınama başarısız:

Birim testi, daha önce geçirilen başarısız oldu.

Peter bulur ve hata düzeltmeleri:

      public double SquareRoot(double x)
        {
            if (x < 0.0)  // not <=
            {
                throw new ArgumentOutOfRangeException();
            }

Onu giderildikten sonra tüm sınamaların başarılı:

Dört geçirilen testlerinde Birim Test Gezgini

İpucuİpucu

Tüm sınamalar geçişleri kodunda yaptığınız her değişiklikten sonra emin olun.

Kod Kapsamı

Kendi çalışma sırasında aralıklarla ve son olarak kod, he denetler önce Peter kod kapsamı rapor alır.Bu kodun ne kadarının kendi sınamaları tarafından kullandı gösterir.

Kemal ekibinin en az % 80 kapsamını işleminden varmayı amaçlar.Yüksek bir kapsam kodu bu tür elde etmek zor olabilir çünkü bu gereksinimi için oluşturulan kodu rahat edin.

İyi Karşılama bileşeninin tam işlevselliği sınadı ve her giriş değerleri aralığı için kod çalışır garantilemez bir garanti değildir.Yine de, kod satırlarının tedarik ve tedarik bir bileşenin davranış alanı arasında oldukça yakın bir ilişki vardır.Bu nedenle, iyi Karşılama yapmaları gerektiğini davranış çoğunu sınadığınız ekibin güvenirlik güçlendirir.

Açık kod kapsam raporunu almak için testleri menüsünden seçin Çalıştır, Tüm sınamaları için çözümleme kod kapsamı.Daha sonra yeniden tüm sınamaları çalıştırın.

Kod kapsamı sonuç ve Renkli Göster düğmesi

Peter %86 toplam kapsamını alır.HE raporda toplam genişlediğinde, he geliştirme kod kapsamı % 100 olduğunu gösterir.Önemli puan altında test kodu için çok tatmin edici olmasıdır.Bitişik gerçekten sınamaları kendilerini bölümleridir.Arasında geçiş tarafından Kod Kapsamı renkleri göster düğmesi, Peter bakın hangi bölümlerinin test kodu değil kullandı.Ancak, he test koduna sahip olan ve bir hata algılanırsa, yalnızca kullanılacaktır: çünkü bu bölümleri kapsamını önemli karar verir.

Belirli bir sınama kodu belirli dalları ulaştığında doğrulamak için belirleyebileceğiniz Kod Kapsamı renkleri göster ve tek bir sınama kullanarak çalıştırın Çalıştır , kısayol menüsündeki komutu.

Ne zaman biz tamamladınız mı?

Peter devam küçük kod güncelleştirmek istediği kadar adımları memnun:

  • Kullanılabilir tüm birimi sınamaları.

    Bir projede çok büyük bir dizi birim testi ile bunların tümü için çalıştırmak beklemek bir uygulama geliştiricisi için pratik olabilir.Bunun yerine, projeye kaynak ağacına birleştirilmiş önce tüm iade edilen her shelveset için otomatik sınamalar çalıştırmak bir gated iade hizmeti çalışır.Farklı Çalıştır başarısız olursa, İadenin reddedilir.Böylece, developer kendi makinesinde en az sayıda birimi sınamalarını çalıştırın ve yapı parçalamak riski olmadan çalışan diğer işleri ile devam edin.Daha fazla bilgi için bkz. Değişiklikleri doğrulamak üzere Gated onay oluşturma işlemini tanımla.

  • Kod kapsamı, ekibin standardına uyan.% 75 tipik proje zorunludur.

  • Kendi birimi sınamaları her boy, normal ve olağanüstü girdileri de dahil olmak üzere, gerekli olan davranışının simüle.

  • Kendi kodu anlamak ve genişletmek kolay bir işlemdir.

Bu ölçütleri karşılandığında, Peter kendi kodunu kaynak denetimine denetlemek hazırdır.

Hh543900.collapse_all(tr-tr,VS.110).gifBirim testleri ile kod geliştirme prensipleri

Peter kodunu geliştirirken aşağıdaki ilkeler uygulanır:

  • Kod birimi testleri geliştirmek ve geliştirme sırasında sık sık çalıştırın.Birim testleri bileşeninizin tayini temsil eder.

  • Birim testleri, gereksinimleri değişti veya testleri yanlış sürece değiştirmeyin.Kod işlevselliğini genişletmek gibi yeni sınamalar yavaş yavaş ekleyin.

  • Kodunuzu sınamaları tarafından ele alınacak olan en az % 75 hedeflenir.Kod Kapsamı sonuçları aralıklarla ve kaynak kodu kontrol önce olup olmadığına bakın.

  • Kodu, birim testleri denetleyin, böylece sürekli veya normal çalışacak sunucu oluşturur.

  • Pratik yerlerde, işlevselliği her parçası için birimi önce test yazma.Onu karşılayan kod geliştirmek önce bunu yapın.

Değişiklikleri teslim et

Kendi değişikliklerini denetlemeden önce Peter Gönül basit ve etkileşimli olarak pastalardan ne he oluşturduğu gözden geçirebilmeniz için kendi ekran kendi Julia arkadaşınızla paylaşmak için Lync yeniden kullanır.Testler Julia hangi kod mu, değil nasıl çalıştığını öncelikle ilgilenen olduğundan, bunların tartışma odağı olarak devam eder.Julia Peter yazılmış kendi gereksinimlerini karşıladığını kabul eder.

Peter denetler he, her ikisi de dahil olmak üzere tüm değişiklikler testleri ve kod ve he tamamladı görev ile ilişkilendirir.İadenin ekibin otomatik takım oluþturma sistemi ekibin CI yapı oluşturma işlemi kullanarak kendi değişiklikleri doğrulamak için sıralar.Bu yapım işlemi hataları en aza ekibi yardımcı olur kendi oluşturma ve sınama codebase — bir ortamda temiz geliştirme bilgisayarlarından ayrı — ekip yaptığı her değişiklik.

Oluþturma iþlemi tamamlandýðýnda Peter bildirilir.Derleme sonuçları penceresi oluşturma başarılı oldu dışladığını görür ve tüm sınamalar geçirildi.

Hh543900.collapse_all(tr-tr,VS.110).gifDeğişiklikleri denetlemek için

Bekleyen değişiklikleri denetleme

  1. Menü çubuğunda Seç View, Team Explorer.

  2. İçinde Team Explorer, seçim Ev ve sonra seçin Çalışmam.

  3. Üzerinde Çalışmam sayfasında, seçim Check ın.

  4. İçeriği gözden Bekleyen değişiklikler emin olmak için sayfa:

    • Tüm ilgili değişiklikleri listelenen Bulunan değişiklikleri

    • Tüm ilgili çalışma öğeleri listelenen İlgili çalışma öğeleri.

  5. Belirttiğiniz bir Yorum ekibinizin değiştirilmiş dosya ve klasörlerin sürüm denetimi tarihçesine baktığınızda, bu değişikliklerin amacı anlamak yardımcı olacak.

  6. Seçim İade etme.

Hh543900.collapse_all(tr-tr,VS.110).gifSürekli olarak kod bütünleştirmek için

Sürekli tümleştirme oluşturma işlemi tanımlanması hakkında daha fazla bilgi için bkz: Sürekli tümleştirmeyi desteklemek için oluşturma işlemi tanımla.Bu yapım işlemi sonra takım yapılarında sonuçları hakkında bilgilendirilmek seçebilirsiniz.

Peter CI yapı başarılı bildirilir.

CI yapı sonuçları

Daha fazla bilgi için bkz. Çalıştır, izlemek ve derlemeleri yönetmek.

Sonraki (iş askıya alma, bir hata düzeltme ve kod incelemesi gerçekleştir)