Тесты выполняются асинхронно, что делает тестировщик быстрее, чем фактический возврат результатов.
Посмотрите на их асинхронные c получатели .. async/await
или хотя бы возврат обещание может быть вашим другом: https://github.com/cypress-io/cypress-example-recipes/blob/master/examples/unit-testing__application-code/async-methods.js
Если вам не нравится async/await
, ваш последний тест может выглядеть так:
it('ConsultaCredenciado por cnpj',function(){
return new Promise((resolve, _) => {
var client = require('graphql-client')({
url: 'apiURL/credenciadosplant/',
headers: {
Authorization: 'Bearer ' + token
}
})
client.query(
`query{
consultarCredenciado(cnpj :"123456456")
{
IdCredenciado
CNPJ
IdCredenciadoLegado
Email
}
}`,function(req,res){
if(res.status === 401){
throw new error('Not Authorized')
}
}).then(function(res){
console.log(res)
expect(res.data.consultarCredenciado[0].Email).to.equal('aaaaa@aaaaaa.com')
resolve(true);
})
});
});