getgauge / taiko

A node.js library for testing modern web applications
https://taiko.dev
MIT License
3.57k stars 453 forks source link

Reusing SearchElement #2589

Closed NivedhaSenthil closed 2 years ago

NivedhaSenthil commented 2 years ago

Discussed in https://github.com/getgauge/taiko/discussions/2586

Originally posted by **lufton** May 16, 2022 I have a step definition that is failing: ``` step("Enter into text field", async function(value, fieldLabel) { let txtBox = await textBox(below(text(fieldLabel)), near(text(fieldLabel))); await scrollTo(txtBox, { blockAlignment: 'center', inlineAligment: 'center' }); await write(value, into(txtBox)); }); ``` But it fails at `await write(value, into(txtBox))` line: > Error: TextBox below Element with text THE TEXT NEXT TO ELEMENT and near Element with text THE TEXT NEXT TO ELEMENT not found This is weird, because `await scrollTo(txtBox, { blockAlignment: 'center', inlineAligment: 'center' })` works as expected, so there is corresponding element. Also if I replace `txtBox` with `textBox(below(text(fieldLabel)), near(text(fieldLabel)))` inside `scrollTo` and `write` method calls, then this code words. So it looks like as soon as I used txtBox variable it is not holding actual element anymore.
zabil commented 2 years ago

Duplicate of https://github.com/getgauge/taiko/issues/2590