O OpenTest é uma ferramenta de automação de teste funcional gratuita e de código aberto para aplicativos da Web, aplicativos móveis e APIs.
Sabemos que já existem muitas coisas por aí, ambos os produtos comerciais estabelecidos e projetos de código aberto. Procuramos a ferramenta adequada por um longo tempo e tentamos bastante alguns deles, com resultados que não atendiam exatamente às nossas expectativas. Estávamos procurando uma ferramenta em que pudéssemos padronizar, que nos permitiria unificar os esforços de automação de teste em várias equipes internas e externas com vários tamanhos, conjuntos de habilidades, orçamentos e locais geográficos. Essa ferramenta teria que incorporar as melhores práticas mais recentes do setor e, idealmente, ser lançada sob uma licença de código aberto para que possamos eliminar processos longos e reduzir custos. Dadas essas considerações, bem como outros requisitos, decidimos que o prédio do zero era a escolha responsável.
O OpenTest pretende oferecer todos os recursos de uma ferramenta moderna de automação de teste, seguindo um conjunto de princípios saudáveis. Nosso objetivo é democratizar a automação funcional de testes e criar uma grande comunidade que tenha o poder de se basear em si. Embora nada na vida seja perfeito e nenhum software esteja completo, prometemos que todos os recursos que entraram nesse produto foram completamente pensados e cuidadosamente implementados para alcançar o melhor equilíbrio entre poder e flexibilidade de um lado e usabilidade do outro.
Testes na Web , com selênio. Todos os navegadores suportados. Execute testes em sua máquina local ou usando um provedor de nuvem.
Testes móveis para aplicativos Android e iOS com Appium. Execute testes em sua máquina local ou usando um provedor de nuvem.
Teste de API , construído sobre a biblioteca Apache HTTPClient.
Testes orientados a palavras-chave . Monte seus testes usando blocos de construção de nível superior que ocultam a complexidade da tecnologia subjacente e permitam que você se expresse de maneira concisa e legível.
Suporte de script . Cubra cenários de teste complexos usando o código JavaScript, incorporado organicamente no seu teste orientado a palavras-chave para manter as coisas limpas e legíveis.
Testes paralelos . O número de sessões de teste que você pode executar em paralelo é limitado apenas pelos recursos da máquina em que você está executando (mas sempre há mais máquinas na nuvem).
Testes distribuídos . Escreva testes que sejam executados perfeitamente em várias máquinas, redes e tecnologias. Escreva testes de integração que abrangem móveis, web, API e qualquer coisa intermediária.
Teste orientado a dados . Execute um teste várias vezes, em um conjunto de registros de dados mantidos em um arquivo de dados separado.
Extensível . Integrar -se a qualquer tecnologia criando suas próprias ações de teste personalizadas (palavras -chave).
Friendly de controle de origem por design. Trabalhe com confiança, sabendo que o git está de costas. Perfeito para equipes grandes ou geograficamente distribuídas.
Ambientes . Crie seus testes uma vez e execute em vários ambientes ou usando diferentes conjuntos de dados de teste.
Funciona bem com os outros . Use a API HTTP simples para assumir o controle das sessões de teste de partida e monitoramento, coleta de resultados dos testes, etc.
Plataforma cruzada , em execução em macOS, Windows e Linux.
(e tivemos que pular muitos recursos muito legais para manter este resumo)
Pré -requisitos: node.js 8 ou superior; Java tempo de execução 8 ou superior.
Instale a partir do NPM:
npm install opentest -gTutorial em vídeo: https://getopentest.org/docs/installation.html (gravado no Windows)
Crie um diretório chamado "Opevest" no seu diretório doméstico para usar como playground para este guia e cd nesse diretório.
cd ~
mkdir opentest
cd opentest Observação | No Windows, use md em vez de mkdir . |
Execute o comando abaixo
opentest quick-startAgora você deve ter esses arquivos e diretórios em seu caminho atual:
server
└── server.yaml
actor1
└── actor.yaml
test-repo
├── macros
│ └── ...
├── scripts
│ └── ...
├── templates
│ └── ...
└── tests
└── ... O server e os diretórios actor1 serão usados como diretórios de trabalho para o servidor e o ator de teste Opentest, respectivamente. O diretório test-repo é um repositório de teste de amostra que demonstra alguns recursos básicos do OpenTest.
Abra uma nova janela de terminal, cd para o diretório de trabalho do servidor e inicie o servidor OpenTest:
cd ~/opentest/server
opentest serverO servidor opentest (também conhecido como Sync Server) é um aplicativo Node.js cujas funções principais são para orquestrar a execução do teste e fornecer uma interface do usuário baseada na Web.
Abra uma nova janela do terminal, cd para o diretório de trabalho do ator e inicie o ator de teste:
cd ~/opentest/actor1
opentest actorO ator de teste é um aplicativo Java que é executado no sistema em teste e executa as etapas de teste, conforme instruído pelo servidor de sincronização.
Abra um navegador da web e navegue para http: // localhost: 3000.
No menu, selecione Sessão> Criar sessão no modelo . Selecione os testes de início rápido do modelo e clique em Criar sessão . Aguarde alguns segundos e atualize seu navegador para ver o resultado da sessão de teste.
Existem três componentes para se operar:
O Sync Server , um aplicativo Node.js que executa principalmente três funções:
Orquestra a execução do teste.
Expõe uma interface da web que pode ser usada para criar sessões de teste, examinar os resultados dos testes etc.
Expõe uma API amigável que pode ser alavancada para aproximadamente os mesmos propósitos que a interface do usuário.
O ator de teste , um aplicativo Java responsável pela execução dos testes, conforme instruído pelo Sync Server. Pode haver vários atores participando do mesmo teste e os atores podem ser implantados em qualquer máquina em qualquer rede, inclusive na nuvem. O único requisito é que o ator de teste possa se comunicar com a API HTTP exposta pelo servidor Sync. Não há necessidade de que o servidor de sincronização possa iniciar a comunicação com o ator, o que simplifica bastante a configuração em cenários em que o ator está em execução em um laboratório que está por trás de um firewall ou em uma rede que não é acessível a partir da máquina que executa o servidor de sincronização.
O repositório de teste , um diretório com uma estrutura necessária predefinida, sob controle de origem, contendo os vários ativos de teste (arquivos de teste, scripts, modelos de sessão de teste, etc.).

Opentest é um software de código aberto lançado sob a licença do MIT.
A menos que você declare explicitamente o contrário, qualquer contribuição intencionalmente enviada por você para inclusão neste repositório deve ser licenciada como acima, sem termos ou condições adicionais.
Para mais informações, consulte o documento de diretrizes que contribui.
Obrigado ao BrowSerstack por fornecer uma conta de código aberto para testes e desenvolvimento!
Plataforma de teste de navegador transversal e código aberto ❤️ fornecido por molho laboratórios