Перейти к содержимому

Фотография

Проблемы Selenium RC 0.9.2 с ExtJS 2.2


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 4

#1 Anthony_BY

Anthony_BY

    Новый участник

  • Members
  • Pip
  • 29 сообщений
  • Город:Минск

Отправлено 13 октября 2008 - 17:44

Иметься Validation Edit Box написанный на ExtJS.
Значения типа string принимает без проблем, c помощью стандартной функции Selenium.Type.
Но когда Box ожидает значения типа int. А ему подаёшь “555” string. (Selenium.Type(string locator, string value):void) – не имеет override для int.

Когда то в таких случаях помогала хака:

public static void EnterValueIntoValidationBox(string locator, string value)
		{
			Context.SeleniumInstance.Type(locator, "");
			for (int index = 0; index < value.Length; index++)
			{
				Context.SeleniumInstance.KeyPress(locator, value[index].ToString());
				Context.SeleniumInstance.KeyUp(locator, "4");
			}
		}

1. Имеються ли в Selenium RC beta 1. специальные методы для работы c ExtJS?
2. Как можно обойти проблему с int?
Буду очень благодарен за советы.
  • 0

#2 popo_kid

popo_kid

    Активный участник

  • Members
  • PipPip
  • 79 сообщений

Отправлено 13 октября 2008 - 18:10

1. Имеються ли в Selenium RC beta 1. специальные методы для работы c ExtJS?
2. Как можно обойти проблему с int?
Буду очень благодарен за советы.

1. Что вы подразумеваете под специальными методами? Используйте JS (http://selenium-rc.openqa.org/js.html) для написания тестов и сможете спокойно работать с фреймворком ExtJS. Ну или используйте Eval, для выполнения нужного JS кода.
2. Сдается мне что вам надо использовать TypeKeys, а не Type для работы с работы с вашим инпутом.
Поясню в чем разница, Type - просто изменяет значение атрибута value посредством JS, при этом могут не сработать ивенты на которые повешена валидация. TypeKey - по честному генерит JS ивенты нажатия кнопок и валидатор должен сработать.

Тестирование с Selenium RC
  • 0

#3 Anthony_BY

Anthony_BY

    Новый участник

  • Members
  • Pip
  • 29 сообщений
  • Город:Минск

Отправлено 13 октября 2008 - 19:37

1. Что вы подразумеваете под специальными методами? Используйте JS (http://selenium-rc.openqa.org/js.html) для написания тестов и сможете спокойно работать с фреймворком ExtJS. Ну или используйте Eval, для выполнения нужного JS кода.
2. Сдается мне что вам надо использовать TypeKeys, а не Type для работы с работы с вашим инпутом.
Поясню в чем разница, Type - просто изменяет значение атрибута value посредством JS, при этом могут не сработать ивенты на которые повешена валидация. TypeKey - по честному генерит JS ивенты нажатия кнопок и валидатор должен сработать.
Тестирование с Selenium RC

Благодарю вас за ответ.
Насколько я понимаю Rhino я не смогу использоваться, так как весь наш фреймворк для автоматизации написан на C#
Selenium.TypeKey по каким то причинам тоже не помог. Остаётся надеяться на Eval :)

p.s. на Вашем сайте "Тестирование с Selenium RC" ecnm RSS подписка?
  • 0

#4 Anthony_BY

Anthony_BY

    Новый участник

  • Members
  • Pip
  • 29 сообщений
  • Город:Минск

Отправлено 14 октября 2008 - 13:23

Проблема решилась очень не ожиданно.
Validation Edit Box, менял атрибут @class по которому я привязывался в зависимости от типа, и пришлось просто переписать XPath, с использованием TypeKeys. (ещё раз спасибо за совет!)
Эх невнимательность :crazy:
  • 0

#5 vitorg

vitorg

    Опытный участник

  • Members
  • PipPipPipPip
  • 408 сообщений

Отправлено 14 октября 2008 - 13:31

Проблема решилась очень не ожиданно.
Validation Edit Box, менял атрибут @class по которому я привязывался в зависимости от типа, и пришлось просто переписать XPath, с использованием TypeKeys. (ещё раз спасибо за совет!)
Эх невнимательность :crazy:

Да, что неудивительно, ведь JS не имеет строгой типизации и приводит параметры налету, поэтому в драйвере Selenium практически везде используется String.
  • 0


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных