Watin: нажатие на элемент работает в режиме отладки, но не иначе - PullRequest
0 голосов
/ 19 ноября 2009

Ниже приведен код, который в основном щелкает по событию Click, чтобы представить таблицу,

browser.Frame("f").Element("Table1").Click();

работает правильно, когда в режиме отладки (например, если я ставлю точку останова и выполняю ее). Но он не работает, когда я запускаю его в потоке, я использовал SimpleTimer, чтобы ждать до Settings.WaitForCompleteTimeOut, но бесполезно.

Любая помощь?

Ответы [ 4 ]

1 голос
/ 25 июня 2010

Может быть, у вас проблема со временем ...

Попробуйте проверить, существует ли элемент, прежде чем щелкнуть по нему.

 browser.Frame("f").Element("Table1").Exists

А затем выполните свою операцию ...

1 голос
/ 04 октября 2010

Была такая же проблема. Исправлено отключением «Конфигурация усиленной безопасности IE».

Как отключить расширенную настройку безопасности IE

0 голосов
/ 10 июля 2018
Actions actions = new Actions(driver);
actions.moveToElement(webElement);
actions.click();
actions.sendKeys(Keys.RETURN));
actions.build().perform();
0 голосов
/ 17 июня 2010

WatiN WaitForCompleteTimeOut метод либо ждет, пока какой-либо предикат не будет выполнен, либо время ввода истекло. Если вы пытаетесь подождать некоторое время, прежде чем продолжить использование Thread.sleep(int time), было бы лучшим решением. Хотя вы, конечно, можете установить предикат для метода Settings.WaitForCompleteTimeOut, который никогда не будет выполнен, поэтому время ожидания всегда будет достигнуто.

Если вы пытаетесь дождаться завершения операции, вам следует просто забыть о методе Settings.WaitForCompleteTimeOut. Он запускается после каждой команды WatiN, поэтому вам не нужно.

...