Pular para o conteúdo principal

Serviço QUnit

wdio-qunit-service é um pacote de terceiros, para mais informações consulte GitHub | npm

npm test

WebdriverIO (wdio) serviço para executar testes baseados em navegador QUnit e convertê-los dinamicamente em suítes de teste wdio.

Substituindo o Karma

QUnit Service é um substituto direto para aqueles que utilizam Karma JS para executar seus testes QUnit (karma-qunit, karma-ui5 ou qualquer outra combinação de Karma e QUnit). O Karma está obsoleto e as pessoas devem migrar para alternativas modernas!

Se você deseja manter seus testes QUnit como estão, sem reescrever ou refatorar, o QUnit Service é tudo o que você precisa. Ele executa seus arquivos HTML QUnit em um navegador e captura todos os resultados no formato wdio.

Por causa disso, os desenvolvedores podem usar o QUnit Service em conjunto com tudo o mais disponível no ecossistema wdio.

Quer gravar a execução do teste em vídeo? Talvez tirar uma captura de tela ou salvá-la em PDF? Verificar a cobertura de código? Salvar os resultados dos testes no formato JUnit? Vá em frente, o QUnit Service não atrapalha seu caminho.

Instalação

Após configurar o WebdriverIO, instale o wdio-qunit-service como uma devDependency no seu arquivo package.json.

npm install wdio-qunit-service --save-dev

Se você ainda não configurou o WebdriverIO, confira a documentação oficial.

Configuração

Para usar o QUnit Service, você só precisa adicioná-lo à lista de services no seu arquivo wdio.conf.js. A documentação do wdio tem todas as informações relacionadas ao arquivo de configuração:

// wdio.conf.js
export const config = {
// ...
services: ["qunit"],
// ...
};

Uso

Certifique-se de que o servidor web esteja ativo e em execução antes de executar os testes. O wdio não iniciará o servidor web.

Com arquivos .spec ou .test

No seu teste WebdriverIO, você precisa navegar até a página de teste HTML do QUnit e então chamar browser.getQUnitResults().

describe("QUnit test page", () => {
it("should pass QUnit tests", async () => {
await browser.url("http://localhost:8080/test/unit/unitTests.qunit.html");
await browser.getQUnitResults();
});
});

Recomenda-se ter um arquivo de teste WebdriverIO para cada página de teste HTML QUnit. Isso garante que os testes sejam executados em paralelo e totalmente isolados.

Apenas configuração, sem arquivos .spec ou .test

Se você não quiser criar arquivos spec/test, você pode passar uma lista de arquivos HTML QUnit para a configuração e os testes serão gerados automaticamente.

// wdio.conf.js
export const config = {
// ...
baseUrl: 'http://localhost:8080',
services: [
['qunit', {
paths: [
'unit-tests.html',
'integration-tests.html',
'test/qunit.html'
]
}],
// ...
};

Resultados dos testes

Os resultados dos testes podem parecer com: QUnit Service test results

Exemplos

Confira a pasta examples para amostras usando javascript, typescript e mais.

Uso em aplicativos SAP Fiori / UI5

Exemplo direto example usando o conhecido openui5-sample-app:

  • Crie um arquivo de configuração: wdio.conf.js

  • Diga ao wdio onde encontrar os arquivos de teste QUnit:

    • ou
  • O servidor web deve estar em execução antes de executar os testes

  • Execute $ wdio run webapp/test/wdio.conf.js

Autor

Mauricio Lauffer

Licença

Este projeto está licenciado sob a Licença MIT - consulte o arquivo LICENSE para obter detalhes.

Welcome! How can I help?

WebdriverIO AI Copilot