селен, доступ к функции mouseMove js - PullRequest
4 голосов
/ 31 марта 2012

Я использую Selenium для оценки видео.

Источник страницы для рейтинга:

<img src="/images/largeRating0.png"
    alt="Rating"
    title="Choose a rating then click to submit"
    class="clickable"
    id="ratingImage"
    onmousemove="rEngine.mouseMove( event, this );"
    onclick="rEngine.ratingSubmit( event, this );" />

Я даю параметры в коде для Selenium так:

selenium.open(url);
selenium.click("id=ratingImage");

Он делает процесс и дает оценку тоже, но он дает только 1 звезду за каждый рейтинг, который я делаю!

Рейтинг для 5 звезд, и когда mouseover сделан на изображении рейтинга, он дает /images/largeRating1.png; /images/largeRating2.png; /images/largeRating3.png; и т. Д.

Каждое изображение содержит количество звезд.

По умолчанию, как указано выше, это <img src="/images/largeRating0.png" ...

Есть ли какой-нибудь процесс доступа к Javascript для получения желаемых результатов?

1 Ответ

1 голос
/ 03 апреля 2012

Если я правильно понимаю, нужно нажать кнопку мыши и переместить ее?Если это так, то это должно помочь:

selenium.dragAndDrop("id=ratingImage","+100,0");

... или некоторая комбинация selenium.mouseOver() и selenium.mouseDownAt().

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

selenium.getEval("rEngine.mouseMove(dontknowwhat, window.document.getElementById('ratingImage'));");
...