Lets talk about testing using cloud computing with Amazon Web Services

Você já pensou na relação entre teste de software e computação na nuvem? Como QA, você percebe diferenças e issues entre ambientes de desenvolvimento, homologação e produção, os quais não existiriam se os ambientes fossem todos os iguais? Você já precisou de infra-estrutura de TI para testes de um projeto experimental e não pode fazer por questões de custo? Como fazer para testar a performance e escalabilidade de sua aplicação com facilidade? Preciso testar uma nova ferramenta de teste, mas não tenho o mínimo requerido de hardware ou software para rodar a mesma? E software livre? Como criar uma aplicação utilizando tecnologia open source, com baixo ou nenhum custo?

Hoje em dia, a computação em nuvem está aí para ajudar-nos a responder estas perguntas. O Gartner define cloud computing como um estilo de computação escalável e elástica na qual os recursos de TI são fornecidos como um serviço para clientes externos, a partir da internet. Ou seja, quando se fala em computação na nuvem, deve-se pensar em uma infra-estrutura baseada em serviços, os quais são utlilizados de acordo com a demanda, onde evita-se o desperdício, com recursos compartilhados, o que diminui custos, medidos por uso, ou seja, paga-se pelo que se usa, e por último mas não menos importante, utilizando-se de recursos da internet, estando disponível ao redor do mundo.

Com a AWS é possível desenvolver aplicações, “fechar pacotes”, e então disponibilizar o mesmo pacote em diferentes instâncias, as quais tem as mesmas configurações computacionais, porém, uma instância pode ser seu ambiente de homologação, e as outras sua produção, evitando diferenças de ambientes. Além disso, estes pacotes fechados, podem ser uma imagem de sua aplicação, com o bootstrap bem configurado, viabilizando poder-se derrubar uma instância na qual se está rodando o sistema, e a aplicação se “levanta” sozinha.

As vezes, também existe a necessidade de somente testarmos uma hipótese, para coletar feedback sobre um produto e então ir melhorando o mesmo, antes da publicação em produção. Com a AWS, estes testes experimentais podem ser realizados com baixo custo, visto que pode-se testar sua hipótese com instâncias menores e mais baratas, ou mesmo gratuitas, e podendo desligar estas instâncias quando não estão em uso, para otimização de custos, pois se paga somente pelo que se utiliza.

Testes de performance por exemplo, podem ser realizados utilizado-se de infra-estrutura computacional na nuvem, pensando-se em escalabilidade horizontal, onde pode-se criar regras de auto-scaling para instâncias pequenas e de baixo custo, porém, com um balanceador de carga, o qual utiliza as regras de auto scaling para “levantar” ou “derrubar” instâncias, de acordo com a demanda, viabilizando por exemplo, você ligar um JMeter estressando sua aplicação, e entender os limites que sua aplicação ou arquitetura aguentam, a fim de otimizações e testes, pensando em ter uma aplicação sempre disponível.

Outro serviço interessante e novo, é o Amazon Workspace da AWS, em um modelo um pouco diferente, de pagamento mensal por estações de trabalho. Com este tipo de serviço, é possível instanciar estações com Windows 7, MS Office (caso necessário), e a possibilidade de instalação de outros aplicativos, para por exemplo, a finalidade de testar uma nova aplicação de criação de testes automatizados, a instalação de versões Trial para experimentações, antes do pagamento de uma licença, etc., e então, viabilizando validação de novas tecnologias que podem ser essenciais para para o sucesso de seu negócio.

Na AWS, você pode criar instâncias Windows, pagando por hora (a instância e a licença da Microsoft), mas também, podemos lançar instâncias Linux, viabilizando projetos com custo ainda mais baixo, ou mesmo zero (utilizando-se do nível gratuito por um ano). Neste modelo, percebe-se a possibilidade da criação de projetos com alta tecnologia, a um custo muito baixo, viabilizando testar a solução de um problema e então a criação de um produto ou serviço para oferecer ao mercado, e então rentabilizar.

Com isto, minha conclusão é mais uma vez de que temos todas as ferramentas e tecnologias necessárias para a criação de produtos e serviços potenciais de sucesso. Além disso, pode-se evitar problemas e economizar tempo, com issues relacionadas a problemas de ambiente. É possível desligar instâncias por questões de reduções de custo. Pode-se testar facilmente questões relacionadas a performance de sua aplicação. Podemos testar novas tecnologias recém lançadas e então validá-las, e mesmo gerar novas possibilidades de renda.

Agora, é só sair usando. A tecnologia e documentação estão na rede mundial (Internet), basta querer aprender.

Aguardo seus comentários e sugestões, e até mais!

Dica de QA: Nível de uso gratuito da AWS –> https://aws.amazon.com/pt/free/

Anúncios

Um comentário em “Lets talk about testing using cloud computing with Amazon Web Services

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s