

Seu próximo nível começa aqui
Com a Assinatura Ilimitada, você tem tudo que precisa para sua aprovação.
Com a Assinatura Ilimitada, você combina prática, teoria e método em uma única assinatura com tudo que você precisa para sua aprovação.
A prática de Test Driven Development (TDD, ou Desenvolvimento Orientado por Testes) se relaciona com o conceito de verificação e validação e se baseia em um ciclo para garantir a qualidade do código.
Entre as características do TDD, é correto o que se afirma em
trata-se de desenvolvimento orientado para os comportamentos, sendo o desenvolvedor responsável por escrever os testes e validá-los de forma que eles funcionem.
trata-se de desenvolvimento orientado para os testes, sendo atribuição do programador escrever como o problema deve se comportar.
na prática, se refere a escrever um teste automatizado durante o desenvolvimento do código de fato.
o ciclo do TDD se inicia com a criação de um teste, para auxiliar a codificação, segue com a realização da codificação para passar no teste, e finaliza com a eliminação das redundâncias, ao se refatorar o código.
no desenvolvimento de programas são intercalados testes, elicitação de requisitos e desenvolvimento de código, tendo os testes embutidos em um programa separado que os executa e invoca o sistema que está sendo testado.
Uma equipe de desenvolvimento ágil decidiu utilizar Pontos de História (Story Points) para estimar o esforço necessário para implementar as funcionalidades descritas no seu Product Backlog, na forma de Histórias do Usuário.
Considerando-se esse contexto, a técnica de Pontos de História ajuda a equipe a compreender o trabalho envolvido em cada história por
alocar tarefas específicas da história do usuário aos membros da equipe.
classificar as histórias do usuário em categorias de prioridade, de alta a baixa.
permitir prever o tempo, em horas, que a equipe levará para completar uma história.
determinar o custo financeiro direto associado ao desenvolvimento de uma história do usuário.
estimar o esforço relativo necessário para implementar uma determinada história do usuário, comparando-o ao de outras histórias.
Test Driven Development (TDD) como programação ou desenvolvimento em que se escreve um teste primeiro, esta é uma abordagem incremental que envolve a criação de um caso de teste anteriormente à implementação do código necessário para que este passe. Após definir a lista com os testes, deve-se escolher um teste e seguir o ciclo de desenvolvimento proposto pelo TDD, que é composto por cinco passos básicos, que inclui, EXCETO:
Adicionar um teste rapidamente.
Executar o teste para que este não falhe.
Executar o teste e ver a barra verde.
Eliminar o código duplicado.
Alterar o mínimo de código para que o teste passe.
Em testes de software, o processo que é feito pelo cliente ou outras partes interessadas e que visa garantir, uma vez mais, que o programa atende às especificidades e funciona perfeitamente é denominado:
Teste Unitário
Teste de Integração
Homologação
Teste de Aceitação
Teste de Sistemas
Dentro do Scrum, a técnica utilizada para medir esforço em uma tarefa, que geralmente utiliza a sequência de fibonacci, é:
ponto de função.
ponto de caso de uso.
kanban.
Planning poker.
scrum-buts.
Sobre a adoção de métodos ágeis para o desenvolvimento de software, analisar os itens abaixo:
I. Uma sprint é um período de no mínimo dois meses em que, no final, objetiva-se entregar uma parte do software utilizável pelo usuário.
II. A organização visual das tarefas, com as etapas do processo divididas em colunas, possibilitando adaptações ágeis diante de imprevistos, é uma característica do Kanban.
III. TDD é uma técnica de desenvolvimento de software em que os testes são desenvolvidos antes do código-fonte do sistema.
Está(ão) CORRETO(S):
Somente o item II.
Somente o item III.
Somente os itens II e III.
Todos os itens.
Sobre Desenvolvimento Guiado pelos Testes pelo qual a prática é começar a implementação pelo teste e, deve o tempo todo, fazer de tudo para que seu código seja simples e com qualidade. O entendimento que o desenvolvedor deve buscar pela solução mais simples, e não pela modificação mais simples, observando que a modificação mais simples não é necessariamente a solução mais simples, está relacionado ao conceito de:
testes de sistema.
testes de unidade.
objetos simulados.
passos de bebê.
integração.
O desenvolvimento orientado a testes (TDD) é um processo que se baseia na repetição em ciclos de desenvolvimento curtos. Ele é baseado no conceito test-first oriundo da programação extrema (XP) que incentiva o design simples com alto nível de confiança.
O procedimento que conduz este ciclo é denominado
refatoração vermelho-verde.
documentação executável.
testes da caixa-branca.
testes da caixa-preta.
mocking up.
Maria está trabalhando em um projeto de desenvolvimento de software e decide adotar a abordagem do Test Driven Development (TDD) para melhorar a qualidade do código e a colaboração entre os membros da equipe. Ela começa a implementar uma nova funcionalidade seguindo os princípios do TDD. Assinale a alternativa que apresenta corretamente o processo que Maria deve seguir.
Escrever o teste, escrever o código, executar o teste, refatorar e, por fim, integrar o código ao repositório principal.
Escrever o código, executar o teste, escrever o teste, refatorar e, por fim, integrar o código ao repositório principal.
Escrever o teste, executar o teste, escrever o código, executar o teste novamente, refatorar e, por fim, integrar o código ao repositório principal.
Escrever o código, escrever o teste, executar o teste, refatorar e, por fim, integrar o código ao repositório principal.
Escrever o teste, escrever o código, executar o teste, integrar o código ao repositório principal e, por fim, refatorar.
Um engenheiro de software da CODEBA decidiu adotar a abordagem de Desenvolvimento Guiado por Testes (TDD) para criar um novo sistema. Ele começa escrevendo um teste para uma funcionalidade que ainda não foi implementada. Após fazer isso, qual é o próximo passo que esse engenheiro deve seguir no ciclo TDD?
Implementar a funcionalidade e, em seguida, escrever mais testes para outras funcionalidades.
Verificar se o teste falha, indicando que a funcionalidade ainda não foi implementada.
Ignorar os testes e focar apenas na implementação das funcionalidades.
Escrever todos os testes do sistema antes de começar qualquer implementação.
Rodar o teste e garantir que ele passe, mostrando que a funcionalidade foi implementada corretamente.
Segundo o processo de desenvolvimento TDD (Test Driven Development), assinale a alternativa correta.
Desenvolvimento orientado por funcionalidade
Desenvolvimento orientado por Domínios
Desenvolvimento orientados por classes
Desenvolvimento orientado por testes
Projetos possuem necessidades diferentes baseados em sua utilização, implementação e manutenção, desta forma existem diversos modelos de desenvolvimento de software. Um destes modelos é o TDD (Test-Driven Development), um modelo que envolve a criação de testes automatizados antes de escrever o código de produção. Assinale a alternativa correta em relação aos benefícios do TDD.
Desenvolvimento rápido, pois diminui a escrita de código
Rápido desenvolvimento pois não há a necessidade de testar as funções do software
Maior produtividade, código mais confiável, detecção precoce de erros e documentação automática
Diminuição de 30,2% no gerenciamento do projeto e consequentemente redução de quase 50% do código-fonte
Durante o processo de construção de software, a metodologia de Desenvolvimento Orientado a Testes é muito aplicada.
A ordem utilizada na prática do TDD é
escrever a funcionalidade após escrever os testes unitários e, por fim, refatorar o código implementado.
escrever os testes unitários após escrever a funcionalidade e, por fim, refatorar o código implementado.
escrever a funcionalidade após refatorar o código implementado e por fim escrever os testes unitários.
escrever os testes unitários após escrever a funcionalidade e, por fim, escrever os testes de integração.
escrever os testes de integração após escrever a funcionalidade e, por fim, refatorar o código.
No processo de TDD, o código é desenvolvido em grandes blocos de requisitos do usuário. Cada iteração resulta em um novo teste, que faz parte um conjunto de testes de regressão executado no final do processo de integração.
Certo
Errado
Com relação à abordagem Test-Driven Development (TDD), assinale a alternativa correta.
Projetos legados desenvolvidos com a abordagem TDD não precisam ser novamente testados quando seus módulos são reutilizados em outros projetos.
Grande parte das funcionalidades deve ser desenvolvida para, então, ser validada pelas suítes de teste antes da conclusão da sprint.
Novas funcionalidades não devem ser desenvolvidas a menos que todos os testes anteriores sejam bem-sucedidos.
O time de desenvolvimento deve ser responsável pelos testes de release para validação do produto a ser entregue ao final da sprint.
Uma funcionalidade deve estar pronta antes que um teste eficiente seja desenvolvido para ela.
Desenvolvimento Dirigido Por Testes ou Test Driven Development (TDD) é uma das práticas de programação propostas pelo método ágil Extreme Programming. Sobre essa prática, marque a alternativa correta.
No TDD, toda implementação deve ser realizada por dois desenvolvedores trabalhando juntos.
Para aplicar TDD, basta a equipe utilizar frameworks de testes de unidade, como o JUnit, possibilitando a implementação de testes unitários.
O TDD também melhora o design do software em desenvolvimento.
O TDD estabelece que todo o código deve ter seus testes. Com isso, deve-se iniciar com o desenvolvimento do código e logo em seguida testá-lo.
Assinale as seguintes afirmações sobre teste ágil com V (verdadeiro) ou F (falso).
_
(_) A prática do desenvolvimento orientado a testes (TDD, do inglês Test-Driven Development) é voltada a pessoas técnicas, e tem por objetivo atingir uma alta cobertura de código com testes automatizados.
(_) A prática do desenvolvimento orientado a comportamento (BDD, do inglês Behavior-Driven Development) foca na descrição do comportamento do usuário ao usar o sistema, estimulando pessoas técnicas e do negócio a usar uma linguagem de comunicação comum.
(_) O desenvolvimento orientado a testes de aceitação (ATDD, do inglês Acceptance Test-Driven Development) combina BDD e TDD, usando cenários para refinar o entendimento de histórias, guiar o desenvolvimento e automatizar os testes de aceitação.
_
A sequência correta de preenchimento dos parênteses, de cima para baixo, é
V – V – V.
F – V – V.
F – F – V.
V – F – F.
F – F – F.
O TDD (test-driven development), como atividade da XP, é uma forma disciplinada de organizar o código, alterando-o de modo a aprimorar sua estrutura interna, sem que se altere o comportamento externo do software.
Certo
Errado
Você é coordenador da área de desenvolvimento da Controladoria Geral do Estado de Mato Grosso do Sul e deseja implantar o desenvolvimento dirigido a testes (TDD, do inglês Test-Driven Development). Nessa abordagem, o desenvolvimento de programas é feito intercalando testes e desenvolvimento de código. Entretanto, embora deseje essa implantação, você sabe que NÃO corresponde a um dos benefícios ofertados pelo TDD
a cobertura de código.
o teste de regressão.
a depuração simplificada.
a documentação de sistema.
o escopo simplificado.
Desenvolvimento guiado por testes (TDD) é uma técnica de desenvolvimento de software que
incentiva a construção de um alto número de testes de unidades de modo a eliminar a necessidade dos testes de integração e aceitação.
requer que os desenvolvedores escrevam testes de unidades antes da codificação da aplicação.
delimita o tempo máximo que o programador deve empenhar escrevendo testes para manter a produtividade.
testa unidades de ativos efêmeros que devem ser invalidados após o uso, pois repetir testes é um desperdício de tempo.
encoraja os desenvolvedores a escreverem testes apenas para verificação dos bugs detectados pelo usuário final na etapa de aceitação.