Как щелкнуть AutoCompleteExtender с помощью Watin

Для моего приемочного тестирования я пишу текст в расширитель автозаполнения, и мне нужно щелкнуть заполненный список.

Чтобы заполнить список, я должен использовать AppendText вместо TypeText, иначе текстовое поле теряет фокус до заполнения списка.

Теперь моя проблема заключается в том, что я пытаюсь нажать на заполненный список. Я попытался найти элемент UL и щелкнуть по нему; но он не запускает событие click в списке.

Затем я попытался найти список по имени тега и значению:

Element element = Browser.Element(Find.By("tagname", "li") && Find.ByValue("lookupString"));

но он не находит его, кто-нибудь смог сделать то, что я пытаюсь сделать?


person Rismo    schedule 08.09.2008    source источник


Ответы (2)


Более короткая версия этого:

string lookupString = "string in list";
Element list = Browser.Element("li", Find.ByText(new Regex(lookupString)));
list.MouseDown();

Регулярные выражения будут выполнять частичное совпадение, поэтому вам не нужно нужно указывать .* с любой стороны и использовать string.Format. Это предполагает, однако, что lookupString не содержит никаких специальных символов для регулярных выражений, их нужно экранировать.

person Community    schedule 13.11.2008

На случай, если у кого-то будет такая же проблема. Он работает со следующим кодом:

string lookupString = "string in list";
Regex lookup = new Regex(string.Format(".*{0}.*", lookupString));
Element list = Browser.Element("li", Find.ByText(lookup));
list.MouseDown();
person Rismo    schedule 09.09.2008