When Checkbox and RadioButton doesn't work using click()

Dahun Yoo·2021년 1월 11일
0
post-thumbnail

가끔가다, findElement().click() 으로 반응하지 않는 체크박스나 라디오버튼이 있는 경우가 있습니다.
그럴때는 JavascriptExecuter를 이용해서 실행해줍니다.

Checkbox

public void clickCheckbox(WebElement checkbox) {
        ((JavascriptExecutor) driver).executeScript("arguments[0].click();", checkbox);
    }

RadioButton

public void clickRadioButton(WebElement radiobutton) {
        ((JavascriptExecutor) driver).executeScript("arguments[0].checked = true;", radiobutton);
    }

클릭하고자 하는 체크박스나 라디오버튼이 여러개일 경우, 파라미터로 전달되는 WebElementList<WebElement> 의 형태라던지, 혹은 다른 형이 올 수 있기에 적절히 핸들링해줘야합니다.

또한 실행하는 javascript문법은, 세미콜론(;) 까지 같이 넣어주어야합니다.

profile
QA Engineer

0개의 댓글