【发布时间】:2021-12-24 19:02:40
【问题描述】:
我正在尝试使用 selenium 中的虚拟数据通过信用卡付款。 我遇到的问题是,当我手动运行我的 selenium 代码时,#document 不显示,它只在我刷新页面后显示,但是当我尝试在 selenium 中做同样的事情时,即使页面刷新了#文档不显示。
由 selenium 完成的 HTML:
<body class="script-body">
<div class="container"></div>
<script type="text/javascript"></script>
<iframe src="https://libs.hipay.com/hostedfields/index.html#type=card&element=controller&instanceId=200803&referrer=https://stage-secure-gateway.hipay-tpp.com" frameborder="0" allowtransparency="true" scrolling="no" width="0" height="0" name="hipay-controller-200803" title="hipay-controller-200803" id="hipay-controller-200803" data-hipay-id="hostedfield-iframe"></iframe>
</body>
当我手动操作时:
我的代码:
WebElement ClkPaiementByCard = driver.findElement(By.id("payed-cart"));
js.executeScript("arguments[0].click();", ClkPaiementByCard);
driver.findElement(By.className("script-body")).sendKeys(Keys.F5);
WebElement CardNumber = driver.findElement(By.xpath(
"//div[@id=\"root\"]/div/div/form/div/div/input[@name=\"cardnumber\"]"));
CardNumber.clear();
CardNumber.sendKeys("4111 1111 1111 1111");
WebElement ExpDate = driver.findElement(By.xpath(
"//div[@id=\"root\"]/div/div/input[@name=\"cc-exp\"]"));
ExpDate.clear();
ExpDate.sendKeys("05/24");
WebElement CVC = driver.findElement(By.xpath(
"//div[@id=\"root\"]/div/div/input[@name=\"cvc\"]"));
CVC.clear();
CVC.sendKeys("123");
WebElement SubmitPaiement = driver.findElement(By.id("submit-button"));
js.executeScript("arguments[0].click();", SubmitPaiement);
我尝试执行switchto().frame(),但它始终不起作用
【问题讨论】:
标签: java selenium xpath iframe webdriverwait