3

현재 페이지에 올바른 제목 아이콘이 표시되는지 확인해야합니다. 우리는 귀하가 사이트에있는 위치에 따라 아이콘을 변경하고 이에 대해 확인해야합니다.Robot Framework - Selenium2library - 페이지의 Favicon 확인

나는

Page Should Contain Image /bin/icons/1.ico 

을 시도

우리가 사용하는 HTML이 : 내가 사용해야 뭔가 다른

<link rel="shortcut icon" type="image/x-icon" href="/bin/icons/1.ico"/> 

키워드가 작동하지 않았다 ..이 있습니까? 또는 셀렌이 이런 종류의 테스트를 수행하는 것을 지원하지 않습니까?

+1

당신이 [가져 오기 요소 속성] (http로 속성 'href'의 값을 얻는 시도를 : //robotframework.org/Selenium2Library/Selenium2Library.html#Get%20Element%20Attribute)? –

+0

페이지 내에 표시되지 않는 무언가의 위치 표시자를 어떻게 얻을 수 있습니까? 브라우저 탭에 표시됩니다. – Goralight

+0

잘 모르겠습니다. 그게 당신이 알아 내려고 시도한 것인지 묻는 것입니다. –

답변

0

알아 냈습니다. 기본적으로 문제의 링크 태그의 href를 가져 와서 "문자열과 동일해야 함"키워드를 사용하여 비교합니다. 나는 그것을 더 빨리 풀었을 것이다. 그러나 아이콘 링크 태그는 첫 번째 링크 태그가 아니었다. 다음은 제가 사용했던 라인입니다 :

${Favicon1} = Get Element Attribute //link[2]@href 
Should Be Equal As Strings ${Favicon1} http://localhost:8080/bin/icons/1.ico 

올바른 방향으로 나를 밀어 주신 Bryan Oakley에게 많은 감사를드립니다. 일부 사이트는 여전히 rel="shortcut icon" (위키 피 디아 링크에서 자세한 내용 위)를 사용하지만

+0

두 가지 이유로 그렇게하지 마십시오. 첫째, 아마도 두 번째 링크 요소를 원했지만 향후 버전이나 빌드에서 쉽게 변경 될 수 있습니다. 둘째, xpath에서 인덱싱은 관계보다 우선 순위가 더 높습니다. 따라서 로케이터는 실제로 "부모의 두 번째 자식 인 링크를 얻습니다."(처음에는 직관적이지는 않지만 신뢰합니다. :). – Todor

1

According to the currently applied standards는 파비콘을 설정하는 올바른 방법은, rel="icon" 속성을 가진, 링크 태그를 통해입니다. 이 XPath는 모두 다룹니다

${loc}= xpath=//link[@rel="link" or @rel="shortcut icon"] 

, 그 가치를 일반 robotframework 방식 사용하려면 :

${favicon}= Get Element Attribute  ${loc}@href 
+0

나는 Xpath를 정말로 이해하기 전에이 질문을 통해 질문하고 대답했다 - 나는 동의한다 - 나의 반응은 매우 직관력이 없었다;). 나는 Favicon이 포함 된 Link를 찾고 예상되는 링크와 비교한다고 말하려고 노력하고 있었다. 귀하의 답변은 제 답변보다 분명하고 명확합니다. – Goralight

+0

기꺼이 @Goralight. Btw, 솔루션에서, 나는 "동등해야 함"이 아니라 오히려 포함시켜야하고 호스트 이름 다음에 경로를 찾아야한다고 제안합니다 - "/bin/icons/1.ico"; 따라서이 경우는 다른 환경/배치에도 적용될 수 있습니다. – Todor