SlideShare uma empresa Scribd logo
Automação de Testes
com Codeception
por Júlio de Lima
@juliodelimas
QA Ninja Conference 2016
por Júlio de Lima
@juliodelimas
Agradecimentos
Angelo, Fernando e Thiagos (Organizadores do evento)
por Júlio de Lima
@juliodelimas
Codeception é um framework criado
para facilitar a automação de testes em
todas as camadas de um software,
escrevendo seguindo o padrão BDD.
http://codeception.com
por Júlio de Lima
@juliodelimas
Ele possui um DSL própria, muito
simples de se compreender.
por Júlio de Lima
@juliodelimas
<?php
$I = new AcceptanceTester($scenario);
$I->am('Administrador de uma loja');
$I->wantTo('gerenciar movimentações');
$I->lookForwardTo('Ver as entradas e saídas de valores');
$I->amOnPage('/');
$I->fillField('usuariologin', 'teste');
$I->fillField('usuariosenha’, ‘123’);
$I->click('Entrar');
$I->click('Movimentações');
$I->click('Nova movimentação');
$I->selectOption("select", "Entrada");
$I->fillField('movimentacaovalor', '500,00');
$I->fillField('movimentacaoitens', 'Almoçar');
$I->click('Gravar');
$I->see('Sucesso ao inserir a movimentação');
?>
por Júlio de Lima
@juliodelimas
Outros frameworks que poderiam
ser usados no lugar do Codeception:
por Júlio de Lima
@juliodelimas
PHPUnit
"http://localhost:8888/qaninjaconf/api"]
por Júlio de Lima
@juliodelimas
PHPUnit com Guzzle
por Júlio de Lima
@juliodelimas
PHPUnit com WebDriver
$this->driver->get("http://localhost:8888/qaninjaconf/web");
por Júlio de Lima
@juliodelimas
#partiuCode ;)
bit.ly/PalestraCodeceptionQANinjaConf
Júlio de Lima
@juliodelimas
iam@juliodelima.com.br
medium.com/juliodelimas
bit.ly/palestraSobreCarreirasQANinja
Alguma dúvida?

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

[ScrumDay2020] A evolução da responsabilidade em testes
[ScrumDay2020] A evolução da responsabilidade em testes[ScrumDay2020] A evolução da responsabilidade em testes
[ScrumDay2020] A evolução da responsabilidade em testes
 
[38º GURU SP] Automação de Testes Web em Ruby com Cucumber e Webdriver
[38º GURU SP] Automação de Testes Web em Ruby com Cucumber e Webdriver[38º GURU SP] Automação de Testes Web em Ruby com Cucumber e Webdriver
[38º GURU SP] Automação de Testes Web em Ruby com Cucumber e Webdriver
 
Palestra sobre Automação de Testes com Rest-Assured
Palestra sobre Automação de Testes com Rest-AssuredPalestra sobre Automação de Testes com Rest-Assured
Palestra sobre Automação de Testes com Rest-Assured
 
Caipira agil automacao front end selenium
Caipira agil automacao front end seleniumCaipira agil automacao front end selenium
Caipira agil automacao front end selenium
 
Testes para dispositivos móveis
Testes para dispositivos móveisTestes para dispositivos móveis
Testes para dispositivos móveis
 
Teste de performance na nuvem com JMeter e BlazeMeter TDC2014
Teste de performance na nuvem com JMeter e BlazeMeter TDC2014Teste de performance na nuvem com JMeter e BlazeMeter TDC2014
Teste de performance na nuvem com JMeter e BlazeMeter TDC2014
 
Agile Testing - entregando valor do início a fim
Agile Testing - entregando valor do início a fimAgile Testing - entregando valor do início a fim
Agile Testing - entregando valor do início a fim
 
DEV-OPS para teste de software
DEV-OPS para teste de softwareDEV-OPS para teste de software
DEV-OPS para teste de software
 
Testes performance nuvem com j meter e blazemeter
Testes performance nuvem com j meter e blazemeterTestes performance nuvem com j meter e blazemeter
Testes performance nuvem com j meter e blazemeter
 
Agile testing
Agile testingAgile testing
Agile testing
 
Teste software metodos metodologia ageis agil agile testing
Teste software metodos metodologia ageis agil agile testingTeste software metodos metodologia ageis agil agile testing
Teste software metodos metodologia ageis agil agile testing
 
Perspectivas em teste de software
Perspectivas em teste de softwarePerspectivas em teste de software
Perspectivas em teste de software
 
Medindo a performance de aplicações web com JMeter
Medindo a performance de aplicações web com JMeterMedindo a performance de aplicações web com JMeter
Medindo a performance de aplicações web com JMeter
 
Nunca foi tao facil testar
Nunca foi tao facil testarNunca foi tao facil testar
Nunca foi tao facil testar
 
Palestra sobre automação de testes em APIs Rest com Rest-Assured
Palestra sobre automação de testes em APIs Rest com Rest-AssuredPalestra sobre automação de testes em APIs Rest com Rest-Assured
Palestra sobre automação de testes em APIs Rest com Rest-Assured
 
Juntando para multiplicar
Juntando para multiplicarJuntando para multiplicar
Juntando para multiplicar
 
Testes de Performance na Nuvem com JMeter e Blazemeter
Testes de Performance na Nuvem com JMeter e BlazemeterTestes de Performance na Nuvem com JMeter e Blazemeter
Testes de Performance na Nuvem com JMeter e Blazemeter
 
Como integrar um Agile Tester no seu time
Como integrar um Agile Tester no seu timeComo integrar um Agile Tester no seu time
Como integrar um Agile Tester no seu time
 
Teste performance carga stress jmeter
Teste performance carga stress jmeterTeste performance carga stress jmeter
Teste performance carga stress jmeter
 
Como testar aplicativos ios e android
Como testar aplicativos ios e androidComo testar aplicativos ios e android
Como testar aplicativos ios e android
 

Destaque

Presentation1 copy
Presentation1   copyPresentation1   copy
Presentation1 copy
Fahra Dumont
 
Pokemon go s eccio peridosime asier, joan i bilal
Pokemon go s eccio peridosime asier, joan i bilalPokemon go s eccio peridosime asier, joan i bilal
Pokemon go s eccio peridosime asier, joan i bilal
jvidalialcover
 

Destaque (20)

DevOps pela visão de QA
DevOps pela visão de QADevOps pela visão de QA
DevOps pela visão de QA
 
Pre Renovation Handbook
Pre Renovation HandbookPre Renovation Handbook
Pre Renovation Handbook
 
Next library
Next libraryNext library
Next library
 
Petits mestres
Petits mestresPetits mestres
Petits mestres
 
Caracterizacion del caribe
Caracterizacion del caribeCaracterizacion del caribe
Caracterizacion del caribe
 
Comandos
ComandosComandos
Comandos
 
Que es el sena
Que es el senaQue es el sena
Que es el sena
 
DevQA | Da zona de conforto ao comprometimento com a qualidade
DevQA | Da zona de conforto ao comprometimento com a qualidadeDevQA | Da zona de conforto ao comprometimento com a qualidade
DevQA | Da zona de conforto ao comprometimento com a qualidade
 
Presentation1 copy
Presentation1   copyPresentation1   copy
Presentation1 copy
 
Pokemon go s eccio peridosime asier, joan i bilal
Pokemon go s eccio peridosime asier, joan i bilalPokemon go s eccio peridosime asier, joan i bilal
Pokemon go s eccio peridosime asier, joan i bilal
 
Dental Nursing Training and Qualifications - QCF's or Apprenticeships
Dental Nursing Training and Qualifications - QCF's or ApprenticeshipsDental Nursing Training and Qualifications - QCF's or Apprenticeships
Dental Nursing Training and Qualifications - QCF's or Apprenticeships
 
Mi biografia koni
Mi biografia koniMi biografia koni
Mi biografia koni
 
Entrevista la por. na lydia, irene i giuliana
Entrevista la por. na lydia, irene i giulianaEntrevista la por. na lydia, irene i giuliana
Entrevista la por. na lydia, irene i giuliana
 
Lightning Talk Session - Connecting Altmetric (K. Capretta)
Lightning Talk Session - Connecting Altmetric (K. Capretta)Lightning Talk Session - Connecting Altmetric (K. Capretta)
Lightning Talk Session - Connecting Altmetric (K. Capretta)
 
ứNg dụng kỹ thuật số trong labo phr (secured) 160118 5 pm
ứNg dụng kỹ thuật số trong labo phr (secured) 160118 5 pmứNg dụng kỹ thuật số trong labo phr (secured) 160118 5 pm
ứNg dụng kỹ thuật số trong labo phr (secured) 160118 5 pm
 
DevQA - Da zona de conforto ao comprometimento com a Qualidade
DevQA - Da zona de conforto ao comprometimento com a QualidadeDevQA - Da zona de conforto ao comprometimento com a Qualidade
DevQA - Da zona de conforto ao comprometimento com a Qualidade
 
Quan ly dien tu trong labo phr (final)
Quan ly dien tu trong labo phr (final)Quan ly dien tu trong labo phr (final)
Quan ly dien tu trong labo phr (final)
 
Visual Merchandising - Marketing Research
Visual Merchandising - Marketing ResearchVisual Merchandising - Marketing Research
Visual Merchandising - Marketing Research
 
Immediate dentures/ dental crown & bridge courses
Immediate dentures/ dental crown & bridge coursesImmediate dentures/ dental crown & bridge courses
Immediate dentures/ dental crown & bridge courses
 
Hàm giữ khoảng
Hàm giữ khoảng Hàm giữ khoảng
Hàm giữ khoảng
 

Semelhante a [QANinjaConference] Automação de Testes com Codeception

Adianti Framework PHPConf 2013
Adianti Framework PHPConf 2013Adianti Framework PHPConf 2013
Adianti Framework PHPConf 2013
Pablo Dall'Oglio
 
Introdução ao Smarty
Introdução ao SmartyIntrodução ao Smarty
Introdução ao Smarty
Nelson Gomes
 

Semelhante a [QANinjaConference] Automação de Testes com Codeception (20)

Demoiselle Behave - Parte 1
Demoiselle Behave - Parte 1Demoiselle Behave - Parte 1
Demoiselle Behave - Parte 1
 
Seu Cliente no Controle! Testes ágeis
Seu Cliente no Controle! Testes ágeisSeu Cliente no Controle! Testes ágeis
Seu Cliente no Controle! Testes ágeis
 
Segurança Web com PHP5
Segurança Web com PHP5Segurança Web com PHP5
Segurança Web com PHP5
 
Programando para programadores: Desafios na evolução de um Framework
Programando para programadores: Desafios na evolução de um FrameworkProgramando para programadores: Desafios na evolução de um Framework
Programando para programadores: Desafios na evolução de um Framework
 
InterCon 2017 - Engenharia de segurança web: Proteja todas as camadas de seu ...
InterCon 2017 - Engenharia de segurança web: Proteja todas as camadas de seu ...InterCon 2017 - Engenharia de segurança web: Proteja todas as camadas de seu ...
InterCon 2017 - Engenharia de segurança web: Proteja todas as camadas de seu ...
 
Adianti Framework PHPConf 2013
Adianti Framework PHPConf 2013Adianti Framework PHPConf 2013
Adianti Framework PHPConf 2013
 
Programação Orientada a Testes
Programação Orientada a TestesProgramação Orientada a Testes
Programação Orientada a Testes
 
Design for change: Fatores que influenciam na longevidade de um Software PHP
Design for change: Fatores que influenciam na longevidade de um Software PHPDesign for change: Fatores que influenciam na longevidade de um Software PHP
Design for change: Fatores que influenciam na longevidade de um Software PHP
 
Desenvolvimento ágil com jQuery Mobile
Desenvolvimento ágil com jQuery MobileDesenvolvimento ágil com jQuery Mobile
Desenvolvimento ágil com jQuery Mobile
 
Design Patterns com PHP
Design Patterns com PHPDesign Patterns com PHP
Design Patterns com PHP
 
TDC2018SP | Trilha Arq PHP - Seguranca de aplicacoes web com o uso de Boas pr...
TDC2018SP | Trilha Arq PHP - Seguranca de aplicacoes web com o uso de Boas pr...TDC2018SP | Trilha Arq PHP - Seguranca de aplicacoes web com o uso de Boas pr...
TDC2018SP | Trilha Arq PHP - Seguranca de aplicacoes web com o uso de Boas pr...
 
04_Introducao_JavaScript.pdf
04_Introducao_JavaScript.pdf04_Introducao_JavaScript.pdf
04_Introducao_JavaScript.pdf
 
MS Enterprise Library
MS Enterprise LibraryMS Enterprise Library
MS Enterprise Library
 
Escrevendo códigos php seguros
Escrevendo códigos php segurosEscrevendo códigos php seguros
Escrevendo códigos php seguros
 
SICJUR - Sistema de Controle Jurídico
SICJUR - Sistema de Controle JurídicoSICJUR - Sistema de Controle Jurídico
SICJUR - Sistema de Controle Jurídico
 
Python 08
Python 08Python 08
Python 08
 
Depurando aplicações PHP like a BOSS
Depurando aplicações PHP like a BOSSDepurando aplicações PHP like a BOSS
Depurando aplicações PHP like a BOSS
 
Todas as abordagens de testes dentro do ágil
Todas as abordagens de testes dentro do ágilTodas as abordagens de testes dentro do ágil
Todas as abordagens de testes dentro do ágil
 
Strider CD - Deploy Contínuo com JavaScript
Strider CD -  Deploy Contínuo com JavaScriptStrider CD -  Deploy Contínuo com JavaScript
Strider CD - Deploy Contínuo com JavaScript
 
Introdução ao Smarty
Introdução ao SmartyIntrodução ao Smarty
Introdução ao Smarty
 

Mais de Júlio de Lima

Mais de Júlio de Lima (20)

[ATC2021] Distribuição de Testes em Diferentes Camadas
[ATC2021] Distribuição de Testes em Diferentes Camadas[ATC2021] Distribuição de Testes em Diferentes Camadas
[ATC2021] Distribuição de Testes em Diferentes Camadas
 
ALTER FACE Test Heuristic
ALTER FACE Test HeuristicALTER FACE Test Heuristic
ALTER FACE Test Heuristic
 
Reducing the scope of load test analysis (STAREast 2020)
Reducing the scope of load test analysis (STAREast 2020)Reducing the scope of load test analysis (STAREast 2020)
Reducing the scope of load test analysis (STAREast 2020)
 
[TDC2019] Inteligência Artificial e Testes in a Nutshell
[TDC2019] Inteligência Artificial e Testes  in a Nutshell[TDC2019] Inteligência Artificial e Testes  in a Nutshell
[TDC2019] Inteligência Artificial e Testes in a Nutshell
 
[MoT SP #1] PRISMA para Testes Baseados em Risco
[MoT SP #1] PRISMA para Testes Baseados em Risco[MoT SP #1] PRISMA para Testes Baseados em Risco
[MoT SP #1] PRISMA para Testes Baseados em Risco
 
[DevelopersBR-2018] Testes de performance usando a nuvem
[DevelopersBR-2018] Testes de performance usando a nuvem[DevelopersBR-2018] Testes de performance usando a nuvem
[DevelopersBR-2018] Testes de performance usando a nuvem
 
[7Masters Aug, 2018] Escolhas durante automação de testes de API
[7Masters Aug, 2018] Escolhas durante automação de testes de API[7Masters Aug, 2018] Escolhas durante automação de testes de API
[7Masters Aug, 2018] Escolhas durante automação de testes de API
 
[Front in Sampa 2018] Desenvolvendo como QAs
[Front in Sampa 2018] Desenvolvendo como QAs[Front in Sampa 2018] Desenvolvendo como QAs
[Front in Sampa 2018] Desenvolvendo como QAs
 
[QANinjaConf2017] Testes de Regressão Visual com Galen Framework
[QANinjaConf2017] Testes de Regressão Visual com Galen Framework[QANinjaConf2017] Testes de Regressão Visual com Galen Framework
[QANinjaConf2017] Testes de Regressão Visual com Galen Framework
 
[PHPConference 2016] Criando Mocks com Prophecy
[PHPConference 2016] Criando Mocks com Prophecy[PHPConference 2016] Criando Mocks com Prophecy
[PHPConference 2016] Criando Mocks com Prophecy
 
[QANinjaConference] Carreira em Testes: Ainda vale a pena?
[QANinjaConference] Carreira em Testes: Ainda vale a pena?[QANinjaConference] Carreira em Testes: Ainda vale a pena?
[QANinjaConference] Carreira em Testes: Ainda vale a pena?
 
[TDC2016] Ruby in Tests: Automatizando testes de Unidade, API e GUI (Web)
[TDC2016] Ruby in Tests: Automatizando testes de Unidade, API e GUI (Web)[TDC2016] Ruby in Tests: Automatizando testes de Unidade, API e GUI (Web)
[TDC2016] Ruby in Tests: Automatizando testes de Unidade, API e GUI (Web)
 
[UNIP2015] Testando a Performance de Aplicações Web com JMeter
[UNIP2015] Testando a Performance de Aplicações Web com JMeter[UNIP2015] Testando a Performance de Aplicações Web com JMeter
[UNIP2015] Testando a Performance de Aplicações Web com JMeter
 
[TICNOVA2015] Palestra sobre Automação de Testes
[TICNOVA2015] Palestra sobre Automação de Testes[TICNOVA2015] Palestra sobre Automação de Testes
[TICNOVA2015] Palestra sobre Automação de Testes
 
TDC2015: Testes em APIs REST com Rest-Assured
TDC2015: Testes em APIs REST com Rest-AssuredTDC2015: Testes em APIs REST com Rest-Assured
TDC2015: Testes em APIs REST com Rest-Assured
 
Introdução à Automação de Testes Funcionais (IPASGO, Goiânia)
Introdução à Automação de Testes Funcionais (IPASGO, Goiânia)Introdução à Automação de Testes Funcionais (IPASGO, Goiânia)
Introdução à Automação de Testes Funcionais (IPASGO, Goiânia)
 
Palestra Juntando para Multiplicar
Palestra Juntando para MultiplicarPalestra Juntando para Multiplicar
Palestra Juntando para Multiplicar
 
Faculdade Pitagoras 2014: Palestra sobre Fundamentos e Carreira em Teste de S...
Faculdade Pitagoras 2014: Palestra sobre Fundamentos e Carreira em Teste de S...Faculdade Pitagoras 2014: Palestra sobre Fundamentos e Carreira em Teste de S...
Faculdade Pitagoras 2014: Palestra sobre Fundamentos e Carreira em Teste de S...
 
13º É dia de Java: Automação de Testes Funcionais com Selenium Web driver
13º É dia de Java: Automação de Testes Funcionais com Selenium Web driver13º É dia de Java: Automação de Testes Funcionais com Selenium Web driver
13º É dia de Java: Automação de Testes Funcionais com Selenium Web driver
 
Testes em WebServices: Conceitos e Ferramentas
Testes em WebServices: Conceitos e FerramentasTestes em WebServices: Conceitos e Ferramentas
Testes em WebServices: Conceitos e Ferramentas
 

[QANinjaConference] Automação de Testes com Codeception

  • 1. Automação de Testes com Codeception por Júlio de Lima @juliodelimas QA Ninja Conference 2016
  • 2. por Júlio de Lima @juliodelimas Agradecimentos Angelo, Fernando e Thiagos (Organizadores do evento)
  • 3. por Júlio de Lima @juliodelimas Codeception é um framework criado para facilitar a automação de testes em todas as camadas de um software, escrevendo seguindo o padrão BDD. http://codeception.com
  • 4. por Júlio de Lima @juliodelimas Ele possui um DSL própria, muito simples de se compreender.
  • 5. por Júlio de Lima @juliodelimas <?php $I = new AcceptanceTester($scenario); $I->am('Administrador de uma loja'); $I->wantTo('gerenciar movimentações'); $I->lookForwardTo('Ver as entradas e saídas de valores'); $I->amOnPage('/'); $I->fillField('usuariologin', 'teste'); $I->fillField('usuariosenha’, ‘123’); $I->click('Entrar'); $I->click('Movimentações'); $I->click('Nova movimentação'); $I->selectOption("select", "Entrada"); $I->fillField('movimentacaovalor', '500,00'); $I->fillField('movimentacaoitens', 'Almoçar'); $I->click('Gravar'); $I->see('Sucesso ao inserir a movimentação'); ?>
  • 6. por Júlio de Lima @juliodelimas Outros frameworks que poderiam ser usados no lugar do Codeception:
  • 7. por Júlio de Lima @juliodelimas PHPUnit
  • 8. "http://localhost:8888/qaninjaconf/api"] por Júlio de Lima @juliodelimas PHPUnit com Guzzle
  • 9. por Júlio de Lima @juliodelimas PHPUnit com WebDriver $this->driver->get("http://localhost:8888/qaninjaconf/web");
  • 10. por Júlio de Lima @juliodelimas #partiuCode ;) bit.ly/PalestraCodeceptionQANinjaConf