Portifólio de Cursos

Oi pessoal,

Se você tem interesse em realizar aulas particulares nos seguintes temas, por favor, me procure no e-mail ciclosw@gmail.com!

Garanto que estou montando um material bem especial para vocês. 🙂

 

======
>> Curso Prático de Selenium IDE

>> Curso Prático de Selenium WebDriver com Java e TestNG

>> Curso Prático de Selenium WebDriver com C# e SpecFlow

>> Curso Prático de Selenium WebDriver com Ruby e Cucumber

===
>> Introdução ao Java
>> Introdução ao C#
>> Introdução ao Ruby

===
>> Controle de Versão com SVN Tortoise
>> Controle de Versão com Git
===
>> Testes Unitários com JUnit + Mockito
>> Testes Unitários com NUnit + Moq
>> Testes Unitários com Ruby + RSpec + Capybara

===
>> Conceitos de Testes (explicando o Paradigma de Testes da Google)
>> Planejamento de Testes (com Trello)
>> Aplicando Testes Guiados a Sessão (com TestLink)
>> Especificando Testes por Exemplos (BDD)

 

Anúncios

Palestra no LinguÁgil 2016

Oi pessoal,

Estou de volta e desta vez com uma novidade. Fiz uma palestra recentemente em um evento super importante de TI para a Bahia, o LinguÁgil. Na palestra falei sobre testes: a necessidade de realizar teste de software; a realidade do nosso mercado; o processo de testes padrão; e uma abordagem ágil, o SBTM.

Confiram os dados do evento acessando este link!
A minha apresentação está disponível aqui!

No final de abril tem mais, irei palestrar na faculdade Unijorge, unidade Comércio, no evento GDG Tech Tour #2. Fiquem ligados!

Sistemas autonômicos: O que o futuro em TI nos reserva

Hoje temos a disposição inúmeras ferramentas e linguagens de programação que nos permitem construir sistemas voltados à gestão de recursos do mundo físico. Os sistemas computacionais embarcados além de apoiarem diversas atividades do nosso dia, de forma que percebemos: cadastro de dados para a consulta médica, uso do internet banking, etc.; nos rodeiam de outras tantas que não observamos: veículos, eletrodomésticos, etc.  A esta última condição damos o nome de ubiquidade, que é fazer uso de tecnologias em nossas atividades de forma tão natural, que não atentamos a estes acessórios.

O que acontece é que, a cada vez que um sistema se comunica com outro, o nível de complexidade desta relação aumenta os cuidados que precisam estar envolvidos em ambos os lados. E aí estão inseridos esforços em construir e mais ainda em manter tais funcionalidades. Pelo ritmo em que vivemos, essa integração tende a crescer exponencialmente, pois estamos fazendo uso de diversas ferramentas integradas para que desta forma consigamos gerir várias rotinas de nossas vidas: hora de acordar, hora de tomar água, quantos quilômetros corremos, qual o menor caminho para chegar ao trabalho, qual o bar mais badalado ou bem aceito da cidade, entre outras.

O sistemas ubíquos são uma modalidade dos sistemas autonômicos, que são aqueles sistemas que possuem a responsabilidade de manterem a si próprios. Dentre os sistemas autonômicos mais pesquisados no momento, estão os sistemas self-organizing, aqueles que não conhecem a si próprios: mapas e componentes, mas possuem a capacidade de manterem-se. Eles se baseiam nas funções biológicas da natureza e são voltados à computação de alta performance, pois devem atuar em cenários altamente dinâmicos.

Um exemplo da aplicação de sistemas computacionais self-organizing é a implementação de um sistema para coordenar um grupo de robôs para que explorem certo ambiente e tracem sua cartografia. Neste caso, o sistema seria projetado para que os robôs utilizassem suas interações locais para repelirem-se mutuamente e desta forma conseguir explorar o maior espaço físico possível deste ambiente.

Como projetá-los?

Características como abertura ao acoplamento de novos componentes (openness), escalabilidade e reconfiguração dinâmica passam então a ser necessárias nos novos sistemas computacionais projetados. A possibilidade de trabalhar em ambiente imprevisível torna-se mais um aspecto desejado. O seu mecanismo demanda a definição de uma metodologia própria. Metodologias mais genéricas podem ser adaptadas ao integradas a este propósito.

Como implementá-los?

Os aspectos de autonomia dos agentes e emergência do sistema trazem desafios à implementação dos sistemas auto-organizáveis. O desenvolvimento dos sistemas deste tipo deve ter atenção de três visões distintas: uso do middleware adequado, arquitetura bem definida e emprego dos padrões de projeto voltados à auto-gestão de componentes.

Mas como testá-los?
O grande desafia em testar os sistemas self-organizing é que eles ainda precisam de um processo de garantia da qualidade adequado que lhes ofereça suporte. Faz-se necessário criar um método eficaz e prático capaz de antecipar e verificar o comportamento emergente e impactos. A sua característica de imprevisibilidade e a autonomia dos seus componentes são outros fatores que dificultam a realização de testes adequados aos sistemas auto-organizáveis.

Reuniao_Diaria

Se interessou pelo tema? Tem ideias e sugestões a respeito? Entre em contato para discutirmos. Vide página de apresentação

Algumas aplicações para a ferramenta Selenium IDE

big-logoA ferramenta Selenium IDE é um plugin desenvolvido para o navegador Firefox. Sua principal função é gravar e executar scripts automatizados de testes funcionais. Ela atualmente apresenta também a possibilidade de edição destes scripts em linguagens de programação como: Java, Ruby, C#, Python e JavaScript.

Em um passado recente, período entre 2007 e 2012, seu uso foi difundido nas empresas que produzem software do Brasil. Isso impulsionou uso de automatização dos testes como meio de promover e facilitar a regressão na manutenção dos sistemas-produto e inclusive motivou estudos a respeito das atividades do testador, neste contexto.

Recentemente, diversas fontes têm apontado a ferramenta Selenium IDE de uso não recomendado, apesar de sua evolução. O discurso comum é de que ela enrijece a automação e por isso provoca a constante necessidade de revisão dos scripts gerados. Ela também apresenta limitações quanto ao: compatibilidade (gravação restrita ao Firefox, incompatível com algumas versões), integração aos scripts automáticos de páginas web (ex.: AJAX, JavaScript) e interação com as janelas do sistema operacional (não oferece suporte).

No entanto, ainda hoje, a ferramenta Selenium IDE é capaz de suprir automação de testes funcionais em ambientes onde:

  • Produto de tecnologia simples ou escopo muito pequeno (custo x benefício);
  • Os processos ou ambiente e de desenvolvimento do software sejam muito rígidos;
  • Sistemas Web com forte integração ou percentual considerável de funções legadas;
  • Ambiente operacional e de suporte imutável;
  • Equipe técnica sem skill de programação e sem possibilidade de formação.

Ela pode ser utilizada para:

  • Criar cenários de teste para sistemas legados;
  • Executar testes de regressão em sistemas de projetos interativos/incrementais;
  • Criar massa de dados para testes via sistema;
  • Criar scripts para customização no WebDriver.

Este última opção já foi aplicada em um dos projetos dos quais participei. Posso dizer que em um ambiente sem suporte a testes preventivos, de sistema legado e altamente complexo, onde a equipe de testes não detinha acesso à base de dados. A criação de massa de dados era um gargalo para as entregas realizadas pela equipe de testes. Assim, a estratégia de criar massa de dados de testes via script automatizado com o Selenium IDE, deu super certo.

>>Conheça um pouco mais sobre a ferramenta e como utilizá-la:
O que é – (Inglês Português)
Introdução ao Selenium IDE – Slides
Como instalar e usar o Selenium IDE
Minicurso Selenium

1º Encontro de Testers de Salvador

O Grupo Teste de Software Salvador está promovendo o 1º Encontro de Testers de Salvador. Integrantes do grupo responderam a um questionário para promover o 1º Encontro de Testers de Salvador/BA.

Eles decidiram que:
  • O espaço deve ser virtual – Hangout, Skype, etc.
  • O formato deve ser discursivo, onde todos os participantes devem interagir para expor assuntos e ideias;
  • O evento deve estar aberto a todos os profissionais de TI, interessados pelo tema de testes de software;
  • A duração deve ser aberta, com o mínimo de 30 minutos;
  •  Nossos encontros devem ser bimestrais.
Dito tudo isso, reserve tempo na agenda para nosso primeiro encontro. Ele acontecerá daqui 1 semaninha, dia 20/07, à partir das 19:30, via Skype.
A pauta também foi elaborada por eles. Os temas citados foram:
  • Mercado de testes em Salvador/Bahia, principais empresas, tendências em certificações, perspectivas da área;
  • Perfil e atividades do testador;
  • Automação de testes;
  • Movimento Ágil – teste ágil;
Não deixe de participar e enviar sugestões para o evento!
logo

Introdução ao Teste de Software

Você estudante de TI, quer iniciar a carreira em testes e não sabe por onde começar? Você desenvolvedor já atuante na área deseja estar preparado para o mercado e potencializar sua atuação?

Estão abertas as inscrições para o curso EAD de Formação em testes de Software – Introdução ao Teste de Software.

Data: 29 e 30 de junho
Investimento = R$120,00 (valor promocional até dia 22/06)
Carga horária: 4 horas
* Acompanha emissão de certificado

Para mais detalhes, confira os dados abaixo ou clique no link: