Assert.AreEqual () не распознает динамически обновляемые значения - PullRequest
0 голосов
/ 08 сентября 2010

У меня есть приложение, в котором вы выбираете область карты и наши изменения в прейскуранте товаров (в зависимости от площади, размера и т. д.)

Итак, в моем тесте я использую runScript () для вызова метода JS, лежащего в основе карта, цены обновляются, и я делаю простую проверку цены, которая установить ala Assert.AreEqual (priceValue, selenium.GetText (priceElement));

Я использую RC и C # для запуска тестов.

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

Я уверен, что проблема в том, что проверка выполняется до того, как цена обновляется, однако, если я помещаю в selenium.WaitForPageToLoad () в какое бы значение оно ни истекло.

Учитывая, что вызываемый мной скрипт выбирает область на карте и обновляет цена плюс я могу видеть это на экране, почему не могу мой тест?

Ответы [ 2 ]

1 голос
/ 09 сентября 2010

Thread.sleep (5000) - это не лучший метод, потому что ваши тесты будут выполняться медленно. Вы должны попробовать waitForElementPresent лучше

0 голосов
/ 08 сентября 2010

Довольно простой ответ.

Время ожидания WaitForPageToLoad истекло, поскольку скрипт не вызывает загрузку страницы.

Таким образом, использование thread.Sleep (5000) дает элементу возможность обновить, а затем выполнить Assert, чтобы он работал.

...