我正在使用Java Selenium在影院网站上进行自动化测试 当我选择电影时,我想选择电影的位置 然后我有一个画布对象,我不知道为电影选择一个随机的地方 以下是表格中的代码:
<div class="seatplanControl">
<div class="screen">
<div id="SeatPlanContainer" style="direction:ltr;">
<div id="panzoom-parent" style="padding: 0px; height: 464.25px; width:
761.508px; overflow: hidden; position: relative;">
<canvas id="myCanvas" class="panzoom" style="background-color:
rgb(212, 212, 212); touch-action: pan-y; -moz-user-select:
none; transform: matrix(1, 0, 0, 1, 0, 2.325); transform-
origin: 50% 50% 0px; cursor: pointer; transition: none 0s ease
0s ;" height="475" width="787"/>
</div>
</div>
你能帮我解决一下这种情况的代码吗? 在这一刻,我使用这个解决方案:
WebElement element = driver.findElement(By.xpath("//div/div/div/canvas[@id='myCanvas']"));
Actions builder = new Actions(driver);
builder.moveToElement(element, 10, 25).click().build().perform();`
但它每次都不起作用,因为当选择一个随机电影时,我收到了画布对象的不同警戒线
`
答案 0 :(得分:1)
你已经确定了基于webelement的坐标。
WebElement element = driver.findElement(By.xpath("//div/div/div/canvas[@id='myCanvas']"));
Point point = element.getLocation();
int xcord = point.getX();
int ycord = point.getY();
Actions builder = new Actions(driver);
builder.moveToElement(element, xcord, ycord).click().build().perform();