Oii Bruna, como você está?
Peço desculpas pela demora em obter um retorno.
Ao longo deste curso, não será trabalhado a integração entre Cypress e captura de informações para uso posterior. Entretanto, através da função getCookies()
do Cypress é possível capturar todos os cookies
do navegador - o que inclui, na maioria das vezes, o token que está sendo utilizado na sessão. Vale ressaltar também que, caso os cookies necessários fiquem disponíveis apenas após o login, devemos primeiro realizar a autenticação e após isso, invocar a função getCookies()
, como mostro abaixo:
it('Captura Token, () => {
cy.getCookies() .then((cookies) => {
console.log(cookies)
})
})
Como resultado teremos um objeto que constará o nome do cookie e seu respectivo valor. Por exemplo:
{name: 'token1', value: 'huastdmndoasm21536723', path: '/', httpOnly: false}
{name: 'alura_id', value: '1', path: '/', httpOnly: false}
Aliado a isso, para salvar algum cookie em específico, basta acessá-lo usando índices, o nome da chave que deseja capturar e salvá-lo usando o recurso de variáveis de ambiente: Cypress.env
, como mostro abaixo:
const valorDoCookie = Cypress.env('valorCookie', cookies[0]['value'])
Já para uso posterior, basta invocamos a função Cypress.env
passando como parâmetro o nome da variável de ambiente que foi criada:
Cypress.env('valorCookie')
A título de curiosidade, caso queira conhecer outras soluções e possibilidades de captura, deixo como recomendação a documentação da ferramenta getCookies
e também, um artigo relacionado a captura de dados usando o localStorage
:
O conteúdo recomendado acima está em inglês. O uso da língua inglesa é bem comum na área de tecnologia, mas não se preocupe, caso não tenha afinidade com essa linguagem, recomendo que utilize o tradutor do navegador para uma melhor compressão.
Conte sempre com a Alura para evoluir seus estudos.
Grande abraço!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!