SlideShare uma empresa Scribd logo
1 de 23
Peguei um
freela, e
agora?
Hello!Me chamo Matheus Costa Vieira
Estou tremendo aqui na frente .
1.
Networking
Troca de informações
2.
Necessidade de ajuda
Proposta de trabalho
“Preciso automatizar os
testes. Poderia nos ajudar
na implementação?”
Será que
aceito?!
Bom dinheiro sempre é bem vindo!
× Apresentação do sócio
× Apresentação do projeto
× Apresentação da “equipe”
Aceitei
Como farei esse trabalho?
Prós
× Javascript
× Selenium
× TDD,BDD, n style
× Coverage reporting
× Extensível
Contras
× Javascript
× Escopo
× Promises
× Pura programação
que ferramenta usar?
Tive que sair e pesquisar
Muitas opções
× Protractor,
× Jest
× Mocha
× Entre outras
AutomaçãoFrameworks Asserção
#language:pt
Funcionalidade: Acessar site do google
@watch
Cenário Esquema de busca pelo “Xolv.io"
Dado que estou na página Google
E digito “Xolv.io"
E clico em buscar
Então devo visualizar “Xolv.io"
"use strict";
module.exports = function() {
this.Then(/^que estou na página Google"$/, () => browse.url(“www.google.com”);
this.Then(/^digito "([^"]*)""$/, (v) => browse.setValue("input[name='q']“, v);
this.Then(/^clico em buscar"$/, () => browse.click(“button[type=submit]”);
this.Then(/^devo visualizar"([^"]*)""$/, (t) => browse.waitForVisible(“a=“, t);
}
Funcionalidade: Acessar site do Google
Cenário: Esquema de busca pelo “Xolv.io"
✔ Dado que estou na página Google
✔ E digito “Xolv.io”
✔ E clico em buscar
✔ Então devo visualizer “Xolv.io”
1 scenarios (1 passed)
4 steps (4 passed)
0m01.007s
“Agora é hora de jogar a
minha black magic!”
"use strict";
module.exports = {
“page”: {
“url”: “www.google.com” ,
“campo de busca”: “input[name='q']” ,
“botão buscar”: “button[type=submit]”,
“lista de resultados”: “a=”
}
}
#language:pt
Funcionalidade: Acessar site do google
@watch
Cenário Esquema de busca pelo “Xolv.io"
Dado que estou na página Google
E digito “Xolv.io"
E clico em buscar
Então devo visualizar “Xolv.io"
E ae
Então
Até Mais e
Obrigado
pelos peixes!Perguntas?
Tenho cartões de visitas comigo 😉
http://matheus-vieira.github.io/

Mais conteúdo relacionado

Semelhante a Peguei um freela e agora?

TDD (Test Driven Development)
TDD (Test Driven Development)TDD (Test Driven Development)
TDD (Test Driven Development)
Felipe Pimentel
 

Semelhante a Peguei um freela e agora? (20)

Como transformar seu código em negócio (e ganhar dinheiro com isso)
Como transformar seu código em negócio (e ganhar dinheiro com isso)Como transformar seu código em negócio (e ganhar dinheiro com isso)
Como transformar seu código em negócio (e ganhar dinheiro com isso)
 
O que vi na QCon 2012 São Paulo
O que vi na QCon 2012 São PauloO que vi na QCon 2012 São Paulo
O que vi na QCon 2012 São Paulo
 
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
 
Automacao de Testes - do zero ao clean code
Automacao de Testes - do zero ao clean codeAutomacao de Testes - do zero ao clean code
Automacao de Testes - do zero ao clean code
 
Elevando o nível das suas pesquisas com o ElasticSearch
Elevando o nível das suas pesquisas com o ElasticSearchElevando o nível das suas pesquisas com o ElasticSearch
Elevando o nível das suas pesquisas com o ElasticSearch
 
Mapa de aprendizado Front End
Mapa de aprendizado Front EndMapa de aprendizado Front End
Mapa de aprendizado Front End
 
Teste de usabilidade
Teste de usabilidadeTeste de usabilidade
Teste de usabilidade
 
Teste de usabilidade
Teste de usabilidadeTeste de usabilidade
Teste de usabilidade
 
Machine learning java ce conference 2012 - fortaleza ce
Machine learning java ce conference 2012 - fortaleza ceMachine learning java ce conference 2012 - fortaleza ce
Machine learning java ce conference 2012 - fortaleza ce
 
Dessign patterns: Resoluções comuns para problemas comuns de POO
Dessign patterns: Resoluções comuns para problemas comuns de POODessign patterns: Resoluções comuns para problemas comuns de POO
Dessign patterns: Resoluções comuns para problemas comuns de POO
 
O mercado de trabalho para a T.I.
O mercado de trabalho para a T.I.O mercado de trabalho para a T.I.
O mercado de trabalho para a T.I.
 
Tdd na veia
Tdd na veiaTdd na veia
Tdd na veia
 
Revolucao Agile - UFSCar
Revolucao Agile - UFSCarRevolucao Agile - UFSCar
Revolucao Agile - UFSCar
 
"Se tornando um Desenvolvedor Java NINJA" - Semana Integrada da PUC Campinas ...
"Se tornando um Desenvolvedor Java NINJA" - Semana Integrada da PUC Campinas ..."Se tornando um Desenvolvedor Java NINJA" - Semana Integrada da PUC Campinas ...
"Se tornando um Desenvolvedor Java NINJA" - Semana Integrada da PUC Campinas ...
 
Workshop Validação #SWCaxiasDoSul 2016
Workshop Validação  #SWCaxiasDoSul 2016Workshop Validação  #SWCaxiasDoSul 2016
Workshop Validação #SWCaxiasDoSul 2016
 
Apresentando o CEJUG e o poder do Java
Apresentando o CEJUG e o poder do JavaApresentando o CEJUG e o poder do Java
Apresentando o CEJUG e o poder do Java
 
TDD (Test Driven Development)
TDD (Test Driven Development)TDD (Test Driven Development)
TDD (Test Driven Development)
 
Programação Estruturada e Orientada a Objetos
Programação Estruturada e Orientada a ObjetosProgramação Estruturada e Orientada a Objetos
Programação Estruturada e Orientada a Objetos
 
Raspagem de Dados com Python
Raspagem de Dados com PythonRaspagem de Dados com Python
Raspagem de Dados com Python
 
Start-ups em grandes empresas
Start-ups em grandes empresasStart-ups em grandes empresas
Start-ups em grandes empresas
 

Peguei um freela e agora?

Notas do Editor

  1. Olá, nos próximos 50 minutos contarei uma certa aventura pela qual passei no final do ano passado
  2. Aqui vai uma apresentação bem sucinta, graduação, traballho
  3. Pós UP, professor de Desenvolvimento Web
  4. Preciso aplicar testes automatizados na aplicação que possuo na minha empresa.
  5. Fim de mês, aniversário de casamento
  6. Por acaso o sócio era da UP também da época de graduação. Nessa reunião foi apresentado sobre o projeto, um CRM altamente configurado, mas o foco não é o projeto Na verdade a equipe seria constituida de uma estagiária, recém contratada, vinda da área de suporte, com quase nenhum conhecimento em programação
  7. Comecei a pensar em que ferramenta poderia utilizar.
  8. Bons relatórios de cobertura
  9. Primeiramente Google
  10. Protractor, Jest, Mocha, Nightwatch WebDriverIO Chimp
  11. Frameworks o que se utiliza para escrever os testes Mocha (rico em recursos), Jasmine (orientado ao comportamento) or CucumberJs (plain language) Selenium para abrir o navegador, executar comandos como clicar, digitar WebdriverIO O executor de teste integrado permite que você escreva comandos assíncronos de forma síncrona para que você não precise se preocupar com race conditions de Promessas. Além disso, tira todo o trabalho de configuração complicado e gerencia a sessão de Selênio para você. Built in Node.js, works for any web application
  12. Com base no que entendi da ferramenta consegui criar uma forma de que a estagiária focasse apenas na escrita de arquivos .feature O máximo de “progamação” ficou em um arquivo JSON de mapeamento “Texto” igual a um css selector
  13. O arquivo .feature continou basicamente igual e ela acabou apenas focando nesta escrita
  14. Comecei a pensar em que ferramenta poderia utilizar.
  15. Comecei a pensar em que ferramenta poderia utilizar.