Работа с пользовательскими всплывающими формами редактирования в Telerik Testing Framework - PullRequest
0 голосов
/ 13 декабря 2011

( также размещено на форумах Telerik )

Привет всем,

Мы пытаемся использовать инфраструктуру автоматизации тестирования в коде для ввода данных в пользовательское всплывающее окно редактированияФорма (как в этой демонстрации: http://demos.telerik.com/aspnet-ajax/grid/examples/dataediting/popupeditform/defaultcs.aspx) для изменения строки данных.Проблема, с которой мы сталкиваемся, заключается в том, что если мы просто ищем кнопку «Обновить» в форме редактирования и отправляем ей событие Click (), то форма просто закрывается и фактически не вызывает обработчик события RadGrid_UpdateCommand.Это означает, что данные никогда не обновляются.

Мы рассмотрели примеры, предоставленные с Testing Framework, и есть пример с формой редактирования на месте, но ни один с всплывающей формой редактирования.Есть ли что-то особенное, что нам нужно сделать с настраиваемой всплывающей формой редактирования, чтобы получить строку для обновления, когда мы закончим с формой?

Любая помощь приветствуется,

Спасибо

1 Ответ

0 голосов
/ 14 декабря 2011

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

RadGrid grid = Find.ById ("RadGrid1" );GridDataItem firstRow = grid.MasteTable.DataItems [0];GridDataCell firstRowThirdCell = firstRow.DataCells [2];

// установить начальное значение Assert.IsTrue (firstRowThirdCell.CellText == "Chai", String.Format ("Ошибка подтверждения, ожидаемое значение {0}, фактическое {1}", "Chai", firstRowThirdCell.Текст_ячейки));HtmlAnchor firstRowEditButton = firstRow.Find.ById ("~ AutoGeneratedEditButton");

// перевести элемент в режим редактирования firstRowEditButton.Click ();Wait.For (myItem => myItem.Edited, firstRow, 5000);HtmlInputText productNameTbx = Find.ById ("~ ctl05_ctl09");productNameTbx.Value = "foo";

// обновить элемент GridEditForm editForm = Find.ById ("~ ctl05_ctl00");editForm.Update ();Wait.For (myItem =>! MyItem.Edited, firstRow, 5000);

// проверяем, обновлена ​​ли сетка.CellText));

Вы можете использовать его в качестве справочного материала и изменять его в соответствии с требованиями вашей веб-страницы / теста.В случае возникновения каких-либо дополнительных вопросов или трудностей, не стесняйтесь сообщить нам о них.

...