У меня есть окно wfp, которое показывает список. В списке есть подкачки, поэтому, если это длинный список, я могу нажать «Далее» и посмотреть строки на стр. 2, 3, 4 и т. Д.Могу ли я принудительно обновить Assert?
У меня есть Assert, который устанавливает дату, указанную в каждой строке. Сначала я утверждаю дату в первой строке на первой странице (которая работает нормально), затем я утверждаю дату в первой строке страницы 2. Проблемы начинаются, когда я утверждаю первую строку страницы 2, она фактически утверждает первый строка на странице 1. Мой псевдо-код ...
// дата Утверждай на странице 1 ряд 1 действует/* WORKS OK */
// Нажмите кнопку Далее, чтобы перейти на страницу 2./*WORKS OK */
// дата Утверждай на странице 2 строки 1 справедлива/* ПРОБЛЕМА ЗДЕСЬ */
из любопытства, я изменил свое испытание, удаление первого Assert и заметил, что утверждают страницы 2, строка 1 начал работать ...
// Нажмите кнопку Далее, чтобы перейти к странице 2./* WORKS OK */
// дата Assert на странице 2 строки 1 действует/* WORKS OK */
Таким образом, код верен, и он может утверждать страницу 2, строка 1, но он может утверждать только один раз. По второму утверждению он удерживает результат от первого утверждения. Оба Asserts были созданы путем их записи. Когда я записываю второе утверждение, он использует то же свойство, что и при первом утверждении. Свойство читается только, поэтому я не могу найти способ его вымыть.
Я хочу, чтобы оба утверждения работали правильно, мой основной вопрос: как я могу несколько раз указывать в одном списке и получать последнее значение каждый раз? Я думаю, что ответ наступит, когда я выработаю, как записать второе утверждение, и либо заставить зарегистрированное утверждение не использовать одно и то же свойство, которое оно использовало для первого утверждения ИЛИ, иначе может быть способ сбросить старое значение до моего второе утверждение.
public void Assert_Alerts_TimestampOfTopRowValid_Page1()
{
#region Variable Declarations
WpfText uIItem04012017153411Text = this.UIOptimalMyClientShWindow.UIItemCustom1.UIItemCustom11.UIItem04012017153411Text;
#endregion
// Verify that the 'DisplayText' property is not null
Assert.IsNotNull(uIItem04012017153411Text.DisplayText, "Can\'t assert the timestamp of first alert");
}
public void Assert_Alerts_TimestampOfTopRowValid_Page2()
{
#region Variable Declarations
WpfText uIItem04012017153411Text = UIItem04012017153411Text;
\\I AM CONCERNED ABOUT WHY THIS IS RECORDED
\\WITH THE SAME VARIABLE AS THE LAST ASSERT.
\\HOW CAN I FLUSH THE VALUE OF THE VARIABLE
\\AND MAKE THE CODED UI TEST ASSERT IT AGAIN
\\OR RECORD WITH A DIFFERENT VARIABLE?
#endregion
// Verify that the 'DisplayText' property is not null
Assert.IsNotNull(uIItem04012017153411Text.DisplayText, "Alert Timestamp on page 2 not valid.");
}
Моя Собственность ...
private WpfText mUIItem04012017153411Text;
public WpfText UIItem04012017153411Text
{
get
{
if ((this.mUIItem04012017153411Text == null))
{
this.mUIItem04012017153411Text = new WpfText(this);
#region Search Criteria
this.mUIItem04012017153411Text.SearchProperties[WpfText.PropertyNames.AutomationId] = "TxtBlockAutoID10";
this.mUIItem04012017153411Text.WindowTitles.Add("MyApp");
#endregion
}
return this.mUIItem04012017153411Text;
}
}
Это работало отлично, хорошо сделано для того, чтобы помочь новичкам! – Ewan