getting started with cloud testing
Neste artigo, aprenderemos como realizar o “Teste de Nuvem”. Para entender isso, precisamos primeiro conhecer o conceito de Cloud Computing. Este artigo explica sobre Cloud Computing, Cloud Testing e os principais desafios dos testes na nuvem.
Introdução à computação em nuvem
Vários anos atrás, a indústria testemunhou uma nova palavra da moda e tecnologia chamada “virtualização”. Com o advento da virtualização, a ideologia de compartilhar recursos de computação em vários sistemas operacionais a fim de aumentar a escalabilidade, reduzir os custos de capital e permitir uma fácil administração da infraestrutura de TI, tornou-se a espinha dorsal de várias empresas.
Nos últimos anos, a TI testemunhou uma evolução da virtualização na forma de computação em nuvem. Qualquer novato na nuvem deve imaginar a computação em nuvem como um modelo que vê tudo “como um serviço”.
É óbvio definir a computação em nuvem como uma solução total que entrega TI como um serviço. Assim como a virtualização, seu lema é o compartilhamento de recursos em que a alocação e a disponibilidade são feitas sob demanda pela Internet.
(imagem fonte )
Exemplo da vida real para explicar a computação em nuvem:
Podemos facilmente entender a teoria de Computação em Nuvem tomando um exemplo simples de fazer uma refeição em um restaurante. Por exemplo, considere fazer uma refeição em casa em vez de comer em um restaurante. Embora o objetivo seja puramente o consumo de uma refeição, a abordagem ou modelo usado em ambos os casos varia em grande medida.
Em casa, você precisa ter certeza de que tem todos os ingredientes necessários para a refeição, você precisa ter certeza de que o preparo necessário para cozinhar o prato específico é feito. Você cozinha a comida e a responsabilidade de manter os arredores arrumados, desde que o prato seja cozinhado, pertence exclusivamente a você.
Agora, por outro lado, fazer uma refeição em um restaurante pode ser descrito como um catering que é um serviço. Como cliente, você só vai ao restaurante, pede o prato de sua preferência e paga pelos serviços.
O bônus de possuir os ingredientes, preparar o prato, cozinhar o prato, sua apresentação, servir o prato para você, limpar e limpar a mesa uma vez feita, embalar qualquer sobra de comida em excesso, tudo fica por conta da administração do restaurante.
Este exemplo pode ser visto como semelhante às ideologias e aos princípios da Computação em Nuvem - “Disponibilidade sob demanda”, “Como serviço” e “Pague pelo uso”.
O que você aprenderá:
Modelos de entrega na nuvem
(imagem fonte )
A nuvem tem principalmente três tipos de modelos de entrega ou componentes que fornecem recursos 'como um serviço':
- Infraestrutura como serviço (IaaS) : Esta é a camada mais fundamental que forma o bloco de construção da nuvem. É composto principalmente de recursos físicos, como armazenamento, dispositivos de rede, servidores de computação, etc. Todos esses recursos de computação estão disponíveis sob demanda, onde um usuário paga por isso de acordo com seu uso.
- Plataforma como serviço (PaaS) : A camada central da nuvem é a plataforma. Aqui não há controle sobre a infraestrutura subjacente, mas você pode acessar os aplicativos implantados. Portanto, isso fornece todo o ambiente de tempo de execução sob demanda, que pode ser um ambiente de desenvolvimento ou de teste. Portanto, neste modelo, mais comumente você teria uma VM que contém um ambiente completo, como sistema operacional, middleware necessário, etc., disponível quando necessário.
- Software as a Service (SaaS) : A camada superior aqui é a camada do aplicativo, que geralmente será visível para qualquer usuário. Aqui, os aplicativos / produtos estão disponíveis para os usuários sob demanda via Internet. Portanto, em vez de ter que adquirir a licença para um usuário específico, esta prova ser a maneira mais econômica de garantir que a licença esteja sempre em uso. Exemplos disso são Gmail, Google Docs, Photoshop, etc.
Tipos de nuvem
Existem 3 tipos de formações de nuvens, nomeadamente nuvens públicas, privadas e híbridas:
- Nuvens públicas são aqueles em que os serviços estão disponíveis para todos, onde os recursos são alocados e provisionados dinamicamente conforme a solicitação.
- Nuvens privadas são geralmente gerenciados dentro das regras de firewall de uma determinada organização e estão disponíveis apenas para os usuários dentro da empresa.
- Nuvens híbridas são uma mistura de nuvens privadas e públicas. As organizações podem decidir quais serviços desejam expor a todos e quais serviços desejam expor apenas aos usuários dentro da organização.
Cloud Testing - Need For It
Teste de nuvem refere-se ao teste de recursos, como hardware, software, etc., que estão disponíveis sob demanda . Até mesmo o teste aqui pode ser visto “como um serviço”. Para ofertas de nuvem, é essencial certificar-se de que o serviço (produto) não apenas atenda aos seus requisitos funcionais, mas também aos requisitos não funcionais. Com uma variedade de aplicativos na nuvem, agora está se tornando essencial para desenvolver a estratégia de teste de nuvem.
Benefícios do teste em nuvem
A necessidade de testes em nuvem é facilmente visível com os benefícios que derivamos deles, que são muitos. Abaixo, tentamos discutir os benefícios mais aparentes que explicam por que Nuvem é a necessidade da hora:
qual é o melhor software de otimização de pc
- Disponibilidade dinâmica de ambiente de teste : A abordagem normal de teste em qualquer organização é investir na infraestrutura de hardware / software necessária para o teste. Quase, muitos de vocês concordarão que o ambiente fornecido para as equipes de teste muito raramente corresponde ao ambiente do cliente, devido aos requisitos que mudam rapidamente, o que torna muito difícil para as empresas mantê-lo atualizado. A nuvem é a única resposta para esse problema por meio da qual os usuários podem replicar facilmente o ambiente do cliente e encontrar defeitos no início do ciclo.
- Baixo custo : Outro ângulo em relação ao ponto anterior é que quando as empresas investem em infraestrutura, a causa comum é que muitos de seus servidores não são utilizados o tempo todo. Como resultado, eles podem ter que incorrer em despesas adicionais na renovação da licença. A transição para a nuvem também ajuda nesse cenário, pois os usuários podem comissionar os dispositivos como e quando quiserem, economizando enormes custos para a organização.
- Facilmente personalizável : Com o uso da nuvem, é uma tarefa fácil para as organizações emular um ambiente centrado no usuário final, personalizando-o de acordo com o uso, economizando tempo e custos. As equipes de teste podem realizar facilmente cenários de teste de carga e desempenho em várias permutações e combinações como - diferentes sistemas operacionais, navegadores, configurações, etc.
- Escalabilidade : Esta é uma das características mais atraentes da nuvem, por meio da qual os recursos de computação podem ser aumentados ou diminuídos onde for necessário. Isso é amplamente utilizado em situações em que os requisitos de negócios se alteram com frequência.
Cloud Testing Deep Dive
O teste com relação a uma nuvem empregará métodos tradicionais e da nova era para realizar o teste. Teste e nuvem são domínios igualmente grandes em seu próprio caminho. Vamos aprender como ver os dois juntos nas seções abaixo.
# 1) Formulários de teste de nuvem
O Cloud Testing pode ser amplamente dividido em quatro categorias diferentes com base no que pretendem fazer:
- Teste de toda a nuvem: A nuvem é vista como uma entidade completa com base em seus recursos e os testes são realizados com base nisso.
- Teste em uma nuvem: Este é o teste que é realizado dentro da nuvem verificando cada um de seus recursos internos
- Testando nas nuvens: Com base nas especificações, aqui o teste é realizado nos diferentes tipos de nuvens públicas, privadas e híbridas semelhantes a nuvens.
- Teste SaaS na nuvem: Os testes funcionais e não funcionais são realizados com base nos requisitos.
# 2) Ambientes de teste em nuvem
Existem 3 tipos de ambientes de teste em nuvem:
- Um ambiente privado ou público onde a qualidade dos aplicativos implantados neles precisa ser validada.
- Um ambiente híbrido, onde a qualidade dos aplicativos implantados neles precisa ser validada.
- Um ambiente de teste baseado em nuvem, onde a qualidade dos aplicativos implantados na nuvem precisa ser validada.
# 3) Tipos de testes realizados na nuvem
O teste em uma nuvem não deve apenas garantir que os requisitos funcionais sejam atendidos, mas uma forte ênfase também deve ser dada aos testes não funcionais. Vamos dar uma olhada nos diferentes tipos de teste que são realizados.
Teste funcional :
O teste funcional deve ser executado para garantir que a oferta forneça os serviços pelos quais o usuário está pagando. Os testes funcionais garantem que os requisitos do negócio estão sendo atendidos.
Alguns dos testes funcionais são descritos abaixo:
- Teste de verificação do sistema : Isso garante que os vários módulos funcionem corretamente entre si, garantindo assim que seu comportamento seja o esperado.
- Teste de aceitação : Aqui, a solução baseada em nuvem é entregue aos usuários para garantir que atenda às suas expectativas.
- Teste de interoperabilidade : Qualquer aplicativo deve ter flexibilidade para funcionar sem problemas, não apenas em plataformas diferentes, mas também deve funcionar perfeitamente ao passar de uma infraestrutura em nuvem para outra.
Teste não funcional:
Os testes não funcionais se concentram principalmente em testes baseados em aplicativos da web, garantindo que atendam aos requisitos desejados.
teste de software livros download grátis pdf
Aqui estão algumas formas de testes não funcionais discutidos abaixo:
# 1) Teste de disponibilidade : O supervisor / fornecedor da nuvem deve garantir que a nuvem esteja disponível 24 horas por dia. Como pode haver muitas atividades de missão crítica em andamento, o administrador deve se certificar de que não haja impacto adverso para os consumidores
# 2) Teste de multilocação : Aqui, vários usuários usam uma oferta de nuvem. O teste deve ser executado para garantir que haja segurança suficiente e controle de acesso dos dados quando vários usuários estiverem usando uma única instância.
# 3) Teste de desempenho : A verificação do tempo de resposta deve ser feita para garantir que tudo está intacto, mesmo quando há muitas solicitações a serem atendidas. A latência da rede também é um dos fatores críticos para avaliar o desempenho.
Além disso, o balanceamento da carga de trabalho precisa ser feito quando houver uma redução na carga, por meio do descomissionamento de recursos. Assim, os testes de carga e estresse são feitos na oferta da nuvem para garantir que os aplicativos estejam funcionando de maneira ideal com aumento / diminuição da carga e estresse.
# 4) Teste de segurança : Como tudo está disponível a qualquer momento com a nuvem, é essencial garantir que todas as informações confidenciais do usuário não tenham acesso não autorizado e que a privacidade dos usuários permaneça intacta. Ao manter os aplicativos na nuvem, a integridade dos dados do usuário também deve ser verificada.
# 5) Teste de recuperação de desastres : Como já declarado no teste de disponibilidade, a nuvem deve estar disponível em todos os momentos e se houver qualquer tipo de falha, como interrupções de rede, quebra devido a carga extrema, falhas de sistema, etc, meça a rapidez com que a falha é indicada perda de dados ocorre durante este período.
# 6) Teste de Escalabilidade : Teste para certificar-se de que a oferta tem a capacidade de fornecer recursos de aumento ou redução de acordo com a necessidade.
Ferramentas de teste de nuvem
Algumas das ferramentas usadas em diferentes tipos de teste realizados em um ambiente de nuvem são mencionadas nesta seção. Os detalhes das ferramentas estão fora do escopo deste artigo.
Ferramentas para teste de desempenho na nuvem:
Muitas das ferramentas são usadas basicamente para testes de desempenho, carga e estresse. Algumas das ferramentas abaixo também podem ser usadas para testes funcionais:
- SOASTA CloudTest
- LoadStorm
- CloudTestGo
- AppPerfect.
- Jmeter
- Cloudslueth
- CloudTestGo
- AppPerfect
Ferramentas de teste de segurança em nuvem:
Existem também algumas ferramentas relacionadas à segurança que são comumente usadas:
- Nessus
- Wireshark
- Nmap
=> Clique aqui para obter uma lista completa de ferramentas de teste de automação baseadas em nuvem
Desafios de teste de nuvem
Por mais emocionante que a nuvem pareça, nem tudo é ótimo aqui. Existem alguns desafios em confiar e usar a nuvem como infraestrutura também. Vamos dar uma olhada em algumas das principais preocupações ao usar a nuvem.
Desafio nº 1) Com tudo disponível sob demanda para qualquer usuário, a segurança é uma questão fundamental para as empresas, pois atualmente ainda há muita discussão e pesquisa em andamento na indústria para definir os padrões de segurança. Proteção da privacidade do usuário, padrões de segurança na nuvem, segurança dos aplicativos executados na nuvem, Técnicas de teste de segurança são alguns dos principais problemas que precisam ser tratados na infraestrutura da nuvem.
Desafio 2) Outro grande desafio é o desempenho de um aplicativo em nuvem, especificamente em nuvens privadas. Ele será compartilhado por muitos usuários e, portanto, também pode causar atrasos. Além disso, no caso de alguma manutenção ou atividades relacionadas a interrupções, a largura de banda pode parecer insuficiente.
Desafio # 3) Às vezes, para fins de teste, exigimos certas configurações com relação a servidores, armazenamento ou rede que podem não ser suportados pelo provedor de nuvem. Às vezes, isso torna difícil emular os ambientes do cliente.
Desafio # 4 )Outro desafio comumente enfrentado é com relação ao teste de integração em que os testadores testam a rede, o banco de dados, os servidores, etc. Em tais situações, o testador não terá controle sobre o ambiente subjacente. Em segundo lugar, o desafio é dobrado quando é necessário haver uma interação entre esses componentes, porque o testador terá que antecipar riscos como travamentos, quebra de rede ou falha de servidores.
Conclusão
Hoje, o Cloud Computing se tornou um daqueles “big bangs” do setor. A maioria das organizações agora está inclinada a adotar a nuvem por causa de seu flexibilidade, escalabilidade e custos reduzidos .
Usar a nuvem para teste está ajudando imensamente as organizações a adquirir as ferramentas necessárias, licenças de software, infraestruturas a um custo muito baixo, sem ter que configurá-lo e depois se preocupar com sua utilização máxima.
Evidentemente, a nuvem veio para ficar por muito tempo e os testes de nuvem também têm um futuro brilhante. :)
Sobre o autor : Este é um artigo convidado de Sneha Nadig. Ela está trabalhando como líder de teste com mais de 7 anos de experiência em projetos de teste manual e de automação.
Você está trabalhando no Cloud Testing? Por favor, compartilhe sua experiência. Ou tem uma pergunta? sinta-se à vontade para postar nos comentários.
Leitura recomendada
- Primeiros passos com testes de nuvem
- Teste de desempenho de nuvem: provedores de serviço de teste de carga baseado em nuvem
- Teste de aplicativo móvel baseado em nuvem: uma visão geral completa
- Melhores provedores de serviços de teste de aplicativos móveis baseados em nuvem em 2021
- 10 MELHORES ferramentas de monitoramento de nuvem para gerenciamento de nuvem perfeito
- 10 MELHORES provedores de armazenamento em nuvem gratuitos (armazenamento online 2021)
- 12 MELHOR Provedor de Hospedagem em Nuvem em 2021 (Comparado por Serviço e Custo)