Я только недавно начал изучать WatiN и следовал примеру из http://www.codeproject.com/KB/aspnet/WatiN.aspx. К сожалению, я столкнулся с проблемой, когда утверждается, что текстового поля с именем "q" не существует.
Вот мой код:
[STAThread]
static void Main(string[] args)
{
IE ie = new IE();
ie.GoTo("http://www.google.com");
TextField ietxt = ie.TextField(Find.ByName("q"));
ietxt.TypeText("WatiN");
ie.Button(Find.ByValue("Google Search")).Click();
}
Когда он попадает в строку ietxt.TypeText ("WatiN"), он выдает ошибку:
"Не удалось найти критерии соответствия тега элемента INPUT (скрытый) или INPUT (пароль), INPUT (текст), INPUT (текстовое поле) или TEXTAREA: атрибут 'name' равен 'q' на google.com/ (внутреннее исключение: элемент wasn ' t доступно в течение 30 секунд.) "
Кажется, что каждый использует этот пример, и он прекрасно работает для них. Кроме того, я вошел в исходный код для google.com и обнаружил, где именно указано, что «q» действительно является именем текстового поля поиска.
<input name="q" title="Search" class="gsfi" id="lst-ib" ....>
Кто-нибудь знает, почему я мог получить эту ошибку?