codeceptjs / codeceptjs/CodeceptJS
moveCursorTo method is not working when element is inside iFrame for chrome browser, when w3c protocol is used
- Lenguaje dominante
- JavaScript
- Estrellas
- 4.2k
- Forks
- 757
- Merge medio
- 2 d 9 h
- PR fusionados (30 d)
- 16
Descripción
#### What are you trying to achieve?
When trying to use moveToCursor() on element which is located inside an iframe, the step is getting passed but the operation is not performed. The issue is observed only when the execution is happening on chrome browser and w3c protocol is used.
#### What do you get instead?
The step is getting passed but the operation is not performed.
> Provide console output if related. Use `--verbose` mode for more details.
```bash
# paste output here
```
> Provide test source code if related
```js
**Filename: iFrameHover.php**
Iframe Hower test
</body>
</html>
**FileName:hover.php**
<html>
<head></head>
<body>
<br>
<br><br><br><br><br><br><br><br><br><br>
<span id="hover" onmouseover="document.getElementById('show').innerText = 'Hovered!'">Hover me!</span>
<div id="show"></div>
</body>
</html>
**Test**
describe('#moveCursorTo iFrame', () => {
it('should trigger hover event', async () => {
await wd.amOnPage('/form/iFrameHover');
await wd.wait(5);
await wd.switchTo('iframe')
await wd.moveCursorTo('#hover');
await wd.see('Hovered', '#show');
});
});
```
### Details
* CodeceptJS version: 2.6.6
* NodeJS Version: 10.15.0
* Operating System: Windows 10
* puppeteer || webdriverio || protractor || testcafe version (if related) : "webdriverio": "^6.1.19",
* Configuration file:
```js
wd = new WebDriver({
url: siteUrl,
browser: 'chrome',
windowSize: '500x700',
smartWait: 0, // just to try
host: TestHelper.seleniumHost(),
port: TestHelper.seleniumPort(),
waitForTimeout: 5000,
capabilities: {
chromeOptions: {
args: ['--disable-gpu', '--window-size=1280,1024'],
},
},
});
```
Guía de contribución
Evaluación
Este issue todavía no se ha evaluado.