codeceptjs script get stuck when using session inside a Scenario

Abierto
#5,179 6 comentarios 0 reacciones 1 asignado Ver en GitHub

@DenysKuchma ya está trabajando en esto.

Desde el 8/1/2026.

Evaluación

Este issue todavía no se ha evaluado.

Descripción

stale

Hi,

I upgraded my testing platform from codeceptjs v 3.6.10 to v3.7.4 but encounter a strange issue with codeceptjs script get stuck and never get timeout. I used explicitly timeout in config and in scenario but non worked. Stuck may happen on I.grabAttributeFrom, grabTextFrom which could be multi sessions or multi Data Scenarios. I tried to narrow down the issue and found that If a Scenario start and you perform some tasks using grabTextFrom or grabAttributeFrom with same exact locate function and then use the same exact locate function inside a Scenario Session then it get stuck. It could be the locate function cache of the first browser session element which may be behaving differently when called again in a different session in same test case?

Here is the general test case template:

Scenario('issue of multi sessions', async () => {
login('abc');
I.amOnPage('mywebsite');
let v = await I.grabTextFrom(locate('#myid'));
await session('second', async () => {
I.amOnPage(',mywebsite');
let url2 =I.grabCurrentUrl();
let v = await I.grabTextFrom(locate('#myid')); // get stuck never timeout
});
}).tag('issue');

similar thing happen when i tried to call the same Scenario with data(array).Scenario and locate function get stuck. I tried few without locate but something again did not let he script to run multiple times when data was passed.

Is the same cache get built for the elements inside codceptjs which never cleared with Scenario run multiple times with data being passed? If i dive such scenario into two then they run fine, any clue?

Also any data being not managed correctly when a session is created inside a Scenario? A reference of element on one session is being shared at a wrong place in a different session, any clue?

My application perform few operations so its hard to write a standalone script with the issue, I hope a review of of such feature by developer may pin point the issue and in the mean while i will try to make a test case which reproduce such issue as stand alone Scenario.

Any help will be highly appreciated.
Thanks!

Lenguaje dominante
JavaScript
Estrellas
4.2k
Forks
756
Merge medio
2 d 9 h
PR fusionados (30 d)
16

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de codeceptjs/CodeceptJS

Todos los issues de codeceptjs/CodeceptJS

Issues similares

Más issues de JavaScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.