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

Фотография

Проблема с выбором ссылки на странице


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

#1 Lenko

Lenko

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

  • Members
  • Pip
  • 12 сообщений
  • ФИО:Куланова Елена Владимировна

Отправлено 24 июня 2009 - 10:13

Что то не получается реализовать следующее: есть страница с кучей кликабельных заголовков новостей, они постоянно обновляются. Пытаюсь написать часть теста в которой происходит поиск одного (можно даже первого) заголовка и клик на него. Я пробовала getXPathCount, но что то не правильно указываю в пути к ссылкам.

хтмл страницы:
<div id="main" class="BD_R244">
	<div class="content">
		<div class="block_a block">
				<div class="title">
				</div>
				<fieldset>
					<div class="filter">
					</div>
					<div class="clear"> </div>
					<ul class="news_bloks">
						<li>
							<ul class="left_image70px">
								<li>
									<h1>
											<a href="/moskva/ru/news/view/?id=116493">Выпускные балы, прошедшие в российской столице минувшей ночью, не были омрачены происшествиями</a>
									</h1>
							</li>
						<li>
						</li>
				</ul>
			<div class="votes">
			</div>
	<div class="clear"> </div>
	<div class="border"> </div>
	</li>

  • 0

#2 Boltick

Boltick

    Специалист

  • Members
  • PipPipPipPipPip
  • 596 сообщений
  • ФИО:Алексей
  • Город:планета Земля

Отправлено 24 июня 2009 - 14:54

Что то не получается реализовать следующее: есть страница с кучей кликабельных заголовков новостей, они постоянно обновляются. Пытаюсь написать часть теста в которой происходит поиск одного (можно даже первого) заголовка и клик на него. Я пробовала getXPathCount, но что то не правильно указываю в пути к ссылкам.

хтмл страницы:

<div id="main" class="BD_R244">
	<div class="content">
		<div class="block_a block">
	<div class="title">
...
...
...



Извините, но мы не видим что вы пытались, и как вы пытались? - попытки в студию...

Вы пробовали искать объект через Selenium IDE?
  • 0
Алексей Булат
Про Тестинг

#3 Lenko

Lenko

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

  • Members
  • Pip
  • 12 сообщений
  • ФИО:Куланова Елена Владимировна

Отправлено 25 июня 2009 - 10:38

Извините, но мы не видим что вы пытались, и как вы пытались? - попытки в студию...

Вы пробовали искать объект через Selenium IDE?



Selenium IDE прописывает как click link="Выпускные балы, прошедшие в российской столице минувшей ночью, не были омрачены происшествиями"
А мне не нужна определенная новость.
Вот последнее, что сохранила:
$count = $this->selenium->getXPathCount('//div[@id="main"]/div[1]/div[2]/fieldset/ul/li/ul/li/h1');
$this->selenium->click($count);
$this->selenium->waitForPageToLoad(5000);

Признаю сразу - в пхп я не сильна, поэтому могла что то не так написать...
  • 0

#4 Lenko

Lenko

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

  • Members
  • Pip
  • 12 сообщений
  • ФИО:Куланова Елена Владимировна

Отправлено 25 июня 2009 - 13:07

Мб еще не понятно объяснила((
На странице есть линки, которые постоянно меняются. Нужно кликать по любой из этих линок, можно даже по первой, самое главное что бы не было привязки к одной линке..как сделать не знаю( бьюсь уже весь день рабочий(( сейчас придумала вариант: $this->selenium->click('xpath=//div[@id="main"]/ancestor::h1/link);
по хистори Selenium rc все очень даже проглотил:
click(xpath=//div[@id="main"]/ancestor::h1/link)
waitForPageToLoad(5000)

Но в результате как такового клика не было.
  • 0

#5 Boltick

Boltick

    Специалист

  • Members
  • PipPipPipPipPip
  • 596 сообщений
  • ФИО:Алексей
  • Город:планета Земля

Отправлено 25 июня 2009 - 13:43

Извините, но мы не видим что вы пытались, и как вы пытались? - попытки в студию...

Вы пробовали искать объект через Selenium IDE?



Selenium IDE прописывает как click link="Выпускные балы, прошедшие в российской столице минувшей ночью, не были омрачены происшествиями"
А мне не нужна определенная новость.
Вот последнее, что сохранила:
$count = $this->selenium->getXPathCount('//div[@id="main"]/div[1]/div[2]/fieldset/ul/li/ul/li/h1');
$this->selenium->click($count);
$this->selenium->waitForPageToLoad(5000);

Признаю сразу - в пхп я не сильна, поэтому могла что то не так написать...


первое, что пришло в голову:
- xpath... я когда в Selenium IDE кликаю на эту вашу ссылку, получаю вот такой xpath:

//div[@id='main']/div/div/fieldset/ul/li/ul/li[1]/h1/a

Но как я понял полная HTML страница немного сложнее чем та, что вы прислали. Поэтому появляются разные индексы в div - div[1]/div[2]

Советую внимательнее разобрать страницу на элементы и правильно построить XPATH к нужной ссылке...

второе:
я в ПХП тоже не силен, НО по моему getXPathCount('//div[@id="main"]/div[1]/div[2]/fieldset/ul/li/ul/li/h1'); вернет лишь кол-во ссылок, а не саму ссылку... т.е. вам надо поработать над кодом... В метод $this->selenium->click(...); вам надо передать именно ссылку, а не их число...

Вот...
  • 0
Алексей Булат
Про Тестинг

#6 BFox

BFox

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

  • Members
  • Pip
  • 16 сообщений
  • ФИО:Лисов Станислав

Отправлено 08 июля 2009 - 13:54

Пример с несколькими ссылками киньте, они скорее не в h1 же лежат, а в li.
Да, Boltick прав, вы получите только количество ссылок
  • 0

#7 Biasha

Biasha

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

  • Members
  • PipPip
  • 130 сообщений
  • Город:СПб

Отправлено 09 июля 2009 - 12:42

GetXpathCount даст вам количество элементов. Если хотите просто обратиться к элементу по XPath, то пропишите этот Xpath в качетсве локатора и радуйтесь. Еще можно вместо XPath использовать css, иногда удобнее.
  • 0
Молодой пожарный не боится пламя!


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

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