Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
can';t验证所选复选框,Selenium Webdriver Java_Java_Selenium Webdriver - Fatal编程技术网

can';t验证所选复选框,Selenium Webdriver Java

can';t验证所选复选框,Selenium Webdriver Java,java,selenium-webdriver,Java,Selenium Webdriver,在我的测试中,我想验证选中的复选框。下面是我的代码 if (CheckboxForFirstCitizenship.isSelected()) { System.out.println("Checkbox selected"); } else { System.out.println("Checkbox not selected"); } if (CheckboxForSecondCitizenship.isSelected()) {

在我的测试中,我想验证选中的复选框。下面是我的代码

if (CheckboxForFirstCitizenship.isSelected()) {
        System.out.println("Checkbox selected");
    } else {
        System.out.println("Checkbox not selected");
    }
    if (CheckboxForSecondCitizenship.isSelected()) {
        System.out.println("Checkbox selected");
    } else {
        System.out.println("Checkbox not selected");
    }
PageObjects类中的Web元素

@FindBy(xpath = "/html[1]/body[1]/ufe-root[1]/div[1]/div[1]/div[1]/ng-component[1]/div[1]/ufe-klient[1]/app-dashboard[1]/main[1]/div[1]/div[2]/app-individual-client-edit-container[1]/app-process-container[1]/app-local-loader[1]/div[1]/div[3]/app-individual-client-edit-client-data[1]/app-form-container[1]/p-accordion[1]/div[1]/p-accordiontab[1]/div[2]/div[1]/div[2]/div[1]/app-form-data-set-container[1]/div[1]/div[1]/app-individual-client-edit-personal-data-form[1]/app-data-container[1]/div[1]/div[2]/app-container-state[1]/div[1]/form[1]/div[1]/div[8]/div[1]/div[1]/app-individual-client-edit-citizenship-form[1]/div[2]/p-checkbox[1]/div[1]/div[2]")
@CacheLookup
public WebElement CheckboxForFirstCitizenship;

@FindBy(xpath = "/html[1]/body[1]/ufe-root[1]/div[1]/div[1]/div[1]/ng-component[1]/div[1]/ufe-klient[1]/app-dashboard[1]/main[1]/div[1]/div[2]/app-individual-client-edit-container[1]/app-process-container[1]/app-local-loader[1]/div[1]/div[3]/app-individual-client-edit-client-data[1]/app-form-container[1]/p-accordion[1]/div[1]/p-accordiontab[1]/div[2]/div[1]/div[2]/div[1]/app-form-data-set-container[1]/div[1]/div[1]/app-individual-client-edit-personal-data-form[1]/app-data-container[1]/div[1]/div[2]/app-container-state[1]/div[1]/form[1]/div[1]/div[8]/div[1]/div[2]/app-individual-client-edit-citizenship-form[1]/div[2]/p-checkbox[1]/label[1]")
@CacheLookup
public WebElement CheckboxForSecondCitizenship;

在测试结果中,我有两个打印行“未选中复选框”,尽管选择了第一个复选框。我做错了什么?有人能帮忙吗

<p-checkbox _ngcontent-c26="" binary="true" class="control__hint ng-untouched ng-pristine ng-valid ng-star-inserted" label="Główne" id="main-citizenship-checkbox-0" style="" xpath="1">
    <div class="ui-chkbox ui-widget">
        <div class="ui-helper-hidden-accessible">
            <input type="checkbox" name="undefined" value="undefined">
        </div>
        <div class="ui-chkbox-box ui-widget ui-corner-all ui-state-default ui-state-active"><span class="ui-chkbox-icon ui-clickable pi pi-check"></span></div>
    </div>
    <!---->
    <label class="ui-chkbox-label ui-label-active ng-star-inserted">Główne</label>
</p-checkbox>

Główne

要能够使用
isSelected
方法,您必须向
输入类型=“checkbox”
元素寻址。
对第一个复选框使用css选择器
#main-citizensity-checkbox-0输入。
第二个可能是
#main-citizensity-checkbox-1输入

@FindBy(css = "#main-citizenship-checkbox-0 input")
@CacheLookup
public WebElement checkboxForFirstCitizenship;

共享文本格式中复选框的HTML。我将xpath更改为css,这是正确的。谢谢你的帮助。