Работа с пользовательскими всплывающими формами редактирования в Telerik Testing Framework

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

Всем привет,

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

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

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

Спасибо

1 ответ

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

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.CellText)); 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);

// проверяем, что сетка обновлена. Assert.IsTrue(firstRowThirdCell.CellText == "foo", String.Format("Ошибка подтверждения, ожидаемое значение {0}, фактическое {1}", "foo", firstRowThirdCell.CellText));

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

Другие вопросы по тегам