Watin: щелчок по элементу работает в режиме отладки, но не в противном случае

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

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

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

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


person asyncwait    schedule 19.11.2009    source источник


Ответы (4)


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

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

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

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

person alonp    schedule 25.06.2010

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

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

person Pavlo Neiman    schedule 04.10.2010

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

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

person Dadle    schedule 17.06.2010

person    schedule
comment
Пожалуйста, предоставьте некоторый контекст для этого кода. Что именно он делает? - person SpaceBison; 10.07.2018