Um dia na vida de um desenvolvedor de ALM: suspender trabalho, corrigir um bug e realizar uma análise do código

Uma maneira eficiente de um clique de alternar o contexto trabalhando de um segmento de trabalho para outro está disponível em Visual Studio Premium e em Visual Studio Ultimate com o Team Foundation Server.Além de isso, os membros da equipe podem facilmente trocar mensagens sobre alterações propostas para o código.Este tópico ilustra esses recursos, continuando um tutorial que segue membros de uma equipe agile fictício por um dia.

Peter foi ocupado escrever qualquer código para atender a uma tarefa de item de retorno. Em o entanto, seus colegas eles descobriram um bug que os bloqueasse, e deseja corrigi-lo imediatamente.Suspende o trabalho que estão fazendo e corrigir o erro.Solicita que Julia examine a correção e, depois que a revisão, fazer o check-in a correção e retoma trabalham em sua tarefa original.

ObservaçãoObservação

Meus recursos de revisão de trabalho e código que usa Peter estão disponíveis somente em Visual Studio Premium e em Visual Studio Ultimate.

Neste tópico

  • Suspensão o trabalho atual e iniciar o trabalho em um bug

  • Investigar o erro

  • Solicitar uma revisão de código

  • Aceitar e executar () ou reduzir uma revisão de código

  • Receber e responder a uma revisão de código

  • Corrigir o teste e o código

  • Fazer check-in a correção

  • Continuar o trabalho em uma tarefa

Suspensão o trabalho atual

Como Peter funciona em um item de retorno, Julia vem discutir um bug que a seja bloqueando.Está em uma área com que Peter é familiar, o que cria uma tarefa corrigir o erro e mesmoatribui-a si.Decidir imediatamente iniciar o trabalho na correção.

Antes de começar a trabalhar no novo erro, Peter deseja certificar-se que o trabalho atual é permitido em um local seguro no servidor de equipe.Em a página de Meu Trabalho , Peter escolher Suspender para salvar (em Team Foundation Server):

  • Qualquer trabalho que fez, incluindo se altera ao código, teste, e outros arquivos.

  • Soluções abertas, o windows, pontos de interrupção, variáveis da janela do relógio, e outros bit de estado do Visual Studio.

Agora que seu espaço de trabalho é limpo, Peter arrasta a nova tarefa de Itens de trabalho disponíveis a Trabalho em Andamento.Estiver pronto para pesquisar e escrever a correção.

ObservaçãoObservação

O contexto trabalhando é associado aos itens de trabalho que mostram como em andamento em my página de trabalho.Usando Suspender e Retomar, você pode rapidamente alternando entre diferentes tarefas.Suas soluções e abrir arquivos, as alterações de código, e todos o layout do Visual Studio são trocados juntos.

Hh474795.collapse_all(pt-br,VS.110).gifPara suspender o trabalho atual e iniciar o trabalho em uma tarefa diferente

Suspender algum trabalho

  1. conectar: se você não está mais conectado ao projeto de equipe que você deseja trabalhar em seguida, se conectar ao projeto de equipe:

    1. Em Team ExplorerInício, escolha Ícone da home page, e Ícone do meu trabalhoescolhaMeu Trabalho.
  2. Suspender sua tarefa atual:

    1. Em a seção de Trabalho em Andamento , escolha Suspender.

    2. Em a caixa que aparece, especifique o nome que você deseja fornecer a esse conjunto de trabalho suspensa, e então escolha o botão de Suspender .O nome padrão é o item atualmente em andamento de trabalho.

  3. Início de trabalho em uma nova tarefa, bugs, ou outro item de trabalho:

    1. Antes de selecionar um item de trabalho, você pode desejar:

      • Crie uma nova tarefa ou outro item de trabalho Novo escolhendo em Itens de trabalho disponíveis; ou

      • Selecione uma consulta em Itens de trabalho disponíveisdiferente.

    2. Arrastar um item de trabalho de Itens de trabalho disponíveis a Trabalho em Andamento.

      Como alternativa, você pode alternar a um item de trabalho que você suspensão anteriormente arrastando o da de Trabalho Suspenso.

DicaDica

Os itens atualmente em andamento de trabalho links para suas alterações de código e estado atual do Visual Studio.Para permitir que o Visual Studio ajude-o a organizar seu trabalho, certifique-se de que os itens são apropriadas no estado em andamento quando você alternar de uma tarefa a outra.

Investigar o erro

Peter abrir e ler o item de trabalho de bug.De acordo com a descrição que foi identificado por um membro da equipe de teste, tornar uma paga é embandeirada às vezes incorretamente como por pagar.Há um instantâneo do ambiente de laboratório anexado ao item de trabalho de bug.Peter pode abrir as máquinas virtuais em que o teste foi executado, consulta fazer incorreta, e para trás da etapa através do log de IntelliTrace.Rastreamento de falha ao método a seguir:

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

Log de IntelliTrace, Peter consulta que às vezes o método retorna falso porque diferem dos parâmetros por uma pequena quantidade.Peter souber que se arredonda erros de esse tipo são inevitáveis em aritimética de ponto flutuante, e que é prática incorreto testar números de ponto flutuante para igualdade.

Hh474795.collapse_all(pt-br,VS.110).gifAumente os testes para mostrar o erro

Quando um erro é encontrado, que mostra houve um intervalo de testes de unidade, ou que o teste não corresponde às necessidades partir dos usuários.Portanto, antes de corrigir o erro, Peter adicione um teste que demonstra a presença de esse erro.

 
        // 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));
        }

Executa um teste e funciona como esperado.

Teste de unidade Test Explorer mostrando falha igual

Hh474795.collapse_all(pt-br,VS.110).gifFaça a passagem de teste

Peter corrigir o código:

        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;
        }

De teste passa agora:

Teste de unidade Test Explorer mostrando passado igual

Solicitar uma revisão de código

Peter estiver satisfeito com a correção para o erro, mas não fazer o check-in seu trabalho ainda.Sua equipe usa revisões de código para aumentar a qualidade total de código e para reduzir a possibilidade de criar mais bugs, portanto Peter usa o team Explorer para solicitar uma revisão de código de seus companheiros Julia e Adam de equipe.

Hh474795.collapse_all(pt-br,VS.110).gifPara solicitar uma revisão de código

Solicitação de revisão de código

  1. Em Team Explorer, na página de Meu Trabalho , escolha Solicitar Revisão.

    A página de novo revisão de código aparece.

  2. Revisor Especifique um ou mais revisores.

  3. Revisão de código Especifique o nome da revisão.

  4. Caminho de área Especifique o caminho de área.

  5. Comentário Especificar um comentário a seus revisores.

  6. Escolha Enviar Solicitação.

Os revisores serão notificados de solicitação por email.

Você também pode solicitar uma revisão de código de trabalho, suspenso de um check-in particular, ou um conjunto de alterações.

Aceitar ou diminui uma revisão de código

Julia recebe a solicitação de revisão de código e aceitar-la.Examine o código, escreve algum feedback a níveis de arquivo e do bloco e em seguida, envia a revisão de código de volta a Peter.Adam é muito ocupado examinar o código e diminui.

Em os comentários, Julia indica que o teste é incorreto.O erro permitido deve ser uma fração especificada dos valores de entrada, não um valor constante.O teste deve multiplicar o erro por valor.

            // 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
DicaDica

Observe que os membros da equipe usam os testes como um foco para a discussão.Se os testes e corretos são suficientes, o código será também.Diferentemente de código, cada teste representa um caso separados.Por esse motivo, os testes são geralmente mais fácil da discussão do código.

Hh474795.collapse_all(pt-br,VS.110).gifPara executar uma revisão de código

Aceitar e responder a uma revisão de códigoExecutar uma revisão de código

  1. Em Team Explorer, na página de Meu Trabalho , vá para a seção de Minhas revisões e solicitações de código e abra a solicitação.

  2. Em a página de revisão de código , você pode:

    • Escolha Aceitar ou Recusar para notificar o autor se você executará a revisão.

    • Escolha Adicione o revisor para adicionar outros revisores à solicitação da revisão.

    • Exibir alterações para cada arquivo que foi atualizado para este item de trabalho.

    • Expanda Comentários para discutir as alterações com o autor e outros revisores.

      • Escolha Adicione o comentário total

        -  ou  -

        Selecione um bloco de código e então escolha Adicionar Comentário do menu de atalho.

      • Escolha enviar comentários para fazer suas contribuições visíveis ao autor e outros revisores.
    • Escolha Enviar e suporte para concluir a revisão, indicando se o código precisa mais trabalho.

Responder a uma revisão de código

Peter receber e responde a revisão de código de Julia.

Hh474795.collapse_all(pt-br,VS.110).gifPara responder a uma revisão de código

Os revisores e o autor do código podem trocar comentários tão freqüentemente como como.a revisão termina quando o autor a fecha.Com cada contribuição para a discussão, os outros participantes serão notificados por email.

Reagindo a uma revisão de código

  1. Em Team Explorer, na página de Meu Trabalho , vá para a seção de revisões & solicitação de código e clique duas vezes na solicitação.

    Você também pode abrir o menu de atalho para a solicitação e escolha Abrir.

  2. Lê comentários e responde-lhes quando necessário.Para responder a um comentário, escolha Responder, insira seu comentário que aparece na caixa, e escolha OK.Para enviar os comentários, escolha enviar comentários.

  3. Para exibir um arquivo e ver os blocos de código que têm comentários, ou editar um arquivo, vá para a seção de Comentários .Em a seção de Arquivos , abra o menu de atalho para o arquivo e escolha compare (somente leitura) ou editar Arquivo.

  4. Quando você usa e outros revisores responder aos comentários de cada e você está pronto para fechar a revisão Feche a revisão, clique, e então escolha qualquer pessoa:

    • Conclua para indicar que a revisão está concluída.

    • - ou -

    • abandono para indicá-lo está cancelar a revisão.

Corrigir o teste e o código

Lê comentários de Julia, Peter corrigir o teste de unidade como sugere.o teste falha agora.Isso mostra o código que ainda não está correto.

Peter corrigir o código:

        /// <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;
        }

O teste passa mais uma vez:

Teste de unidade Test Explorer mostrando passado igual

DicaDica

Para corrigir um bug, siga a mesma prática que no desenvolvimento de código.Escreva um teste que falhou faça teste o passado.Em o código e os testes somente quando os testes fluxos.

Agora Peter gira a atenção a situação de teste em que o erro foi descobertos.As etapas para reproduzir o erro são descritas claramente no item de trabalho a situação de teste.Siga as etapas e descobre que as facturas são listadas corretamente.

Fazer check-in a correção

Peter no código fixo e os testes de unidade.O estado de erro é definido automaticamente a Resolvido, e o valor de Atribuída a é reatribuido automaticamente ao membro da equipe de teste que descobriu o erro.Esse membro da equipe verifique se o erro foi corrigido e fechado o item de trabalho.

Hh474795.collapse_all(pt-br,VS.110).gifPara fazer o check-in da correção

Check-in de uma atualização para corrigir um bug

  1. Em Team Explorer, na página de Meu Trabalho , escolha Fazer Check-in.

  2. Examinar o conteúdo da página de Alterações pendentes para certificar-se que:

    • Todas as alterações relevantes são listadas em Alterações Incluídas

    • Todos os itens de trabalho relevantes são listados em Itens de Trabalho Relacionados.

  3. Especificar Comentário sua equipe para ajudar a entender a finalidade de essas alterações aparecem quando o histórico de controle de versão dos arquivos e pastas alterados.

  4. Escolha Fazer Check-in.

Continuar o trabalho em uma tarefa

Retoma de Peter trabalham em sua tarefa.Pode obter a volta para trabalhar rápido porque todas as alterações de código são restauradas para seu espaço de trabalho juntamente com bit importantes de estado como abrir janelas, pontos de interrupção, e variáveis da janela do relógio.

Hh474795.collapse_all(pt-br,VS.110).gifPara continuar o trabalho em uma tarefa

Continuar e concluir uma tarefa

  • Em Team Explorer, na página de Meu Trabalho , localize a lista de Operador & as suspenso .Abra o menu de atalho para o item.Você tem duas opções:

    • Se você deseja continuar o trabalho e suspensa para suspender automaticamente as alterações pendentes em seu espaço de trabalho, escolha Retomar.

    • Se você deseja mesclar suspenso com o trabalho já alterações pendentes em seu espaço de trabalho, escolha Mesclar com Em Andamento.

Hh474795.collapse_all(pt-br,VS.110).gifQuando você continuar seu trabalho

Painéis afetados por suspender um item de trabalho.

Quando você continua seu trabalho, o Visual Studio restaura:

  • Sua solução aberta

  • Suas alterações de código

  • o estado e a posição de janelas abertas

  • Pontos de Interrupção

  • Variáveis e expressões da janela do relógio

  • Indicadores