sexta-feira, 29 de julho de 2011

TestLink - Novas traduções para o português

Fala galera!

No último dia 11/07 eu havia passado para vocês o novo arquivo de tradução para a versão 1.9.3 do TestLink, com a tradução de todos os novos termos desta versão.

Aproveitando um tempo livre no final de semana, comecei a caçar os erros de português e os termos não padronizados do arquivo de tradução, e então fechei uma nova versão do arquivo.

Além da correção de algumas palavras erradas e correção dos termos "Suítes de Teste" e "Casos de Teste", algumas mudanças significativas podem ser vistas na tela inicial:

a. Onde antes estava escrito apenas "Especificação" no menu principal, agora leia-se "Especificação de Testes", padronizando o termo como está na linguagem padrão.

b. No frame "Especificar Testes", efetuei a padronização do termo "Casos de Teste", pois antes ele tinha 3 definições: Caso(s) de Teste, Caso de Teste e Casos de Teste.

c. Os termos "Procurar" e "Buscar" foram padronizados como "Pesquisar".

d. Algumas descrições de relatórios também foram traduzidas para o português, já que estavam em inglês.

Clique aqui e faça o download do arquivo de traduções (strings.txt).

Aproveitando o embalo, efetuei correções também no arquivo texts.php, que é o responsável por alguns textos estáticos na tela, como por exemplo as instruções para Especificar Testes, Requisitos e etc.

Por sinal, não havia a tradução das instruções ao acessar a opção "Gerar Documento de Especificação de Requisitos" (e que agora chama-se "Imprimir Requisitos").

Clique aqui e faça o download deste arquivo atualizado (texts.php).

ATENÇÃO

Para atualizar o TestLink basta substituir os arquivos strings.txt e texts.php pelos obtidos aqui no blog na pasta /testlink/locale/pt_br/. Não se esqueça de fazer um backup dos arquivos atuais antes.

Peço que me avisem sobre novos erros e termos com a sua tradução incorreta, para que eu possa corrigir para a nova versão.

Os arquivos disponibilizados aqui estarão na versão 1.9.4 do TestLink, ainda sem data para lançamento.

Abraços!

segunda-feira, 25 de julho de 2011

Testes automatizados em dispositivos móveis

Fala galera!

Alguém utiliza ou conhece softwares para Testes Automatizados em Dispositivos Móveis (celulares, PDA´s, Smartphones e etc.)?

Conheço o TestQuest (muito criticado) e encontrei alguns outros na web, mas até agora não obtive resposta no pedido de versões Trial dos mesmos.

Sugiram os nomes nos comentários!

Valeu!

quarta-feira, 20 de julho de 2011

Qualidade de Software - Uma das áreas mais valorizadas de TI segundo a Revista Veja

Dias atrás descobri esta matéria de maio da Revista Veja, onde indicavam a área de Qualidade de Software como uma das 11 mais valorizadas de TI.

A revista descreveu a área assim:

"É o setor responsável por testar e aprovar os programas desenvolvidos por outras equipes e empresas. A tarefa é essencial para garantir a satisfação dos consumidores, que, na prática, lidarão diariamente com os programas.

Salário médio para iniciante: 1.500 reais
Salário médio no topo da carreira: 8.500 reais
"

Veja esta e as demais 10 áreas de TI clicando aqui.

Abraços!

segunda-feira, 11 de julho de 2011

Impressões do TDC 2011 - Parte 2

Fala galera!

Segue agora o meu resumo rápido sobre as palestras do TDC 2011:

1ª Palestra:
A Trilha de Testes teve o seu início com a excelente palestra do Wanderlei Souza da empresa desenvolvedora de games Vostu. A Palestra intitulada "Penetration Testing" abordou os testes de segurança em ambientes web.

A palestra se baseou sobre a aplicação Foundtsone Hacme Books, desenvolvida pela Mcafee, uma plataforma de aprendizagem para o desenvolvimento seguro de sistemas e sites. Wanderlei também citou uma outra aplicação, já citada por mim aqui e chamada Webgoat, desenvolvida pela OWASP.

Wanderlei frisou que o tipo de ataque que mais cresce atualmente é o CSRF (Maiores detalhes aqui), que se aproveita de sessões abertas pelo usuário em diversos tipos de site.

Um outro problema muito comum para a segurança na web são os relatórios de falhas, que acabam por expor muitas informações ao usuário. Em uma demonstração rápida foi possível descobrir quais eram a plataforma, banco de dados, servidor de aplicação e framework através de um relatório de erros de um site. A dica para evitar este tipo de ameaça é limitar ao máximo a quantidade de informações que são exibidas para o usuário caso o site venha a falhar.

Para que o seu site seja mais seguro, é recomendável também sempre validar as entradas, de preferência buscando evitar o ataque através de SQL Injection e XSS.

Wanderlei também mostrou a todos que até a versão 4 do Jboss era possível visualizar o seu arquivo de configuração aberto na web. Este problema só foi corrigido a partir da versão 5. Uma rápida busca no Google e podemos encontrar diversos destes arquivos, inclusive de sites governamentais.

A palestra foi muito aplaudida e elogiada por todos e a sua apresentação está disponível no link abaixo:

Teste de Segurança: Vulnerabilidade de Aplicações Web

2ª Palestra
Em seguida tivemos a palestra da Tatiane Fukuda, do Yahoo!, com o tema "Desmistificando Agile Testing". A palestrante iniciou explicando as diferenças entre os processos tradicionais e os processos ágeis.

Tatiana citou alguns principios do Tester Ágil:

  • Feedback contínuo;
  • Coragem;
  • Simplicidade;
  • Melhoria contínua;
  • Auto-Organização;
  • Foco em pessoas; e outros.

Talvez duas das mais emblemáticas frases ouvidas no TDC tenham vindo desta palestra:

"Todo time (projeto/empresa) é responsável pela Qualidade";

"O escopo é negociável, a qualidade NÃO!"

Para finalizar, Tatiane exibiu como foi desenvolvido o projeto Meme, que eu definiria como uma espécie de Twitter + Facebook desenvolvido pelo Yahoo.

Uma das ferramentas utilizadas para o teste foi o Pyccuracy, desenvolvida por brasileiros em Python sobre a plataforma do Selenium e que permite escrever testes automatizados através de linguagem natural, ou seja, você escreve os testes em português. Vou ver se me aprofundo mais sobre esta ferramenta, pois parece ser bem interessante.

Com a utilização da ferramenta, Tatiane deu algumas dicas de como escrever bons testes automatizados:

  • Auto-explicativos;
  • Foco bem definido
  • Linguagem fácil para todos
  • Módulos reusados

A apresentação está disponível no link abaixo:

Agile Testing

3ª Palestra:
Após o almoço, tivemos a oportunidade de escolher entre 2 palestras. A minha escolhida foi a "Hands On Selenium 2", ao invés da "Fábrica de Teste".

Infelizmente o palestrante Leonardo Galani teve um contratempo na hora do almoço e acabou por se atrasar em quase 30 minutos, assim a palestra foi muito prejudicada.

Ele nos apresentou um projeto rápido escrito no Selenium, e explicou algumas características, porém teve de ser interrompido com o final do tempo para maiores explicações. Recomendo um acesso ao blog do Leonardo, que possuí um bom material.

A apresentação está disponível no link abaixo:

Hands On Selenium 2

4ª Palestra:
Na sequência tivemos a apresentação da Neli Duarte, da IBM, sobre Testes Exploratórios.

Neli começou definindo os testes exploratórios e mostrando uma comparação entre o teste exploratório e o teste ad hoc, que não são a mesma coisa. Um teste exploratório é estruturado e planejado e os bugs detectados foram em decorrência das áreas explorados. Já um teste ad hoc não possui planejamento e não tem uma estrutura e os bugs detectados são por acidente.

Neli então definiu: Todos os testes ad hoc são exploratórios, mas nem todos os testes exploratórios são ad hoc.

A apresentação não mostrou mais novidades sobre o tema e muitas pessoas não gostaram da forma de como os slides foram preparados, já que estavam em inglês (todos os demais em português), com muitas informações e com uma fonte muito pequena, de difícil visualização.

A apresentação está disponível no link abaixo:

Testes Exploratórios

5ª Palestra:
Após o Coffee Break tivemos uma alteração na ordem das palestras, com a presença de José Papo ao invés do José Correia que ficou para o final.

O tema da palestra do Papo foi sobre "Especificação por Exemplos - A Agilidade hiperprodutiva com especificações executáveis".

Já no começo uma polêmica: Teste Unitário não pode ser considerado um teste. Um sistema que tenha passado apenas pela fase dos testes de unidade não pode ser considerado como testado. O teste unitário na verdade é uma forma de melhorar o design da aplicação e não testá-la.

Papo aproveitou para citar algumas máximas da nossa área:

  • "Testar não deve ser a última coisa a ser realizada no projeto";
  • "Qualidade é um processo contínuo e de responsabilidade de todo o time";
  • "É necessário colaboração entre as equipes de teste e desenvolvimento";

Uma outra polêmica foi citar que os "Agileiros", aqueles que colocam o o Agile acima de tudo, acreditam que testes não são necessários e apenas gastam mais tempo do projeto. Por sorte que cada vez mais temos visto que isso é lorota...

Papo citou que Microsoft, Google e Oracle utilizam atualmente 1 testador para cada 1 desenvolvedor, um número ainda bem diferente da realidade das nossa empresas.

Mas a cereja do bolo ainda estava por vir, que era o tema principal da palestra: Especificação por exemplos.

Baseado no livro "Specification by Example" do Iugoslavo Gojko Adzic, e publicado agora em junho, Papo trouxe um conceito novo para a grande maioria do público.

A ideia é simples: O documento de Especificação de Requisitos ao invés de trazer linhas de códigos e regras complexas descritas, traria uma história simples, apoiada por exemplos, que comprovariam como tal regra/requisito deve funcionar. Isto facilita e muito o trabalho dos desenvolvedores e testadores para compreenderem o funcionamento do sistema e principalmente ajudaria os usuários e verificarem se o que está escrito é o mesmo que eles imaginavam e solicitaram. O slide 18 da apresentação exemplifica isto.

Por fim, Papo citou 4 ferramentas para a elaboração de especificações:


Uma demo da ferramenta SpecFlow, utilizada como um plugin para o Visual Studio nos deu a ideia do poder da ferramenta.

A apresentação está disponível no link abaixo:

Especificação por Exemplos - A Agilidade hiperprodutiva com especificações executáveis

6ª Palestra
Para encerrar o ciclo de palestras, era a vez do José Correia, fundador da Iterasys e com mais de 16 anos de TI. O tema da sua palestra era "Automação Rápida de Testes para Web".

Correia também começou com uma polêmica, ao afirmar que "QA" e "Teste" não são a mesma coisa, já que o mercado banalizou os 2 termos. Ele explicou rapidamente que "QA" é aquele envolvido com o processo e que não realiza testes, ao contrário do testador (Em breve vou fazer um post sobre esta polêmcia).

Para que possa haver uma automação de teste rápida, os seguintes gargalos precisam ser resolvidos:

  • Falta de objetivos;
  • Casos de teste superficiais;
  • Mudança nas equipes;
  • Equipe inexperiente;
  • Falta de conhecimento em automação;
  • Ambiente inexistente.

Correia também citou a diferença entre os ambientes, pois quase sempre o ambiente de teste é uma máquina velha e obsoleta, enquanto o ambiente de produção é um servidor de "verdade", parrudo e pronto para tomar porrada. Uma excelente comparação foi mostrar a foto de duas raças de cachorros:

O ambiente de teste foi caracterizado como um Pinscher, pequeno e fraco, enquanto o ambiente de produção era um Doberman, grande e forte.

Segundo Correia, com a virtualização a tendência é que isto mude para melhor, com a adoção do mesmo ambiente de produção para testes.

Ao final da palestra tivemos uma demo da utilização do BadBoy em conjunto com o JMeter.

A apresentação está disponível no link abaixo:

Automação Rápida de Testes para Web

Mesa Redonda de Testes
Ao final das 6 palestras tivemos o convite para comparecer até o auditório para participar da Mesa Redonda de Testes, inspirada na série criada pelo grupo DF Testes.

A "mesa" era composta pelos palestrantes Neli Duarte, José Correia, Tatiane Fukuda e José Papo e contando com a moderação do Elias Nogueira e a ajuda do Leonardo Galani.

Os temas eram:

  • Testar é tão fácil que até a minha mãe testaria
  • Testar sem documentação é possível?
  • Para que testadores se eu faço teste unitário?
  • Testa aí!!!

As discussões foram muito boas e contaram com a presença da platéia, que ao final foi premiada com vouchers e prêmios exclusivos dos patrocinadores!

E assim chegou ao fim a Trilha de Testes do TDC 2011. Avalio como muito positivo o evento. Mais uma vez parabéns ao Elias Nogueira, Jorge Diz e a Globalcode pelo evento. Espero estar presente no TDC 2012.

Segue as fotos disponibilizadas pelo Elias Nogueira em seu blog:

TestLink 1.9.3 - Tradução para o Português

Fala galera!

Trago um post especial para vocês:

O arquivo de tradução (pt_br) atualizado para a versão 1.9.3 do TestLink!

Acabei de subir o bug para a equipe do TestLink (Bug 4655) e este arquivo estará disponível na próxima versão a ser lançada!

Clique aqui e baixe agora o novo arquivo de tradução.

Depois basta colar o arquivo na pasta /locale/pt_BR/ do TestLink. Não se esqueça de fazer um backup da versão anterior antes!

abraços!

sexta-feira, 8 de julho de 2011

Impressões do TDC 2011 - Parte 1

Fala galera!

Estive ontem na Universidade Anhembi Morumbi acompanhando a edição 2011 do TDC (The Developer´s Conference) na Trilha de Testes, muito bem coordenada pelo Elias Nogueira e Jorge Diz.

Antes de falar sobre as palestras, gostaria de parabenizar a Globalcode pelo evento, que foi muito bem organizado (e ainda está sendo, pois acaba no domingo). São 25 trilhas sobre os mais diversos assuntos, com direito a alguns palestrantes internacionais e cobertura via internet, propiciando que muitas pessoas que não puderam vir à São Paulo para o evento pudessem acompanhá-lo.

O evento teve um custo praticamente irrisório (a inscrição nos últimos dias custava apenas R$ 60,00), além de fornecer um combo da Rede Subway, que matou a fome de muita gente. Comparado com outros eventos de grande porte, o seu preço era mais de 10 vezes menor!

Tive o prazer de conhecer pessoalmente o Elias Nogueira, que escreve o Blog Sem Bugs. O Elias é muito gente boa, fez brincadeiras com todos os participantes, além de estar conectado no Twitter durante todo o evento respondendo a galera! Valeu Elias!!!

Ainda estou compilando todas as informações obtidas no evento e assim que eu conseguir o link com as apresentações dos palestrantes, colocarei as minhas impressões aqui no Blog!

Fiquem de olho!

abraços

quarta-feira, 6 de julho de 2011

TestLink apresenta o erro HTTP Error 500.0 - Internal Server Error

Fala pessoal!

Com a utilização do TestLink na "nuvem" (hospedado pela Locaweb) e integrado junto com o JIRA via SOAP, depois de 2 semanas de utilização e a execução de muitos testes (e muitos bugs adicionados), ao visualizar alguns relatórios, o seguinte erro era apresentado:

HTTP Error 500.0 - Internal Server Error - The FastCGI process exceeded configured activity timeout
Após muita pesquisas, tentativas de solução e algumas pulgas atrás da orelha, descobri a causa do problema:

O TestLink estava hospedado em um ambiente Windows na Locaweb, ou seja, utilizando IIS ao invés de Apache. Como tal consulta para a montagem do relatório solicitado demorava mais de 90 segundos, era disparado o erro de timeout e a culpa assim caia em cima do "pobre" TestLink.

Por sorte é possível efetuar a migração de plataforma de maneira rápida na Locaweb e após a migração para Linux (foi necessário fazer um backup/restore da pasta testlink, porém a base de dados permaneceu intacta, mas recomendo o backup de ambos), este problema não ocorreu mais.

A integração com o JIRA via SOAP continua firme e forte e os relatórios solicitados estão sendo visualizados corretamente.

A dica que fica é nunca esquecer de instalar o TestLink em um ambiente Apache, que na maioria dos serviçoes de hospedagem é denominado ambiente Linux.

Aguardem os próximos posts sobre o TestLink.

Abraços.

TDC 2011 - Aí vamos nós!

Amanhã cedo estarei na Universidade Anhembi Morumbi para assistir a Trilha de Testes do TDC 2011.

Muita expectativa em torno das palestras!

Logo depois colocarei algumas impressões aqui no blog!

Até lá, abraços!

terça-feira, 5 de julho de 2011

Versão 1.9.3 do TestLink é lançada!

Pessoal,

Sábado (02/07/11) tivemos o lançamento da mais nova versão do TestLink. A versão 1.9.3 trás algumas melhorias e correções de bugs, mas nada muito diferente das últimas versões. Estamos no aguardo do lançamento da versão 2.0, que promete grandes novidades.

Enquanto esta versão não vem, veja as novidades da nova versão:

Novos Recursos

- Melhoria no recurso "Definir Testes Urgentes";
- Exemplo do arquivo custom.css adicionado;
- Checkbox para decidir se será criado um outro Caso de Teste / Requisito;
- "Visualizar nova versão do Caso de Teste" procura melhorar e oferecer a possibilidade de fazer um DIFF rápido entre 2 versões de casos de teste;
- "Atualização em massa para a última versão do Caso de Teste" procura melhorar e oferecer a possibilidade de fazer um DIFF rápido entre 2 versões de casos de teste;
- Ao escolher a língua pessoal, uma mensagem com a última atualização desta linguagem é exibido;
- Atualização do ExtJS 3.4.0 para suportar o Internet Explorer 9;
- Um link direto pode ser criado para cada versão de requisito;
- Nova coluna "Última Execução" no Relatório "Matriz de Resultado de Teste";

Atualizações de idiomas

- Francês
- Português (Brasil) - de minha autoria
- Chinês (Simplificado)
- Inglês Americano
- Alemão
- Inglês Britânico

Correções de Bugs

- Links internos para requisitos agora suportam versões de requisitos;
- Árvore é atualizada depois de editar um requisito;
- Status das Árvores são guardadas e restauradas com maior confiabilidade;
- Em alguns casos os usuários atribuídos não foram capazes de executar testes;
- Filtragem por status de trabalho no Relatório de "Matriz de Resultado de Teste".

Fonte: TestLink

Os erros de linguagem já estão sendo listados e em breve enviaremos para o pessoal do TeamST efetuar a atualização para a nova versão.

Clique aqui e faça agora o download da versão 1.9.3!

domingo, 3 de julho de 2011

Integração JIRA e TestLink via SOAP

Fala galera!

Semana passada tive a tarefa de integrar o TestLink recém instalado na empresa (Efetuei a sua instalação há 2 semanas) com o JIRA, responsável por controlar todos os incidentes internos, desde bugs em projetos de softwares, até reparos nas mesas e banheiros.

O ambiente a ser integrado possui uma particularidade muito interessante: O TestLink está na "nuvem", instalado em um domínio contratado pela área de Qualidade e hospeadado na Locaweb, enquanto o JIRA está instalado internamente, mas possui uma saída externa, para quem não está fisicamente no ambiente coorporativo.

Devido a restrições da área de infra-estrutura, não foi possível obter em qual servidor o JIRA está instalado, e por ventura as suas demais informações necessárias (nome do banco de dados, usuário e senha).

Neste momento descobri que a integração com o JIRA também é possível via SOAP (Web service) e por sinal é a única integração via SOAP disponível pelo TestLink (pelo menos nos arquivos encontrados na pasta testlink\cfg).

O arquivo responsável por esta integração é o jirasoap.cfg.php, composto pelos seguintes parâmetros (apenas aqueles que devem ser modificados):

/** The Username being used by JIRA logon */
define('BUG_TRACK_USERNAME', 'test');

/** The Password being used by JIRA logon*/
define('BUG_TRACK_PASSWORD', 'test');

/** link of the web server for JIRA*/
define('BUG_TRACK_HREF',"http://localhost:8080/");

/** path of JIRA WSDL */
define('BUG_TRACK_SOAP_HREF', "rpc/soap/jirasoapservice-v2?wsdl");

/** link of the web server for jira ticket*/
define('BUG_TRACK_SHOW_BUG_HREF', "browse/");

/** link of the web server for creating new jira ticket*/
define('BUG_TRACK_ENTER_BUG_HREF',"secure/Dashboard.jspa?os_destination=%2Fsecure%2FCreateIssue%21default.jspa");

Em uma rápida definição, cada campo deve ser preenchido com os seguintes dados:

BUG_TRACK_USERNAME - Usuário criado na base do JIRA e que possua permissão de leitura em todos os projetos. Aconselho a criação de um usuário genérico chamado 'Testlink' ou até mesmo 'guest';

BUG_TRACK_PASSWORD - Senha do usuário acima;

BUG_TRACK_HREF - Endereço de acesso ao Web service (ou de acesso ao JIRA, que no caso pode ser o endereço de IP por onde este é acessado);

BUG_TRACK_SOAP_HREF - Link específico de acesso ao SOAP - Dificilmente modificado;

BUG_TRACK_SHOW_BUG_HREF - Link para acesso aos projetos - Dificilmente modificado;

BUG_TRACK_ENTER_BUG_HREF - Link da página referente a abertura de bugs (Nova pendência).

Com o preenchimento destes campos e a substituição deste arquivo na pasta \cfg, foi necessário alterar o arquivo config.inc.php, na linha 299 (detalhe, estou utilizando a versão 1.9.2 do TestLink), para apontar qual bugtracker seria integrado ao TestLink.

No parâmetro $g_interface_bugs foi incluída a sintaxe 'JIRASOAP'. O arquivo foi salvo e substituído na raiz do Testlink do servidor.

Após isto, a integração TestLink e JIRA foi realizada com sucesso, bastando executar um rápido teste para ver se tudo estava dentro dos conformes.

1. Selecionar um caso de teste para ser executado e marcá-lo como "Com Falha:

Caso de Teste executado como "Com Falha" e o ícone para a inserção do Bug

2. Clicar no Botão "Gerenciamento de Casos":

Popup para a inserção do número do bug cadastrado no JIRA. Também é possível acessar o JIRA através do texto "Acesso ao Bugtracker"

A integração com o JIRA via SOAP foi estabelecida com sucesso e aprendemos mais um pouco de TestLink!

Aguardem novas postagens sobre o TestLink!

abraços!

sexta-feira, 1 de julho de 2011

TDC 2011 - Trilha de Testes

Fala pessoal!

Semana que vem teremos a edição 2011 do TDC!

E na quinta-feira teremos um dia para a Trilha de Testes!

Mais informações aqui.

Estou vendo a viabilidade para participar do evento, que contará com as presenças de José Correia e José Papo (Microsoft)!

O evento começará às 8:30 e irá até as 18:30, na Universidade Anhembi Morumbi, campus Vila Olimpia!

Inscreva-se já pelo link acima!

abs