당신은 "getAttribute를"방법을 사용할 수 있습니다, 그것은 "NULL"반환하는 경우가 더 속성이 전혀 없다는 것을 의미합니다 ...
문서 :
WebElement.getAttribute(attributeName) → Thenable<(string|null)>
요소의 지정된 속성 값을 쿼리하는 일정을 예약합니다. 페이지가로드 된 후 수정 된 경우에도 현재 값을 반환합니다. 보다 정확하게는,이 메소드는, 속성이 존재하지 않는 한, 지정된 속성의 값을 돌려줍니다.이 경우, 같은 이름을 가지는 프롭퍼티의 값이 돌려 주어집니다. 어느 쪽의 값도 설정되어 있지 않은 경우, null가 돌려 주어집니다 (예를 들어, textarea 요소의 「value」프롭퍼티). "스타일"속성은 뒤 따르는 세미콜론이있는 텍스트 표현에 가장 적합하게 변환됩니다. 예를 들어
:
HTML 코드 : Nodejs에서
<div id="a" >1</div>
<div id="a" x="xxx" >2</div>
<div id="a" x >3</div>
테스트 코드 :
var webdriver = require('selenium-webdriver');
var capabilitiesObj = {
'browserName' : 'firefox'
};
var driver = new webdriver.Builder().withCapabilities(capabilitiesObj).build();
driver.get('http://localhost/customer.js/temp/index60.html');
driver.findElements(webdriver.By.css('div[id=a]')).then((elements) => {
elements[0].getAttribute('x').then((att)=> {
console.log(att);
});
}).catch(console.log.bind(console));
driver.quit();
다를 수 있습니다 각 사업부에 대한 결과 :
for div 1: null
for div 2: 'xxx'
for div 3: ''
그는 Selenium & Selenium IDE로 태그를 달았지만 질문은 IDE 솔루션을 요구하고있었습니다. – DMart