Tarefa para o teste:
gulp.task('mds', ['default', 'selenium'], function() {
return gulp.src('wdio.conf.js')
.pipe(webdriver({
waitforTimeout: 30000,
reporter: 'spec'
})).on('error', function() {
seleniumServer.kill();
process.exit(1);
});
});
Arquivo de configuração:
waitforTimeout: 30000,
Em ambos os lugares, estou dando o tempo limite de 30.000, mas ainda assim o teste terá o tempo limite de 10.000.
[18:28:53] spawn wdio with these attributes:
/Usxxxers/xxx/xxx/xxxx/xxxxxx/public_html/tests/wdio.conf.js
--waitforTimeout=30000
--reporter=spec
Você pode fornecer o erro que é gerado? obrigado
Estou com o mesmo erro, esta é a saída do erro. Eu também configurei a configuração waitforTimeout
para 30000
should have the right title - the fancy generator way:
timeout of 10000ms exceeded. Ensure the done() callback is being called in this test.
running chrome
Error: timeout of 10000ms exceeded. Ensure the done() callback is being called in this test.
at null.<anonymous> (C:\projects\DOD\dod-repo\tests\node_modules\mocha\lib\runnable.js:215:19)
at Timer.listOnTimeout (timers.js:92:15)
Como você pode obter nos documentos, o waitforTimeout
define o tempo limite padrão para todos os comandos waitForXXX
. Se você quiser aumentar o tempo limite do teste, você precisa configurá-lo nas opções do seu framework, como no Mocha:
// wdio.conf.js
// ...
mochaOpts: {
timeout: 99999999
}
// ...
Obrigado pelo esclarecimento, alterei as configurações de tempo limite do mocha e está tudo funcionando como esperado agora.
@christian-bromann Você pode querer alterar timeput
para timeout
em sua resposta.
@prewk boa captura 👍
Deve haver um aviso para configurações repetidas. O WebStorm destaca a chave do objeto quando há uma declaração duplicada, seria bom se a estrutura de "teste" mostrasse esses tipos de erros.
PS Observando a configuração do Apache, não estaria fora do escopo adicionar um aviso para erros de sintaxe quando o teste for iniciado. Parece-me bem básico.
seria bom se a estrutura de "teste" mostrasse esses tipos de erros
Isso não é responsabilidade da estrutura de teste. Ele deve ser capturado pelo seu IDE!
@christian-bromann Certo, essa é exatamente a resposta que meu comentário PS aborda. Quando estou configurando o Apache e cometo um erro, recebo avisos. Não está fora do escopo fazer verificações básicas de sanidade. Quando estou construindo meu projeto, recebo alguns erros de TS Lint, como faço para anexar recursos de linting a wdio run test
?
Não está fora do escopo fazer verificações básicas de sanidade
Fazemos isso, mas não nesse nível. Se você tiver chaves de propriedade duplicadas em sua configuração, o WebdriverIO não poderá detectá-las.
@christian-bromann Depois de fazer algumas pesquisas, também não vejo uma maneira do Nodejs relatar esse erro. É normal ter 1 IDE que avalia corretamente o código, mas essas avaliações não estão disponíveis no compilador? Parece estranho que um IDE faça algo que um compilador não faça.
É normal ter 1 IDE que avalia corretamente o código, mas essas avaliações não estão disponíveis no compilador?
Eu não sei. O que eu sei é que o WebdriverIO não pode fazer nada aqui.
@christian-bromann onde adicionei o script abaixo no nó js
mochaOpts: {
tempo limite: 99999999
}
em seu wdio.conf.js
como mostrado no exemplo
Comentários muito úteis
Como você pode obter nos documentos, o
waitforTimeout
define o tempo limite padrão para todos os comandoswaitForXXX
. Se você quiser aumentar o tempo limite do teste, você precisa configurá-lo nas opções do seu framework, como no Mocha: