Estou lendo o livro Lean Startup de Eric Ries. No inicio que ele fala sobre o método, o autor deixa bem claro que empreender é administrar.
O autor é bem enfático ao expressar que deve ter administração em uma statup, tem empreendedores que despreza a administração tradicional e apenas fazem "just do it". Essa escola acredita gestão é o problema e o caos é a resposta.
Fazendo um paralelo com os testes, em certo momento considerei a gestão de teste (e/ou demandas) como desperdício, que deveria ser opcional. Comecei a agir como se não precisasse se preocupar com o futuro e segui a escola "jus do it".
No meu caso ocorreu alguns problemas:
- Ficavam muitas coisas para testar
- Testava coisas que não precisava
- Erros encontrados não eram priorizados
Entre outras coisas, rapidamente percebi que tinha algo errado.
Na busca por administrar melhor as demandas, encontrei o kanban que é uma ferramenta para evolução de processos. Foi muito melhor do que eu procurava. Além de organizar melhor os testes, todo o fluxo está sendo otimizado.
Evoluindo o processo de teste, conseguimos (até o momento) integrar mais o time, fazendo todos participar do entendimento das demandas e como solucionar o problema com menor esforço e melhores resultados.
Usamos a técnica BDD para entender melhor o problema e automatizar o fluxo principal.
Estou gostando muito do livro e pretendo colocar mais insights que tiver na leitura.
Abraço.
Paulo Mariano.
segunda-feira, 10 de agosto de 2015
terça-feira, 21 de julho de 2015
Quando devo considerar estudar Kanban?
Se você responder sim a umas das perguntas a baixo, existe uma boa chance de se beneficiar com o estudo de Kanban:
Que por acaso é uma recomendação para iniciar o estudo esse livro.
- Você tem se esforçado para divulgar a cultura Agile na sua empresa, sem muito sucesso?
- Você tem usado Agile por algum tempo, porém as melhorias de desempenho ficaram estagnadas?
- Você tem se esforçado para usar práticas ágeis que parece não se encaixar no seu contexto?
- Tem usado o Agile como checklist, mas sem compreender os porquês?
- Sente a necessidade de flexibilidade para que os teste sejam feitos com mais eficiência?
- As prioridades tem causado desperdício?
- Você está em um contexto que não se adapta failmente para os processos de desenvolvimento ágil ?
- Precisa de uma transição gradual da execução em cascata para Agile?
Que por acaso é uma recomendação para iniciar o estudo esse livro.
sexta-feira, 19 de junho de 2015
Zen of Python
Ideias óbvias que acabamos esquecendo de usar:
The Zen of Python, by Tim Peters
Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!
Fonte:
Python 2.7.6 (default, Dec 3 2014, 13:49:35)
[GCC 4.4.6 20120305 (Red Hat 4.4.6-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import this
The Zen of Python, by Tim Peters
Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!
Fonte:
Python 2.7.6 (default, Dec 3 2014, 13:49:35)
[GCC 4.4.6 20120305 (Red Hat 4.4.6-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import this
segunda-feira, 1 de junho de 2015
Agile Testing in Growing Agile
Conheci hoje um livro excelente que está sendo desenvolvido em: https://leanpub.com/AgileTesting/read
Preciso ler e vou comentar algo sobre ele.
Dica de hj.
Preciso ler e vou comentar algo sobre ele.
Dica de hj.
quarta-feira, 8 de abril de 2015
Referência de emulação do Chrome no Selenium WebDriver
Encontrei na documentação do ChromeDriver como usar o painel de emulação.
Fonte: https://sites.google.com/a/chromium.org/chromedriver/mobile-emulation
Requisitos:
Selenium 2.45
ChromeDriver 2.14
Criei um test Junit para testar
A partir dessa referência é possível isolar as configurações para que abra um site com a emulação de alguns dispositivos que deseja suportar.
Acredito que seja possível fazer coisas interessantes para testes responsivos.
Fonte: https://sites.google.com/a/chromium.org/chromedriver/mobile-emulation
Requisitos:
Selenium 2.45
ChromeDriver 2.14
Criei um test Junit para testar
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//http://testeimporta.blogspot.com.br/2015/04/referencia-de-emulacao-do-chrome-no.html | |
//imports | |
import org.openqa.selenium.WebDriver; | |
import org.openqa.selenium.chrome.ChromeDriver; | |
import org.openqa.selenium.chrome.ChromeOptions; | |
import org.openqa.selenium.remote.DesiredCapabilities; | |
import javax.swing.*; | |
import java.util.HashMap; | |
import java.util.Map; | |
//metodo de teste | |
@Test | |
public void testEmulation(){ | |
Map<String, String> mobileEmulation = new HashMap<String, String>(); | |
mobileEmulation.put("deviceName", "Samsung Galaxy Tab"); | |
Map<String, Object> chromeOptions = new HashMap<String, Object>(); | |
chromeOptions.put("mobileEmulation", mobileEmulation); | |
DesiredCapabilities capabilities = DesiredCapabilities.chrome(); | |
capabilities.setCapability(ChromeOptions.CAPABILITY, chromeOptions); | |
WebDriver driver = new ChromeDriver(capabilities); | |
driver.navigate().to("http://www.google.com.br/"); | |
JOptionPane.showMessageDialog(null, "emule"); | |
} |
A partir dessa referência é possível isolar as configurações para que abra um site com a emulação de alguns dispositivos que deseja suportar.
Acredito que seja possível fazer coisas interessantes para testes responsivos.
terça-feira, 7 de abril de 2015
Esquema tático, futebol versus desenvolvimento
Esquema tático de futebol ⚽
Compactação
Triangulação
Contra ataques
Cruzamentos
No desenvolvimento de software
Compactação => kanban swarming
Triangulação => Code review
Contra ataques => Homologação
Cruzamentos => Mapeamento de trade off (adicionar colunas no quadro Kanban)
Compactação
Triangulação
Contra ataques
Cruzamentos
No desenvolvimento de software
Compactação => kanban swarming
Triangulação => Code review
Contra ataques => Homologação
Cruzamentos => Mapeamento de trade off (adicionar colunas no quadro Kanban)
sábado, 7 de março de 2015
Qualidade e a relação com quantidade de trabalho
Foco é um dos elementos principais para ter um trabalho de qualidade.
O método Kanban ajuda a diminuir o trabalho em andamento e como efeito direto traz foco e consequentemente qualidade.
O método Kanban ajuda a diminuir o trabalho em andamento e como efeito direto traz foco e consequentemente qualidade.
quinta-feira, 5 de fevereiro de 2015
Princípio da incerteza de Heisenberg
“Quanto maior o esforço de um lote mais tempo levará para ser feito...” Isso é verdade somente se a eficiência é alta. (geralmente não é!)
Eficiência do fluxo = Touch Time / Lead Time (%)
Lotes grandes, médios e pequenos param em filas igualmente!
Esforço não é determinante para a previsibilidade!
Para um processo com 25% de Eficiência do fluxo, temos umas variabilidade de uma historia de 2 pontos e outra de 12 pontos, isso resulta em 600% de variação, mas no fluxo ficam igualmente esperando na fila e o tempo total até chegar no cliente (lead time) tem variação de 35% entre 29 e 28 dias.
Limitar o trabalho em progresso é importante. Pra que? O sistema de trabalho fica mais previsível e estável. Com eficiência do fluxo estável, terá um sistema previsível.
Cost of Delay A pergunta mais fundamental sobre orçamento e portfólio é aquela menos perguntada: “Quanto dinheiro nós perdemos por mês sem esse projeto/feature?”
Fontes:
http://pt.wikipedia.org/wiki/Princ%C3%ADpio_da_incerteza_de_Heisenberg
http://pt.slideshare.net/rodrigoy/
segunda-feira, 2 de fevereiro de 2015
Links
Boa tarde galera! Segue alguns links sobre testes, vale apena dar uma olhada.
http://context-driven-testing.com/
http://www.geraldmweinberg.com/Site/Home.html
http://www.teatimewithtesters.com/#!magazines/galleryPage
http://www.utest.com/
http://www.satisfice.com/
http://katrinatester.blogspot.co.nz/
http://martinfowler.com/
http://www.softwaretestingclub.com/
http://www.ministryoftesting.com/
http://www.womentesters.com/
http://eviltester.com
http://keeptesting.com.br
http://lazytester.com
https://azevedorafaela.wordpress.com
http://www.thoughtworks.com/insights/software-testing
http://googletesting.blogspot.com.br/
http://www.ministryoftesting.com/
http://www.utest.com/
http://blog.utest.com/
http://eviltester.com
http://www.guru99.com/software-testing.html
http://www.stickyminds.com/
http://www.dextra.com.br/page-objects-padrao-de-projeto-para-organizacao-de-testes-funcionais/
http://pt.slideshare.net/kyrios/especificao-por-meio-de-exemplos-bdd-testes-de-aceitao
http://www.romanpichler.com/blog/10-tips-writing-good-user-stories/
Abraços.
Assinar:
Postagens (Atom)