Alura > Cursos de Programação > Cursos de .NET > Conteúdos de .NET > Primeiras aulas do curso Testes em .NET: integração e entrega contínua com Azure DevOps

Testes em .NET: integração e entrega contínua com Azure DevOps

DevOps - Apresentação

Olá, tudo bom? Meu nome é André Bessa e serei o instrutor de vocês em mais este curso, abordando tecnologias .NET e Microsoft.

O objetivo desse curso é estudarmos a integração e a entrega contínua, mas vamos trabalhar com esses conceitos a partir de um projeto, que é a automação do processo de integração e entrega contínua, utilizando o Alura ByteBank.

A nossa aplicação no ByteBank permite cadastrar contas-correntes, clientes, agências. Note o seguinte: “contas-correntes” está com hífen e eu quero remover esse hífen do meu menu. Então como fazer isso?

Voltando para o código, no arquivo _Layout.cshtml, eu já fiz ajustes no menu, removi o hífen, salvei a alteração e vou "comitar" para a solução. No Visual Studio, na parte inferior direita, já tem a integração com o GitHub. Perfeito. Então, vou digitar “Update – Alteração do menu”. Confirmei a alteração, vou enviar o push.

Então qual é o objetivo? Quando fizer o commit, execute todos os testes da aplicação, faça o build da solução e implante essa correção para mim, no ambiente do usuário. Então eu quero ver no final todo o processo executado, a minha alteração criada. Então, entregar uma correção/solução de uma maneira mais rápida para o cliente. E como fazer isso?

Note o seguinte: eu estou usando a ferramenta Azure DevOps, e está rodando uma build Pipeline. O que é isso? Uma build Pipeline automatiza o processo. Eu aponto para o meu processo de build onde é o código-fonte, onde está o repositório, seja um GitHub ou dentro da própria ferramenta da Microsoft, e ele vai executar uma série de passos.

Vou clicar na execução da minha build e vou clicar em “Edit”. Então o que ele vai fazer? Vai fazer o restore da aplicação da solução, depois a build, então vai “buildar” as fontes do projeto, executar os testes também, definidos para essa solução da Alura ByteBank, vai publicar.

No momento que ele publicar, ele vai começar o meu outro processo, que é o release. No painel à esquerda, temos o Releases que vai mostrar esse processo e implantar a solução para as correções nesse ambiente. Vai fazer isso de maneira automatizada.

Então qualquer alteração, qualquer nova funcionalidade, eu automatizo o processo de pegar o código-fonte, rodar os testes, compilar, “buildar” e implantar a solução para o usuário. Então, com isso, vamos fazer um processo de integração e entrega contínua, com as ferramentas do .NET.

Então vamos começar a criar aquela build Pipeline que automatiza esse processo. Desde a codificação até a entrega da nossa função, as correções, ou novas funcionalidades para o nosso cliente, na plataforma que ele utiliza, seja uma plataforma web, uma aplicação mobile, ou até mesmo a intranet da empresa.

Vamos usar como ferramentas, além do Visual Studio Community, o Azure e o Azure DevOps.

O Azure será o nosso ambiente de cloud da Microsoft, permitindo implantar a solução do Alura ByteBank, bem como o seu banco de dados, e o Azure DevOps nos permitirá criar essa Pipeline automatizada, buscando o código-fonte no repositório, executando o processo de build, release, execução dos testes e implantação do nosso ambiente, que vai ser o Azure.

Para que é este curso? Este curso é focado, principalmente, para as pessoas que pretendem aprofundar um pouco mais nas tecnologias Microsoft, dar um mergulho nesse ambiente, no mundo do .NET e as ferramentas que compõem esse ecossistema.

Então é importante que você já tenha um conhecimento em orientação a objetos, criação de testes, de maneira automatizada, usando xUnit, MS Test, conceitos de teste unitário, teste de integração, teste de interface, é sempre bom também.

Se você quer se aprofundar um pouco mais, entender como funciona, como vamos criar essa build Pipeline e automatizar esse processo, desde a codificação até a entrega do ambiente para o usuário final, vem comigo nesse curso.

DevOps - Preparação do ambiente

Olá, tudo bom? Vamos preparar o nosso ambiente para trabalhar durante o curso.

O nosso projeto é o Alura ByteBank, uma solução .NET composta por 5 projetos: projeto de domínio; de aplicação; de infraestrutura, que vai configurar e conectar com o banco de dados MySQL; de apresentação, que terá a apresentação web que vamos hospedar na nuvem; e o projeto de teste, que contém três projetos de domínio, de infraestrutura e também o de integração de interface.

Então, o Alura ByteBank é a solução que permite trabalhar com contas bancárias, cadastrar contas, clientes, agências.

Eu vou rodar a aplicação agora, ela está rodando localmente na minha máquina. Na parte superior, vou clicar em “IIS Express”. Vou até fechar o “Gerenciador de Soluções”, por enquanto. A aplicação está sendo "startada", rodando na minha máquina, usando o IIS Express.

No navegador, vou logar na aplicação,usando usuário e senhas padrão: “andre@email.com” e a senha “senha01”. Em seguida, clicarei em “Logar”. Então a aplicação está funcionando e vai estar disponível para fazermos download também, para utilizar durante o curso.

Então, na barra superior, temos “Home”, “Agência” — eu já tenho algumas agências cadastradas, inclusive —, “Clientes” e “Conta-Corrente”. Deixe-me fechar a aplicação. Então é essa aplicação que vamos trabalhar, e vamos configurar um processo que vai permitir codificar e entregar, no final, essa solução funcionando, já no ambiente do nosso cliente. Vamos trabalhar com integração e entrega contínua.

Nesse processo, vamos precisar gerenciar esse código. Então, para isso, vamos trabalhar usando a ferramenta de versionamento de código mais utilizada, que é o GitHub. Vou mostrar a integração do projeto, Visual Studio, com o nosso repositório Git.

No “Gerenciador de Soluções”, na lateral inferior direita do Visual Studio, eu tenho a possibilidade de criar um repositório Git ou clonar o repositório. Vamos trabalhar com a primeira opção, “Criar um Repositório Git”.

Vamos informar o local onde está o código na minha máquina, utilizar as minhas credenciais do GitHub para poder conectar a minha ferramenta com o repositório remoto do Git. Então vou criar um nome específico para o repositório que vai ser criado. Deixe-me fechar, por enquanto.

A possibilidade de gerenciar o código será importante para nós e, com essa configuração do Git, vamos conseguir gerenciar e versionar o código de tal maneira que saberemos as alterações criadas, as novas integrações com o código que já está funcionando, o que foi alterado, quando foi alterado e por quem foi alterado.

Isso tudo é muito importante para gerenciarmos todo esse processo e pensarmos na solução.

Nesse curso, também faremos a hospedagem da solução na internet, disponibilizando esse código já funcionando, como uma solução web, no ambiente de produção.

Então, vou clicar com o botão direito cobre “3-Apresentacao > Alura.ByteBank.WebApp”, e selecionar “Publicar...”. Vamos publicar essa solução no ambiente virtual da Microsoft, no ambiente da nuvem. Então, temos a possibilidade de integração, também, do Visual Studio com o Azure, que é a plataforma de cloud da Microsoft, que vai disponibilizar esse ambiente final para o usuário, a solução final para o usuário, funcionando.

Eu tenho essa possibilidade, também, através do Azure, eu utilizar Docker, uma pasta, servidores FTP, servidor web padrão IIS, e além de importar um perfil.

Vamos trabalhar toda essa configuração no decorrer do curso, para disponibilizar essa solução do Alura ByteBank para o nosso cliente, o nosso usuário final. Por que isso é importante? Desde a codificação, gerenciando o código, até a entrega final da solução, funcionando, para o cliente. Então vamos trabalhar com integração e entrega contínua.

DevOps - Criando uma conta no Azure

Olá, tudo bom? Agora que você já conhece as ferramentas que vamos trabalhar e o projeto que iremos configurar durante o curso, precisamos, para fluir melhor com o desenvolvimento do processo de desenvolvimento, criar uma conta Microsoft, para podermos acessar esse serviço, que é o Azure e o Azure DevOps.

Então, eu vou acessar, usando o navegador, vou abrir o Chrome, e acessar esse link “azure.microsoft.com/pt-br”. Apertei “Enter” e caí na página do Azure. Então, nessa página tem algumas informações importantes: as vantagens de utilização do Azure, as ferramentas mais populares dentro dessa plataforma, como o Azure Arc, Contêiner, Spring Cloud, Kubernetes, Chaos Studios, e o próprio Azure DevOps, que é o nosso foco.

Então, voltando para o início da página, eu vou clicar em “Conta gratuita”. Eu caio em outra página, com informações referentes à conta que eu vou criar junto a Microsoft, para a utilização do Azure e do Azure DevOps.

Então, informações importantes: os serviços mais populares são gratuitos por 12 meses. Então por 12 meses eu vou ter acesso a diversos serviços dessa plataforma. E quando eu crio a conta free, gratuita, eu tenho 200 dólares de crédito durante 30 dias, para ter acesso total à plataforma que eu estou trabalhando.

Então das ferramentas que eu vou ter disponível, descendo um pouco a rolagem da página, eu terei, durante 12 meses, acesso a mapas virtuais Linux, Windows, banco de dados do Azure, Cosmos DB, serviços de aplicativo do Azure, que vai me permitir hospedar até 10 aplicativos web, para poder ser acessado de qualquer dispositivo. Enfim, uma série de recursos.

Vou clicar, agora, voltando para o início da página, vou clicar em “Início gratuito”. Nessa página eu posso criar a conta, criar o vínculo a uma conta já existente da Microsoft. Então, por exemplo, eu tenho uma conta Gmail, eu posso usar o Gmail para criar essa conta vinculada à Microsoft.

Mas o que eu quero fazer é o seguinte, eu quero criar uma conta nova, então clico no botão “Create One”. Eu posso, de novo, acessar uma conta já criada, mas eu quero criar um novo endereço de e-mail para esse curso, então vou no link “Get a new email adress”.

Vou criar uma nova conta do Outlook. Vou chamar de “andre.silva.aluno”. “Next”. Vou criar uma senha. Próximo. A senha tem que ter pelo menos 8 caracteres, então vamos lá. Eu marco a região, o país/região, “Brasil”, data de nascimento “April”, “26”, de “1985”. Próximo. A conta está sendo criada.

Então eu acabei de criar uma conta e vincular à Microsoft. Para terminar esse processo de criação, eu preciso falar “Microsoft, eu não sou um robô, o André que está criando essa conta”. “Next”. Então eu tenho que marcar uma figura. Perfeito, conta criada.

Então, no meu navegador, na parte superior, já aparece o nome da minha conta “andre.silva.aluno@outlook.com”. Agora eu preciso definir o perfil dessa conta. Então já é configurado, por exemplo, “Brasil”, então eu tenho que inserir o primeiro nome, o nome do meio, opcional, mas posso inserir também, o sobrenome, aparece, já, o endereço de e-mail criado, “andre.silva.aluno@outlook.com”.

Vou inserir a informação de telefone. Eu também tenho a opção de marcar um número de telefone diferente, para eu verificar a autenticidade da minha conta, minha identidade. Não vou marcar isso agora, vou clicar em enviar SMS para esse telefone principal, “Enviar SMS para mim”. Agora eu preciso informar o código de verificação que eu recebi no telefone. Recebi o número de verificação, eu digito, peço para verificar o código.

Pronto, validado o número recebido por SMS, eu preciso inserir informações referentes ao endereço – rua, bairro, cidade, CEP. Pronto, preenchi os dados, preenchi as minhas informações pessoais. Eu marco, agora, dois checkbox, referentes a concordar contrato de cliente da Microsoft.

É importante lermos o contrato todo, além da política de privacidade. Vou marcar. E eu posso receber ou não informações, ou compartilhar informações junto a Microsoft. Vou marcar essa opção também. Vou clicar em “Avançar”.

Clicando em “Avançar”, o próximo passo nessa questão de compra, eu preciso vincular uma informação de cartão de crédito, por quê? Depois dos 30 dias da validade do crédito da Microsoft, ele vai me perguntar se eu quero mudar para um plano pago ou se eu quero usar sob demanda, então já vai, automaticamente, vincular o pagamento da utilização do serviço, junto as informações do meu cartão.

Então é importantíssimo que você verifique as informações que vão ser cadastradas nesta etapa, para poder seguir com a criação da conta. Perfeito?

Vim nas informações referentes ao cartão de crédito, e eu vou clicar no botão no final da página “Inscrever-se”. Após clicar em “Inscrever-se”, a página vai processar e você vai cair no portal do Azure.

No portal do Azure, nós vamos ter acesso à alguns serviços, então podemos verificar o tipo de assinatura que contratamos — vai aparecer que ela é gratuita —, máquinas virtuais, serviços de aplicativos, contas de armazenamento, banco de dados, vamos trabalhar com MySQL Server e uma série de outros serviços.

Então já temos acesso ao portal do Azure, o que vai ser muito importante para conseguirmos hospedar a função do Alura ByteBanking, e também criar o banco de dados da aplicação. Feito isso, vamos pular agora para o Azure DevOps, que é a ferramenta que nos permite implementar a integração contínua e entrega, também, da nossa solução, do Alura ByteBanking.

Então, acessando o portal do Azure, na outra aba do Chrome. Então “azure.microsoft.com”. Vou clicar em “Início gratuito”, mas antes disso podemos ver alguns recursos do Azure DevOps.

O Azure Boards permite-nos trabalharmos com quadros de agilidade; o Azure Pipelines, que é o foco do nosso curso; o Azure Repos, que vai permitir trabalharmos com repositórios Git privados; tem acesso também ao Azure Test Plans; Azure Artifacts; e o Marketplace para trabalhar e explorar novos recursos, novas funcionalidades ao Azure DevOps.

Então clicando em “Início gratuito” no início da página, eu preciso informar a conta que estou utilizando. Próximo. Vou inserir a senha. Vou permanecer conectado. Perfeito, eu já caí dentro da plataforma do Azure DevOps. Agora vamos configurar o nome do nosso projeto, e, daí em diante, seguir com a configuração para implementarmos a integração e entrega contínua, e trabalharmos com o DevOps.

Sobre o curso Testes em .NET: integração e entrega contínua com Azure DevOps

O curso Testes em .NET: integração e entrega contínua com Azure DevOps possui 108 minutos de vídeos, em um total de 44 atividades. Gostou? Conheça nossos outros cursos de .NET em Programação, ou leia nossos artigos de Programação.

Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:

Aprenda .NET acessando integralmente esse e outros cursos, comece hoje!

Plus

De
R$ 1.800
12X
R$109
à vista R$1.308
  • Acesso a TODOS os cursos da Alura

    Mais de 1500 cursos completamente atualizados, com novos lançamentos todas as semanas, emProgramação, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.

  • Alura Challenges

    Desafios temáticos para você turbinar seu portfólio. Você aprende na prática, com exercícios e projetos que simulam o dia a dia profissional.

  • Alura Cases

    Webséries exclusivas com discussões avançadas sobre arquitetura de sistemas com profissionais de grandes corporações e startups.

  • Certificado

    Emitimos certificados para atestar que você finalizou nossos cursos e formações.

Matricule-se

Pro

De
R$ 2.400
12X
R$149
à vista R$1.788
  • Acesso a TODOS os cursos da Alura

    Mais de 1500 cursos completamente atualizados, com novos lançamentos todas as semanas, emProgramação, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.

  • Alura Challenges

    Desafios temáticos para você turbinar seu portfólio. Você aprende na prática, com exercícios e projetos que simulam o dia a dia profissional.

  • Alura Cases

    Webséries exclusivas com discussões avançadas sobre arquitetura de sistemas com profissionais de grandes corporações e startups.

  • Certificado

    Emitimos certificados para atestar que você finalizou nossos cursos e formações.

  • Luri, a inteligência artificial da Alura

    Luri é nossa inteligência artificial que tira dúvidas, dá exemplos práticos e ajuda a mergulhar ainda mais durante as aulas. Você pode conversar com Luri até 100 mensagens por semana.

  • Alura Língua (incluindo curso Inglês para Devs)

    Estude a língua inglesa com um curso 100% focado em tecnologia e expanda seus horizontes profissionais.

Matricule-se
Conheça os Planos para Empresas

Acesso completo
durante 1 ano

Estude 24h/dia
onde e quando quiser

Novos cursos
todas as semanas