Ein Tag im Leben eines ALM-Entwicklers: Unterbrechen der Arbeit, Beheben eines Fehlers und Durchführen einer Codeüberprüfung

Eine leistungsstarke Methode per Mausklick, den laufenden Kontext von einem Thread Arbeit zu anderen zu wechseln Visual Studio Premium ist in und in Visual Studio Ultimate mit Team Foundation Server verfügbar.Teammitglieder können problemlos Meldungen über vorgeschlagene Änderungen am Code.In diesem Thema werden diese Funktionen und setzt ein Lernprogramm fort, das Member eines fiktiven agilen Teams während eines Tages folgt.

Folgendes ist bemüht wurden, Code zu schreiben, um eine Rückstandselementaufgabe zu erfüllen. haben jedoch seine Kollegen einen Fehler gefunden, der sie blockiert wird, und er möchte sofort beheben.Es enthält die Arbeit, die er an ausgegeben und den Fehler behebt.Er fordert Julia, den Fehler zu überprüfen und, nachdem die Überprüfung, überprüft in der Korrektur und Zusammenfassungen arbeiten an ihrer ursprünglichen Aufgabe.

HinweisHinweis

Die meine Arbeit und Codeüberprüfungsfunktionen, die Peter verwendet, sind nur in Visual Studio Premium und in Visual Studio Ultimate verfügbar.

In diesem Thema

  • Halten Sie aktuelle Arbeit an und starten Sie Aufgaben mit einem Fehler

  • Untersuchen Sie den Fehler nach

  • Fordern Sie eine Codeüberprüfung

  • Übernehmen Sie (oder) Verweigerung einer Codeüberprüfung aus

  • Empfangen Sie und Reagieren auf eine Codeüberprüfung

  • Korrigieren Sie den Test und den Code

  • Checken Sie den Korrektur

  • Setzen Sie Arbeiten für eine Aufgabe fort

Halten Sie aktuelle Arbeit an

Während Peter an einem Rückstandselement funktioniert, gibt Julia, einen Fehler zu besprechen, der sie blockiert wird.Er ist in einem Bereich, mit dem Peter vertraut ist, das erstellt er eine Aufgabe, den Fehler zu beheben und diese zu.Er entscheidet, um Aufgaben im Korrektur sofort zu starten.

Vor dem beginnt, um an dem neuen Fehler zu arbeiten, möchte Peter überprüfen, ob die aktuelle Arbeit in einem sicheren Ort auf dem Server des Teams reserviert gespeichert wird.Klicken Sie auf der Seite Meine Arbeit wählt Peter Anhalten, um zu speichern (auf Team Foundation Server):

  • Die gesamte Arbeit, die er ausgegeben hat, einschließlich Änderungen am Code, für die Tests und anderen Dateien.

  • Geöffnete Projektmappen, Fenster, Haltepunkte, Überwachungsfenstervariablen und andere Bits von Visual Studio-Zustand.

Nachdem sein Arbeitsbereich fehlerfrei ist, wird die neue Aufgabe Peter von Verfügbare Arbeitsaufgaben zu In Bearbeitung" befindliche Arbeit.Es ist bereit, den Fehler zu überprüfen und zu schreiben.

HinweisHinweis

Das Arbeitser Kontext wird an Arbeitsaufgaben verknüpft, die darstellen, wie die auf der meiner Arbeitsseite.Mit Anhalten und Fortsetzen verwenden, können Sie zwischen verschiedenen Aufgaben schnell wechseln.die geöffneten Projektmappen und Dateien, Codeänderungen und Visual Studio-alle Layout werden zusammen umgeschaltet.

Hh474795.collapse_all(de-de,VS.110).gifUm aktuelle Arbeit anhalten und Arbeiten für eine andere Aufgabe beginnen

Aussetzen einiger Arbeiten

  1. Schließen Sie an:, wenn Sie noch nicht mit dem Teamprojekt verbunden sind, in dem Sie arbeiten möchten, und Herstellen einer Verbindung mit dem Teamprojekt her:

    1. In Team Explorer wählen Symbol "Startseite" Sie Startseite aus und wählen Symbol „Meine Arbeit“ dann Meine Arbeit aus.
  2. Anhalten die aktuelle Aufgabe:

    1. Im Abschnitt In Bearbeitung" befindliche Arbeit wählen Sie Anhalten aus.

    2. Geben Sie im Feld, das angezeigt wird, den Namen, den Sie diesen Satz von unterbrochene Arbeit geben möchten, und wählen Sie dann die Schaltfläche Anhalten aus.Der Standardname ist die momentan ausgeführten Arbeitsaufgabe.

  3. Anfangsarbeit über eine neue Aufgabe, Fehler oder eine andere Arbeitsaufgabe:

    1. Bevor Sie eine Arbeitsaufgabe ausgewählt haben, sollten Sie:

      • Erstellen Sie eine neue Aufgabe oder anderen Arbeitsaufgabe, indem Sie Neu unter Verfügbare Arbeitsaufgaben auswählen; oder

      • Wählen Sie eine andere Abfrage mit Verfügbare Arbeitsaufgaben aus.

    2. Ziehen Sie eine Arbeitsaufgabe von Verfügbare Arbeitsaufgaben zu In Bearbeitung" befindliche Arbeit.

      Alternativ können Sie einer Arbeitsaufgabe wechseln, die zuvor enthielten, indem Sie sie aus der Liste unter Angehaltene Arbeit gezogen haben.

TippTipp

Der momentan ausgeführten Arbeitsaufgabenlink für die aktuellen Codeänderungen und zu Visual Studio-Zustand.Um Visual Studio auf unterstützen Sie Ihre Arbeit zu organisieren, stellen Sie sicher die entsprechenden Elemente im aktuellen Zustand sind wenn Sie von einer Aufgabe zu einer anderen wechseln.

Untersuchen Sie den Fehler nach

Peter öffnet und liest die Fehlerarbeitsaufgabe.Gemäß der Beschreibung, die von einem Member des Testteams geschrieben wurde, wird eine zahlende Rechnung manchmal falsch gekennzeichnet, wie unbezahlt.Es gibt eine Lab-Umgebungs-Momentaufnahme, die der Fehlerarbeitsaufgabe angefügt wird.Folgendes ist in der Lage, die virtuellen Computer zu öffnen, auf dem der Test ausgeführt wurde, finden die falsche Rechnung und Schrittrückseite durch die Zusammenfassungsseite des IntelliTrace-Protokolls.Er verfolgt den Fehler die nächste Methode nach:

    public class LocalMath
    {       
        public static bool EqualTo(double a, double b)
        {
          return a == b;
        }

Wählen Sie IntelliTrace-Protokoll sieht Peter, dass manchmal die Methode false zurückgibt, da die Parameter durch eine sich sehr kleine Menge unterscheiden.Peter weiß, dass Rundungsfehler dieser Art in der Gleitkommaarithmetik unvermeidbar sind und dass es ungültiges üblich ist, Gleitkommazahlen eine Überprüfung auf Gleichheit.

Hh474795.collapse_all(de-de,VS.110).gifErweitern Sie die Tests, um den Fehler anzuzeigen

Wenn ein Fehler gefunden wird, wird er dar, dass eine Lücke in den Komponententests vorgenommen oder dass der Test nicht die tatsächlichen Anforderungen der Benutzer übereinstimmt.Daher vor dem Fehler Peter hinzufügt, einen Test behoben, der das Vorhandensein dieses Fehlers zeigt.

 
        // Added 2012-02-02 for bug 654321:
        /// <summary>
        /// Make sure that number equality test allows for 
        /// small rounding errors.
        /// </summary>
        [TestMethod]
        public void TestDoublesEqual()
        {
            // We allow a rounding error of 1 in 1000000:
            TestEqual(1, 1e-7, true); // Less than allowed error
            TestEqual(1, 1e-5, false); // More than allowed error
            TestEqual(1000, 1e-7, true); // Less than allowed error
            TestEqual(1000, 1e-5, false); // More than allowed error
        }
        private void TestEqual(double value, double error, bool result)
        {
            // Try different combinations of error and value:
            Assert.IsTrue(result == LocalMath.EqualTo(value + error, value));
            Assert.IsTrue(result == LocalMath.EqualTo(value, value + error));
            Assert.IsTrue(result == LocalMath.EqualTo(value - error, value));
            Assert.IsTrue(result == LocalMath.EqualTo(value, value - error));
        }

Es macht den Test und schlägt wie erwartet ausgelöst.

Komponententest-Explorer zeigt fehlerhaften Vergleichstest an

Hh474795.collapse_all(de-de,VS.110).gifFühren Sie die Tests

Peter behoben den Code:

        public static bool EqualTo(double a, double b)
        {
            // Allow for rounding errors.
            // For example, a == 2.0 and b = 1.99999999999

            const double allowedError = 1/1000000;
            return System.Math.Abs(a - b) < allowedError;
        }

Die des Tests übergibt jetzt:

Komponententest-Explorer zeigt bestandenen Vergleichstest an

Fordern Sie eine Codeüberprüfung

Folgendes ist mit seinem Korrektur für den Fehler Inhalte, aber er überprüft nicht in seine Arbeit noch.Die Teamverwendungscodeüberprüfungen, um der gesamten Codequalität zu erhöhen und des Risikos des Erstellens mehr Fehler, sodass Peter-Verwendung Team Explorer zu reduzieren, um eine Codeüberprüfung aus den Teamkameraden Julia und Adam anzufordern.

Hh474795.collapse_all(de-de,VS.110).gifUm eine Codeüberprüfung anfordern

Anfordern einer Codeüberprüfung

  1. In Team Explorer auf der Seite Meine Arbeit, wählen Sie Überprüfung anfordern aus.

    Die Seite Neue Codeüberprüfung angezeigt wird.

  2. Bearbeiter Geben Sie eine oder mehrere Bearbeiter an.

  3. Codeüberprüfung Geben Sie den Namen der Überprüfung an.

  4. Bereichspfad Geben Sie den Bereichspfad an.

  5. Kommentar Geben Sie einen Kommentar an die Bearbeiter an.

  6. Wählen Sie Anforderung übertragen aus.

Die Bearbeiter werden von der Anforderung per E-Mail benachrichtigt.

Sie können eine Codeüberprüfung angehaltener Arbeit, des Shelvesets oder des Changesets auch anfordern.

Übernehmen Sie oder empfangen Sie eine Codeüberprüfung

Julia empfängt die Codeüberprüfungsanforderung und akzeptiert sie.Sie überprüft den Code, schreibt einige Kommentare auf den Datei- und Codeblockebenen und sendet dann die Codeüberprüfung zurück an Peter.Adam ist ausgelastet, den Code und die Ablehnungen zu überprüfen.

In den Kommentaren unterstreicht Julia, dass der Test falsch ist.Der zulässige Fehler sollte ein angegebener Bruchteil der Eingabewerte, keine konstante Menge sein.Daher sollte der Test den Fehler durch den Wert multiplizieren.

            // We allow a rounding error of 1 in 1000000
            // as a fraction of the value:
            TestEqual(1, 1e-7, true); // Less than allowed error
            TestEqual(1, 1e-5, false); // More than allowed error
            TestEqual(1000, 1000*1e-7, true); // Less than allowed error
            TestEqual(1000, 1000*1e-5, false); // More than allowed error
TippTipp

Beachten Sie, dass die Teammitglieder die Tests als Fokus für Diskussion verwenden.Wenn die Tests richtig und ausreichen, ist der Code auch.Im Gegensatz zu den Code stellt jeder Test einen separaten Fall dar.Aus diesem Grund sind die Tests häufig einfacher als Code zu erörtern.

Hh474795.collapse_all(de-de,VS.110).gifSo fügen Sie eine Codeüberprüfung ausführen

Akzeptieren und Reagieren auf eine CodeüberprüfungDurchführen einer Codeüberprüfung

  1. In Team Explorer auf der Seite Meine Arbeit, wechseln Sie zum Meine Codeüberprüfungen & Anforderungen-Abschnitt und öffnen Sie die Anforderung.

  2. Auf der Seite können Sie Codeüberprüfung:

    • Wählen Sie Annehmen oder Ablehnen, um den Autor zu benachrichtigen, ob Sie die Überprüfung ausführen.

    • Wählen Sie Bearbeiter hinzufügen, um andere Bearbeiter der Codeüberprüfungsanforderung hinzuzufügen.

    • Zeigen Sie die Änderungen an jeder Datei an, die für diese Arbeitsaufgabe aktualisiert wurde.

    • Erweitern Sie Kommentare, um die Änderungen dem Autor und anderen Prüfer zu erörtern.

      • Wählen Sie Kommentare gesamt eingeben aus

        - oder -

        Wählen Sie einen Codeblock aus und wählen dann Kommentar hinzufügen im Kontextmenü aus.

      • Wählen Sie Kommentare senden, um die Beiträge dem Autor und andere Bearbeiter sichtbar zu machen.
    • Wählen Sie Senden & Fertig stellen, um die Überprüfung abzuschließen und angeben, ob der Code mehr Arbeit erfordert.

Reagieren auf eine Codeüberprüfung

Peter empfängt und auf die Codeüberprüfung von Julia.

Hh474795.collapse_all(de-de,VS.110).gifUm auf eine Codeüberprüfung reagieren

Die Bearbeiter und der Autor des Codes können Kommentare so häufig austauschen, wie sie sind.Die Überprüfung beendet, wenn der Autor sie enthält.Mit jedem Beitrag zur Diskussion, werden die anderen Teilnehmer per E-Mail benachrichtigt.

Reagieren auf eine Codeüberprüfung

  1. In Team Explorer auf der Seite Meine Arbeit, wechseln Sie zum Codeüberprüfungen und Anforderungen-Abschnitt und doppelklicken Sie auf die Anforderung.

    Sie können das Kontextmenü für die Anforderung auch öffnen und Öffnen auswählen.

  2. Lesen Sie die Kommentare und antworten Sie auf sie nach Bedarf.Um auf einen Kommentar zu antworten, wählen Sie Antworten eingeben, den Kommentar im Feld das angezeigt wird, und wählen Sie OK.Um die Kommentare zu senden, wählen Sie Kommentare senden.

  3. Um eine Datei anzuzeigen und sehen die Codeblöcke die Kommentare haben, oder eine Datei zu bearbeiten, navigieren Sie zum Abschnitt Kommentare.Im Dateien Unterabschnitt öffnen Sie das Kontextmenü für die Datei und wählen Sie entweder Vergleichen (schreibgeschützt) oder Datei bearbeiten aus.

  4. Wenn Sie und andere Bearbeiter beenden, auf der jeweils anderen Kommentare reagieren und Sie bereit sind, die Überprüfung zu schließen, klicken Sie auf Prüfung schließen und wählen Sie dann oder aus:

    • vollständig, anzugeben, dass die Überprüfung beendet wird.

    • - oder -

    • Abbrechen anzugeben, die Sie durch die Überprüfung ab.

Korrigieren Sie den Test und den Code

, Julia Kommentare, Peter lesend, behebt den Komponententest, wie sie vorsieht.Der Test schlägt nun fehl.Dies zeigt, dass der Code noch nicht richtig ist.

Peter behoben den Code:

        /// <summary>
        /// Returns true if two numbers are equal.
        /// </summary>
        public static bool EqualTo(double a, double b)
        {
            // Allow for rounding errors.
            const double allowedErrorMultiple = 1/1000000;
            double allowedError = (System.Math.Abs(a) + System.Math.Abs(b)) * allowedErrorMultiple/2;
            return System.Math.Abs(a - b) < allowedError;
        }

Der Test erfolgreich erneut:

Komponententest-Explorer zeigt bestandenen Vergleichstest an

TippTipp

Um einen Fehler zu beheben, führen Sie der gleichen Verfahren wie in der Codeentwicklung.Schreiben Sie einen Versuch, der fehlschlägt und führen Sie dann die Tests wurden bestanden.Checken Sie den Code und die Tests nur wenn die bestanden.

Peter dreht jetzt seine Aufmerksamkeit zum Testfall, in dem der Fehler gefunden wurde.Die Schritte, um den Fehler zu reproduzieren sind eindeutig in der Arbeitsaufgabe beschrieben.Es folgt den Schritten und ermittelt, dass die Rechnungen ordnungsgemäß aufgelistet werden.

Checken Sie den Korrektur

Peter überprüft in den festen Code und Komponententests.Der Zustand des Fehlers wird automatisch zu Gelöst festgelegt, und der Wert Zugewiesen zu wird automatisch dem Member des Testteams neu zugewiesen, das den Fehler ermittelt hat.Dieses Teammitglied überprüft, ob der Fehler und schließt die Arbeitsaufgabe behoben wurde.

Hh474795.collapse_all(de-de,VS.110).gifUm den Korrektur einchecken

Update zum Korrigieren eines Fehlers einchecken

  1. In Team Explorer auf der Seite Meine Arbeit, wählen Sie Einchecken aus.

  2. Überprüfen Sie den Inhalt der Seite Ausstehende Änderungen, um sicherzustellen, dass:

    • Alle relevanten Änderungen werden in Eingeschlossene Änderungen aufgeführt

    • Alle relevanten Arbeitsaufgaben werden in Verknüpfte Arbeitsaufgaben aufgeführt.

  3. Geben Sie Kommentar an, die das Team helfen, den Zweck dieser Änderungen zu verstehen, wenn sie den Versionskontrollverlauf der geänderten Dateien und Ordner berücksichtigen.

  4. Wählen Sie Einchecken aus.

Setzen Sie Arbeiten für eine Aufgabe fort

Peter-Zusammenfassungen arbeiten an der Aufgabe.Er ist in der Lage, die abzurufen, um schnell zu arbeiten, da alle Codeänderungen auf den Arbeitsbereich zusammen mit wichtigen Bits von Zustand wie geöffneten Fenstern, Haltepunkte und Überwachungsfenstervariablen wiederhergestellt werden.

Hh474795.collapse_all(de-de,VS.110).gifWeitere Arbeiten für eine Aufgabe fortsetzen

Wiederaufnehmen und Abschließen einer Aufgabe

  • In Team Explorer auf der Seite Meine Arbeit, suchen Sie die Liste Angehaltene & zurückgestellte Arbeitselemente.Öffnen Sie das Kontextmenü für das Element.Sie haben zwei Möglichkeiten:

    • Wenn Sie die angehaltene Aufgaben fortfahren und alle ausstehenden Änderungen im Arbeitsbereich automatisch anhalten möchten, wählen Sie Fortsetzen aus.

    • Wenn Sie die angehaltene Arbeit mit ausstehenden Änderungen im Arbeitsbereich bereits zusammenführen möchten, wählen Sie Mit "In Bearbeitung" zusammenführen aus.

Hh474795.collapse_all(de-de,VS.110).gifWenn Sie Ihre Arbeit fortsetzen

Vom Anhalten von Arbeitsaufgaben betroffene Bereiche.

Wenn Sie Ihre Arbeit fortsetzen, stellt Visual Studio wiederhergestellt:

  • die geöffnete Projektmappe

  • die Codeänderungen

  • Der Zustand und die Position der geöffneten Fenstern

  • Haltepunkte

  • Überwachungsfenstervariablen und -

  • Lesezeichen