2014-06-13 3 views
1

저는 Dojo를 사용하는 제품의 자동화 작업을하고 있습니다. 나는 매우 지저분와 함께 일하고 있어요 HTML은 .. 내가 CSS를 선택클래스 목록이 많은 요소의 셀레늄 CSS 선택기

div.dijit.dijitReset.dijitInline.dijitLeft.dijitTextBox.dijitComboBox.dijitDateTextBox.dijitValidationTextBox.dijitTextBoxError.dijitComboBoxError 다음과 같은 것을 DIV 클릭해야 .dijitDateTextBoxError.dijitValidationTextBoxError.dijitError

나는 파이어 폭스에서 firefinder 플러그인을 사용하고 있으며, 요소를 항상 볼 수있는 나는 (CSS 선택기 테스터 및 CSS와 XPath는 검사기) 첫 번째가 2 크롬 플러그인에서 하나는 요소를 찾을 수 있습니다.

셀레늄 코드를 실행하면 org.openqa.selenium.NoSuchElementException이됩니다.

.[class=".."]으로 클래스를 선택하려고 시도했지만 모두 실패했습니다.

요소를 보지 못하기 전에 요소에 할당 할 수있는 클래스 수에 대한 셀레늄 제한이 있습니까? 테스트를 수행하기 위해 어떤 안정적인 접근 방식을 사용할 수 있습니까?

+2

에 도움이 될 것입니다, 내 추측은 프레임 또는 iframe의 내부와 상호 작용하려는 요소이다. – Richard

+0

@ 리차드가 언급했듯이이 코드를 보면 우리가 당신을 도울 수 있습니다. – Purus

+0

좋아, 내가 알아 낸 것 같아 .. 그래서 내가 사용하는 브라우저 플러그인은 요소를 강조하기 위해 다른 클래스를 추가하고 한번 클래스의 목록 위에 다른 클래스를 추가하고 어떻게 든 나는 그것을 놓친 한 번 그것을 선택합니다. . 그래서 내 자신의 질문에 대답 .. 클래스 목록에는 limitatins 또한 브라우저 도구 요소를 찾는 데 도움이 될 수 있지만 일부 이상한 문제를 일으킬 수있는 요소별로 없다 .. 바로 당신의 도움을 주셔서 감사합니다! – Gino

답변

1

firefox에서 FirePath 플러그인을 사용하고 고유 한 클래스를 찾아 고유 선택기가 1 개만 있어야합니다. 또한 CSS 선택기를 찾아, 그들이 HTML을 보지 않고 장기적으로

http://www.w3schools.com/cssref/css_selectors.asp