Тест CodedUI — Mouse.Click() на контрольной дозе не дает ожидаемого результата

Я использую Visual Studio 2010 для создания сценариев CodedUI. Тестируемое приложение представляет собой веб-приложение для выдачи займов.

Я автоматизирую часть, где пользователь вводит почтовый индекс и нажимает на поиск. когда я ввожу почтовый индекс вручную и нажимаю на поиск, ответ приходит мгновенно.

Но когда то же самое делается с кодом, почтовый индекс успешно отправляется и нажимается кнопка поиска, но приложение не отвечает.

Mouse.Click(ContactInformation.ContactInformationForm.PropertyAddress.ImageZipLookup);

Просто хотел понять, является ли это проблемой воспроизведения и есть ли альтернатива использованию mouse.click()


person Bharat    schedule 24.02.2015    source источник
comment
Вполне может быть, что элемент управления не готов принимать клики. Просто чтобы отладить это, добавьте небольшую задержку перед щелчком и посмотрите, поможет ли это. Кроме того, если элемент управления находится за пределами страницы (из-за прокрутки), вызовите SureClickable перед щелчком.   -  person JL.    schedule 27.02.2015


Ответы (1)


Скорее всего, определение кнопки отправки в вашей записи неверно. Откройте файл .uitest, найдите нужный элемент управления в дереве и откройте SearchProperties в свойствах элемента управления. Проверьте это по источнику на странице, а затем повторите попытку. Возможно, запись идентифицировала родительский объект HtmlDiv или что-то, что получает ввод, а не саму кнопку (или ссылку, если это так).

Лично я, просматривая SearchProperties, удаляю все ненужные свойства. Если для рассматриваемого объекта есть идентификатор или уникальный класс, я бы придерживался только этого, а не определял шесть или семь других признаков, которые могут быть неправильными при каждом запуске (стили .css, внутренний текст и т. д. могут меняться в зависимости от ваше приложение).

Просто убедитесь, что вы редактируете SearchProperties в пользовательском интерфейсе, а не в текстовом редакторе, так как файл .designer.cs создается заново каждый раз, когда вы запускаете Test Builder, поэтому вы потеряете все изменения, внесенные непосредственно в этот файл.

person Ryan Cox    schedule 24.02.2015
comment
Я не думаю, что есть какие-либо проблемы с идентификацией элемента управления, тот факт, что его щелчок по нужному элементу управления показывает, что проблема заключается в том, что ответ не отображается, когда сценарий автоматизирован. - person Bharat; 24.02.2015
comment
Извините, я неправильно понял, что контроль был подтвержден. Если ответ не отображается, вы можете попробовать отладчик браузера и посмотреть, какой сетевой трафик отправляется. Возможно, что-то на странице задерживает выполнение, например, трекер или что-то в этом роде? - person Ryan Cox; 24.02.2015