错误:需要使用单选按钮 select.have 三个单选按钮 buttons.need 到 select appropriate.but 来建议 selenium 出现错误

BAD : need suggest on selenium using radio button select.have three radio buttons.need to select appropriate.but getting error

我正在开发一个门户网站,我们可以在其中通过三个单选按钮 select 凭证类型。它不工作:我收到一个错误。

import java.util.concurrent.TimeUnit;
import org.apache.log4j.Logger;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;

public class Vouchertest {

    public static void main(String[] args) {

        WebDriver driver=new FirefoxDriver();
            Logger log = Logger.getLogger("devpinoyLogger");
        driver.get("url");
            log.debug("entring username");
            driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
        driver.findElement(By.xpath("//*[@id='UserName']")).sendKeys("xoxo");
            log.debug("entering password");
        driver.findElement(By.xpath("//*[@id='Password']")).sendKeys("Password123");
            log.debug("Clicking login");
        driver.findElement(By.xpath("//*[@id='loginForm']/form/div[4]/div/input")).click();
        log.debug("Clicking voucher");
        driver.findElement(By.xpath("html/body/nav/div[2]/div[2]/ul/li[2]/a")).click();
        log.debug("Clicking create_voucher");
        driver.findElement(By.xpath("//*[@id='main']/a[1]")).click();
        **log.debug("Clicking voucher_type");
        driver.findElement(By.cssSelector("input[value='card']")).click();

    }

}

这是 html 代码:

<input id="VoucherType" type="radio" value="Corporate" name="VoucherType">
<label for="Corporate_Certificate">Corporate Certificate</label>
<input id="VoucherType" type="radio" value="Card" name="VoucherType">
<label for="Gift_Card">Gift Card</label>
<input id="VoucherType" type="radio" value="Adv" name="VoucherType">
<label for="Advanced_Payment">Advanced Payment</label>

这是踪迹:

Exception in thread "main" org.openqa.selenium.NoSuchElementException: Unable to locate element: {"method":"css selector","selector":"input[value='card']"}
Command duration or timeout: 30.12 seconds

我可以立即在您的 css 选择器中看到的一个问题是在 html 代码中您的值为 Card(C 是大写)但在定位器中,您在简单情况下传递值 card

请尝试以下定位器:

Css 选择器:input[value='Card']

Xpath : //input[@value='Card']

如果这不起作用,请检查您是否在 iframe 中包含这些单选按钮。如果是这样,您必须先切换到 iframe。

在您的 HTML 代码中,"Card" 以大写字母开头,而在您的 Java 代码中,它是这样写的:"input[value='card']"