Agile Testing, por Carolina Borim

35
Agile Testing A Qualidade de Software no Desenvolvimento Agile C a r o l i n a B o r i m

description

Nessa palestra, a intenção é fazer uma descrição temporal da evolução do teste de software até chegarmos no conceito de Agile Testing. Além disso, apresenta-se as características esperadas de um agile tester, bem como ferramentas e metodologias para o aprimoramento da Qualidade na entrega de produtos de software.

Transcript of Agile Testing, por Carolina Borim

Page 1: Agile Testing, por Carolina Borim

Agile TestingA Qualidade de Software no Desenvolvimento Agile

C a r o l i n a B o r i m

Page 2: Agile Testing, por Carolina Borim

Agenda

Quem sou eu? O que é Qualidade? Por que Testar? Uma perspectiva - Waterfall O Manifesto Ágil Uma Nova Perspectiva – Agile Tester O Que Mudou Na Minha Vida? E o Software Livre? Contatos

2

Page 3: Agile Testing, por Carolina Borim

3

Quem sou eu?

Page 4: Agile Testing, por Carolina Borim

4

Page 5: Agile Testing, por Carolina Borim

O QUE É QUALIDADE?

5

Se tratando de Software

Page 6: Agile Testing, por Carolina Borim

O que é qualidade?

● Qualidade de um produto é dada pela diferença entre as características observadas e as características que foram especifcadas.

● Pontos de vista diferentes != diferentes requisitos

● Qualidade não pode ser uma entidade abstrata

● Objetivo concreto

● Conhecer com precisão o objetivo que se pretende alcançar

6

Page 7: Agile Testing, por Carolina Borim

O que é qualidade?

Satisfazer o cliente

Page 8: Agile Testing, por Carolina Borim

Mas basicamente

● Número e severidade de defeitos residuais do processo de testes é aceitável

● O software é entregue dentro do prazo e custos

● Atende às expectativas

● Foi construído de maneira que possa ser mantido de forma efciente

Page 9: Agile Testing, por Carolina Borim

9

Por que testar?Testar software é simples?

Page 10: Agile Testing, por Carolina Borim

Por que testar?

90% dos sistemas são liberados com defeitoMódulos não operam corretamente quando combinados

Programas tão difíceis de usar, que são descartados

Programas que simplesmente param de funcionar

10

Page 11: Agile Testing, por Carolina Borim

O que é testar?

Testar – executar de forma controlada e avaliar o comportamento baseado no especifcado

Quando testes são realizados dentro das melhores práticas, contribui-se também para a melhoria da qualidade e redução de custos

11

Page 12: Agile Testing, por Carolina Borim

Por que testar?

Importância de se investir em testes:

– Reduzir custos

– Ao investir em testes, investimos na prevenção de defeitos

–Validamos se a aplicação está em conformidade com as necessidades e expectativas do cliente

12

Page 13: Agile Testing, por Carolina Borim

Quais as consequências disso?

Maior satisfação do usuário

Maior redução das incertezas que cercam o software

Redução no custo de manutenção em produção

Mais confança no produto

Mais conhecimento do negócio

13

Page 14: Agile Testing, por Carolina Borim

UMA PERSPECTIVA

14

O processo de desenvolvimento tradicional - Waterfall

Page 15: Agile Testing, por Carolina Borim

O Modelo Cascata (Waterfall)

15

Page 16: Agile Testing, por Carolina Borim

16

Page 17: Agile Testing, por Carolina Borim

17

O manifesto ágilSuas principais características

Page 18: Agile Testing, por Carolina Borim

O Manifesto

“Estamos descobrindo maneiras melhores de desenvolver software fazendo-o nós mesmos e ajudando outros a fazê-lo. Através deste trabalho, passamos a valorizar:”

■ Indivíduos e interação entre eles mais que processos e ferramentas

■ Software em funcionamento mais que documentação abrangente

■ Colaboração com o cliente mais que negociação de contratos

■ Responder a mudanças mais que seguir um plano

18

Page 19: Agile Testing, por Carolina Borim

O Manifesto

■ Implementar mudanças de forma mais efciente – documentação viva;

■ Produtos com qualidade elevada – expectativas claras;

■ Menos retrabalho – colaboração;

■ Melhor alinhamento das atividades dos diferentes papéis no projeto – fuxo mais regular.

19

Page 20: Agile Testing, por Carolina Borim

collaboration

20

Page 21: Agile Testing, por Carolina Borim

21

Uma nova perspectivaAgile Tester

Page 22: Agile Testing, por Carolina Borim

Testador Ágil

Testadores ágeis são muitas vezes conhecidos como analistas de qualidade (QAs), engenheiros de software em testes, engenheiros de testes, lideres de qualidade, entre outras varianças.

22

Page 23: Agile Testing, por Carolina Borim

Uma ideia

“Desenvolvimento de software não é uma atividade altamente previsível nem repetitiva, mas sim uma atividade empírica. Agile enfatiza o controle do processo empírico.” – Paulo Caroli.

23

Page 24: Agile Testing, por Carolina Borim

Como trabalham?

Defensor do cliente

Defensor do produto

–Kick – of & Desck check

Trocando sempre de função

Intolerante a falhas

Constante interação com usuário

24

Page 25: Agile Testing, por Carolina Borim

Habilidades

Desenvolvimento de Software – o que e quando automatizar

Senso Crítico – Identifcar o atual nível de qualidade

Foco no usuário – identifcar causas de problemas

Clara comunicação – trabalhar em conjunto com todos os membros do time

Generalista – observar o que testar e quando testar

25

Page 26: Agile Testing, por Carolina Borim

Habilidades

Responsabilidades compartilhadas

Sem papél específco

Foco na entrega de valor

26

Page 27: Agile Testing, por Carolina Borim

Responsabilidade

Não devem ser responsáveis apenas por aferir a qualidade, mas também por ensinar aos demais membros do time sobre a cultura de qualidade e garantir entregas

Lembre-se: qualidade não é algo fabricado ou criado após algumas linhas de código

Lembrar também: Did the right thing & did the thing right?

27

Page 28: Agile Testing, por Carolina Borim

Mas e o tal BDD?

BDD Behaviour Driven Development – reframming do TDD

É implementar uma aplicação a partir da descrição do seu comportamento sob a perspectiva do Stakeholder

Entender o mundo do stakeholder

Escrever software que interessa – que tem valor!

28

Page 29: Agile Testing, por Carolina Borim

Princípios

Enough is enough – o sufciente, adivinhe? É sufciente!

Entregar valor ao stakeholder

Tudo é comportamento – podemos usar sempre o mesmo pensamento e a mesma construção de linguagem para descrever o comportamento. Tanto em nivel de código quanto em nível de aplicação

29

Page 30: Agile Testing, por Carolina Borim

Princípios

“ BDD stories and scenarios are specifcally designed to support this model of working and in particular to be both easy to automate and clearly understandable by their stakeholders “ The R-Spec Book

30

Page 31: Agile Testing, por Carolina Borim

31

O que mudou na minha vida?

E o Software Livre?.

Page 32: Agile Testing, por Carolina Borim

Ferramentas & Tecnologias

32

Cucumber

Junit

Rspec

Selenium WebDriver

Jmetter

Page 33: Agile Testing, por Carolina Borim

Divirta-se!!

33

Page 34: Agile Testing, por Carolina Borim

34

Missões ambiciosasExigem ideias disruptivas

Page 35: Agile Testing, por Carolina Borim

Obrigada!Carolina Borim

[email protected]

Skype: carolinaborimFacebook: Carolina BorimTwitter: @CarolinaBorim