Qualidade em
Ambientes complexos
Oi!
Eu sou Bárbara Cabral
Estou aqui porque amo testes e qualidade!
Você pode me encontrar no twitter como
@babipcabral
2
Agenda
1. Qualidade desde o início
2. Especificação usando Exemplos
a. Técnicas de Teste
3. Testes Automatizados
4. Fundamentos de Testes Unitários
5. Carreiras em Testes / Qualidade
6. Sugestões
3
1.
Qualidade desde o início
Vamos falar um pouco sobre a origem das demandas….
5
Abordagens de Testes Tradicionais
6
Abordagens de Testes Ágeis
7
Abordagens de Testes Ágeis
2.
Especificação usando Exemplos
Como criar cenários para testes complexos
This is a slide title
■ Here you have a list of items
■ And some text
■ But remember not to overload your
slides with content
Your audience will listen to you or read
the content, but won’t do both.
9
Especificação por Exemplos
Discutir os testes
antes de
desenvolver!
■ Desenvolvimento tem os
Exemplos para se basear
■ Entregas mais assertivas
■ Test Cases Implementados
■ Tempo para testes adicionas
■ Segurança do que foi coberto e
como foi coberto
■ Tester/QA participa desde o início
das discussões
10
Simples de
Manter
A documentação
em um único
lugar,
geralmente com
o código fonte
Sempre
Atualizada
Qualquer
mudança
necessária será
feita apenas nela
Executável
Uso do texto
escrito/cenários
para desenvolver
os testes
automatizados
11
Especificação por Exemplos
Colblorativa
Todos os
envolvidos no
projeto
participam
Esclarecedora
Clara o suficiente para que todos
entendam e venham a consultor
para desenvolver
Exemplos complexos?
Use e abuse de Técnicas de Testes
12
13
Técnicas de Teste
Gray
Black
White Box
14
Na prática - Black Box
TC Autorizador Produto Regra Verificação
1 Representante Guias valor da guia > alçada Deve permitir autorizar
2 Master Guias valor da guia > alçada Não deve permitir autorizar
3 Master Guias valor da guia = alçada Deve permitir autorizar
4 Master Guias valor da guia < alçada Deve permitir autorizar
5 Operador Guias valor da guia > alçada Não deve permitir autorizar
6 Operador Guias valor da guia = alçada Deve permitir autorizar
7 Operador Guias valor da guia < alçada Deve permitir autorizar
15
Na prática - Black Box - Regras
16
Na prática - Black Box: Decision Tables
17
Na Prática - Black Box: State Transition
18
Na Prática - White Box: Multiple Condition
19
Structure Coverage by NASA
20
Como NASA testa as asas de aviões
21
Missões de Teste
3.
Testes Automatizados
Porque automatizar tanto quanto possível é preciso….
Camadas de Testes
23
24
Pirâmide de Testes Web
Unitários
Componente
Integração
Aceitação
25
Testes de Aceitação
Cenário Outline: Busca por vôos inválidos
Quando eu escolho a <cidade_origem>
E escolho a <data_saida>
E escolho a <cidade_destino>
E escolho a <data_retorno>
E eu busco por vôos
Então eu vejo a mensagem de erro “Vôo não encontrado”
Exemplos:
| cidade_origem | data_saida | cidade_destino | data_retorno |
| "Florianópolis" | "02/01/2018" | "São Paulo" | "28/01/2018" |
| "Miami" | "02/01/2018" | "Cairo" | "28/01/2052" |
26
Testes de Aceitação
Cenário Outline: Busca por vôos inválidos
Quando eu escolho a <cidade_origem>
E escolho a <data_saida>
E escolho a <cidade_destino>
E escolho a <data_retorno>
E eu busco por vôos
Então eu vejo a mensagem de erro “Vôo não encontrado”
Exemplos:
| cidade_origem | data_saida | cidade_destino | data_retorno |
| "Florianópolis" | "02/01/2018" | "São Paulo" | "28/01/2018" |
| "Miami" | "02/01/2018" | "Cairo" | "28/01/2052" |
27
Testes de Aceitação: Frameworks
1. Robot Framework, keyword-drive approach for accept tests
2. Selenium, base to the most of accept tests frameworks
3. Concordion, Specification by example (SbE) framework
a. Concordion.NET, acceptance testing in .NET
4. FitNesse, a fork of Fit
5. Cucumber, a BDD acceptance test framework
a. Capybara, acceptance test framework for Ruby
b. Watir, acceptance test framework for Ruby
c. Behat, BDD acceptance framework for PHP
d. Lettuce, BDD acceptance framework for Python
6. CodeceptJS / Cypress.io
7. CucumberJS
a. Mocha, a popular accept test framework based on Javascript and Node.js
b. Protractor, a popular accept test framework for Angular Applications based on
Javascript and Node.js
28
Testes de Integração / Componente
29
Testes Unitários
2.
Fundamentos de Testes Unitários
& mais alguns frameworks de teste
3131
Testes Unitários - Conceitos
32
Exemplo com NUnit
Referência: https://docs.microsoft.com/pt-br/dotnet/core/testing/unit-testing-with-nunit
33
Exemplo com NUnit
Referência: https://docs.microsoft.com/pt-br/dotnet/core/testing/unit-testing-with-nunit
Referência: Event Sequence Unit Testing - Part 134
Exemplo com Eventos
35
Testes Unitários
Ferramentas
- Visual Studio
- Atom
- Sublime, etc
Frameworks
- MSTest/Visual Studio
- NUnit
- xUnit.NET
3.
Carreiras na área de Testes
Dentro do mercado internacional
37
ISTQB
Conceitos / Técnicas
38
■ Certified Associate in Software Quality (CASQ)
■ Certified Software Quality Analyst (CSQA)
■ Certified Manager of Software Quality (CMSQ)
■ Certified Associate in Software Testing (CAST)
■ Certified Software Tester (CSTE)
■ Certified Manager of Software Testing (CMST)
■ Certified Software Project Manager (CSPM)
■ Certified Associate Business Analyst (CABA)
■ Certified Software Business Analyst (CSBA)
■ Certified Software Process Engineer (CSPE)
■ Certified Quantitative Software Process Engineer (CQSPE)
QAI
Conceitos / Técnicas
39
■ Udemy
■ Udacity
■ TreeHouse
■ Coursera
■ Alura
■ Lynda
■ Pluralsight
■ Ninja House (Papito)
■ Escola Talk about Testing (Walmyr)
■ ...
EaD
Cursos on-line
Testes Físicos
PABX & IOT
40
41
PBX Testing
The IP-PBX testing suite is designed to simulate a
number of VoIP terminals, to control mobile terminals
and to verify the functionality of the Supplementary
Services that the Converged Network is able to
provide.
The IP-PBX testing suite is supplied with a powerful
Graphical User Interface that provides the Service
Provider with an easy-to-use suite where to perform
and attend test executions. Scheduling a nightly
unattended testing session is really simple with the
IP-PBX testing suite, as sessions can be easily
programmed to start at a specific date and time of a
selected calendar day. The system automatically
executes the sessions, controlling and avoiding
possible resource conflicts. The following day the tester
can easily analyze results and traces collections of the
executed sessions.
42
PBX Security Testing
43
Benchmarking
■ Empresas Brasileiras de Telecom
□ Dígitro
□ Algar Telecom
□ Dialtech
□ Tecnomafer
■ Empresas que usam os dispositivos
□ Marca do Gateway
□ Marca dos dispositivos
■ Profissionais que usam os dispositivos
□ Marca do Gateway
□ Marca dos dispositivos
Referências
■ Sites
□ QA Global Institute
□ ISTQB.org
□ Ministry Of Testing
□ Software Testing Help
■ Livros
□ Specification By Example
□ Foundations of Software Testing (Rex Black)
□ Agile Testing (Lisa Crispim)
□ Release It! Design and Deploy Software
□
□
44
Thanks!
Dúvidas ou Sugestões?
Você pode me encontrar no twitter @babipcabral e por
email: barbaracabral@gmail.com
45

Khomp testes complexos!

  • 1.
  • 2.
    Oi! Eu sou BárbaraCabral Estou aqui porque amo testes e qualidade! Você pode me encontrar no twitter como @babipcabral 2
  • 3.
    Agenda 1. Qualidade desdeo início 2. Especificação usando Exemplos a. Técnicas de Teste 3. Testes Automatizados 4. Fundamentos de Testes Unitários 5. Carreiras em Testes / Qualidade 6. Sugestões 3
  • 4.
    1. Qualidade desde oinício Vamos falar um pouco sobre a origem das demandas….
  • 5.
  • 6.
  • 7.
  • 8.
    2. Especificação usando Exemplos Comocriar cenários para testes complexos
  • 9.
    This is aslide title ■ Here you have a list of items ■ And some text ■ But remember not to overload your slides with content Your audience will listen to you or read the content, but won’t do both. 9 Especificação por Exemplos
  • 10.
    Discutir os testes antesde desenvolver! ■ Desenvolvimento tem os Exemplos para se basear ■ Entregas mais assertivas ■ Test Cases Implementados ■ Tempo para testes adicionas ■ Segurança do que foi coberto e como foi coberto ■ Tester/QA participa desde o início das discussões 10
  • 11.
    Simples de Manter A documentação emum único lugar, geralmente com o código fonte Sempre Atualizada Qualquer mudança necessária será feita apenas nela Executável Uso do texto escrito/cenários para desenvolver os testes automatizados 11 Especificação por Exemplos Colblorativa Todos os envolvidos no projeto participam Esclarecedora Clara o suficiente para que todos entendam e venham a consultor para desenvolver
  • 12.
    Exemplos complexos? Use eabuse de Técnicas de Testes 12
  • 13.
  • 14.
  • 15.
    TC Autorizador ProdutoRegra Verificação 1 Representante Guias valor da guia > alçada Deve permitir autorizar 2 Master Guias valor da guia > alçada Não deve permitir autorizar 3 Master Guias valor da guia = alçada Deve permitir autorizar 4 Master Guias valor da guia < alçada Deve permitir autorizar 5 Operador Guias valor da guia > alçada Não deve permitir autorizar 6 Operador Guias valor da guia = alçada Deve permitir autorizar 7 Operador Guias valor da guia < alçada Deve permitir autorizar 15 Na prática - Black Box - Regras
  • 16.
    16 Na prática -Black Box: Decision Tables
  • 17.
    17 Na Prática -Black Box: State Transition
  • 18.
    18 Na Prática -White Box: Multiple Condition
  • 19.
  • 20.
    20 Como NASA testaas asas de aviões
  • 21.
  • 22.
    3. Testes Automatizados Porque automatizartanto quanto possível é preciso….
  • 23.
  • 24.
    24 Pirâmide de TestesWeb Unitários Componente Integração Aceitação
  • 25.
    25 Testes de Aceitação CenárioOutline: Busca por vôos inválidos Quando eu escolho a <cidade_origem> E escolho a <data_saida> E escolho a <cidade_destino> E escolho a <data_retorno> E eu busco por vôos Então eu vejo a mensagem de erro “Vôo não encontrado” Exemplos: | cidade_origem | data_saida | cidade_destino | data_retorno | | "Florianópolis" | "02/01/2018" | "São Paulo" | "28/01/2018" | | "Miami" | "02/01/2018" | "Cairo" | "28/01/2052" |
  • 26.
    26 Testes de Aceitação CenárioOutline: Busca por vôos inválidos Quando eu escolho a <cidade_origem> E escolho a <data_saida> E escolho a <cidade_destino> E escolho a <data_retorno> E eu busco por vôos Então eu vejo a mensagem de erro “Vôo não encontrado” Exemplos: | cidade_origem | data_saida | cidade_destino | data_retorno | | "Florianópolis" | "02/01/2018" | "São Paulo" | "28/01/2018" | | "Miami" | "02/01/2018" | "Cairo" | "28/01/2052" |
  • 27.
    27 Testes de Aceitação:Frameworks 1. Robot Framework, keyword-drive approach for accept tests 2. Selenium, base to the most of accept tests frameworks 3. Concordion, Specification by example (SbE) framework a. Concordion.NET, acceptance testing in .NET 4. FitNesse, a fork of Fit 5. Cucumber, a BDD acceptance test framework a. Capybara, acceptance test framework for Ruby b. Watir, acceptance test framework for Ruby c. Behat, BDD acceptance framework for PHP d. Lettuce, BDD acceptance framework for Python 6. CodeceptJS / Cypress.io 7. CucumberJS a. Mocha, a popular accept test framework based on Javascript and Node.js b. Protractor, a popular accept test framework for Angular Applications based on Javascript and Node.js
  • 28.
  • 29.
  • 30.
    2. Fundamentos de TestesUnitários & mais alguns frameworks de teste
  • 31.
  • 32.
    32 Exemplo com NUnit Referência:https://docs.microsoft.com/pt-br/dotnet/core/testing/unit-testing-with-nunit
  • 33.
    33 Exemplo com NUnit Referência:https://docs.microsoft.com/pt-br/dotnet/core/testing/unit-testing-with-nunit
  • 34.
    Referência: Event SequenceUnit Testing - Part 134 Exemplo com Eventos
  • 35.
    35 Testes Unitários Ferramentas - VisualStudio - Atom - Sublime, etc Frameworks - MSTest/Visual Studio - NUnit - xUnit.NET
  • 36.
    3. Carreiras na áreade Testes Dentro do mercado internacional
  • 37.
  • 38.
    38 ■ Certified Associatein Software Quality (CASQ) ■ Certified Software Quality Analyst (CSQA) ■ Certified Manager of Software Quality (CMSQ) ■ Certified Associate in Software Testing (CAST) ■ Certified Software Tester (CSTE) ■ Certified Manager of Software Testing (CMST) ■ Certified Software Project Manager (CSPM) ■ Certified Associate Business Analyst (CABA) ■ Certified Software Business Analyst (CSBA) ■ Certified Software Process Engineer (CSPE) ■ Certified Quantitative Software Process Engineer (CQSPE) QAI Conceitos / Técnicas
  • 39.
    39 ■ Udemy ■ Udacity ■TreeHouse ■ Coursera ■ Alura ■ Lynda ■ Pluralsight ■ Ninja House (Papito) ■ Escola Talk about Testing (Walmyr) ■ ... EaD Cursos on-line
  • 40.
  • 41.
    41 PBX Testing The IP-PBXtesting suite is designed to simulate a number of VoIP terminals, to control mobile terminals and to verify the functionality of the Supplementary Services that the Converged Network is able to provide. The IP-PBX testing suite is supplied with a powerful Graphical User Interface that provides the Service Provider with an easy-to-use suite where to perform and attend test executions. Scheduling a nightly unattended testing session is really simple with the IP-PBX testing suite, as sessions can be easily programmed to start at a specific date and time of a selected calendar day. The system automatically executes the sessions, controlling and avoiding possible resource conflicts. The following day the tester can easily analyze results and traces collections of the executed sessions.
  • 42.
  • 43.
    43 Benchmarking ■ Empresas Brasileirasde Telecom □ Dígitro □ Algar Telecom □ Dialtech □ Tecnomafer ■ Empresas que usam os dispositivos □ Marca do Gateway □ Marca dos dispositivos ■ Profissionais que usam os dispositivos □ Marca do Gateway □ Marca dos dispositivos
  • 44.
    Referências ■ Sites □ QAGlobal Institute □ ISTQB.org □ Ministry Of Testing □ Software Testing Help ■ Livros □ Specification By Example □ Foundations of Software Testing (Rex Black) □ Agile Testing (Lisa Crispim) □ Release It! Design and Deploy Software □ □ 44
  • 45.
    Thanks! Dúvidas ou Sugestões? Vocêpode me encontrar no twitter @babipcabral e por email: barbaracabral@gmail.com 45