Приветствую всех!
Я не являюсь носителем английского языка, поэтому извините за мою честную грамматику.
Selenium - это фреймворк для тестирования веб-приложений в разных браузерах.Я хочу попросить людей, которые используют Selenium, за любую помощь.Я спрашивал людей из Google Selenium Group, но никто не помог мне.
Я работаю над проектом с помощью мыши, используя Selenium Webdriver.Я пишу тесты на C #.Когда моя команда начала использовать Selenium Webdriver, мы заметили, что действия мыши (OpenQA.Selenium.Interactions.Actions) ведут себя несколько неожиданно в IE и работают по-разному в разных браузерах (и даже на разных машинах).Впервые я был единственным тестером, который работал с мышью.Я обвинял Selenium Webdriver и пытался найти способ избежать этой неточности.Я долго занимался этой проблемой, но безрезультатно.Но я не хочу тратить ваше время на предысторию.
Хорошо, позвольте мне описать ситуацию.Мы создали демонстрационный проект: простую страницу с.И мы реализовали возможность рисовать на этом холсте, удерживая левую кнопку мыши.Поэтому я надеюсь, что это довольно ясно для вас.
Следующим важным моментом является то, что мы включили запись в консоль.То есть мы можем увидеть координаты стрелки мыши внутри холста, открыв консоль.
Затем мы написали тест:
Actions a = new Actions(driver);
a.Build();
a.MoveToElement(canvas, 100, 100)
.ClickAndHold()
.MoveByOffset(100, 0)
.Release();
a.Perform();
Код довольно прост.Просто переместите стрелку мыши на холст, затем сместите стрелку мыши на (100, 100), а затем двигайте вертикально на 100 (удерживая левую кнопку мыши).Как вы понимаете, результат в логах должен быть (200, 100).
Но вот самое интересное: у моих коллег тот же результат (200, 100)!Но у них была неточность 1 месяц назад (поэтому мы подумали, что действия мыши работают неточно).И у меня все еще есть неточный результат: (192, 96).Таким образом, существует ошибка 4px на 100px смещения.Мои коллеги не понимают, что они изменили и почему действия мыши теперь или они работают правильно.
Еще одна интересная вещь заключается в том, что визуально (я напоминаю вам, что мы можем рисовать на холсте) это абсолютно 100px(мы держим кнопку мыши при перемещении стрелки мыши вертикально)!Удивительно!
Итак, это эксперимент.
Я прошу всех подходящих людей помочь мне с этой проблемой.Появляется только в IE9.И я хочу понять причину такого поведения.Как реализован класс Actions?Может это зависит от драйвера мыши или что-то в этом роде?В этом случае, если это имеет значение, я использую беспроводную мышь, и у нее есть специальный драйвер.Пожалуйста, помогите мне!
PS Я пытался изменить настройки моей мыши, настройки моего экрана, но безрезультатно.
Спасибо!
С уважением, Михаил Калыгин.