이 기사는 원래 TestProject에서 출판되었습니다. Sitepoint를 가능하게 한 파트너를 지원해 주셔서 감사합니다.
키 포인트
예 : 태그 이름을 사용하여 제공하는 태그 이름과 일치하는 많은 수의 요소를 모두 선택할 수 있습니다. 동일한 유형의 많은 요소를 선택 해야하는 경우에만 작동하기 때문에 제한된 사용입니다. 다음 예제는 샘플 HTML에서 4 개의 div 요소를 모두 반환합니다.
<code class="language-html"><div id="main-menu"> <div class="menu"><a href="https://www.php.cn/link/7878b14e9d762184301b06f3f609ead7">Home</a></div> <div class="menu"> <a href="https://www.php.cn/link/f775ec264c01adf8189da19ec86676fe">Shop</a> <div class="submenu"> <a href="https://www.php.cn/link/f775ec264c01adf8189da19ec86676fe/gizmo">Gizmo</a> <a href="https://www.php.cn/link/f775ec264c01adf8189da19ec86676fe/widget">Widget</a> <a href="https://www.php.cn/link/f775ec264c01adf8189da19ec86676fe/sprocket">Sprocket</a> </div> </div> </div></code>
<code class="language-python">driver.find_elements(By.TAG_NAME, "div")</code>프로 단점 사용하기 쉽습니다. 널리 사용되지 않습니다 경우에 따라 매우 제한된 사용이 적용되지 않을 수 있습니다.
<code class="language-python">driver.find_elements(By.LINK_TEXT, "Home") driver.find_elements(By.PARTIAL_LINK_TEXT, "Sprock")</code>권장 : xpath
<code class="language-html"><div id="main-menu" name="menu"></div></code>
예 : 부모 요소를 선택 해야하는 경우 XPath를 선택해야합니다. 다음 방법은 다음과 같습니다.이 예를 사용하여 앵커 요소를 기반으로 부모 메인 메뉴 요소를 찾으려고한다고 가정 해 봅시다 :
단점 IE에서 부모 요소를 선택할 수 있습니다 매우 보편적 인 학습 곡선은 약간 가파르게 많은 온라인 지원
권장 : id 및 클래스
단점
관리하기 쉽게 개발자가 변경되어 자동화를 중단 할 수 있습니다
페이지 구조 변경에 의해 최소한의 영향을 받기 쉬운
최고 : CSS 선택기의 사용자 정의 속성과 결합
QA 조직이 개발 팀과 좋은 협업 관계를 유지하면이 모범 사례 접근 방식을 자동화에서 사용할 수있을 것입니다. 사용자 정의 속성 및 CSS 선택기를 사용하여 요소를 찾으면 QA 팀 및 조직에 여러 가지 이점이 있습니다. QA 팀의 경우 자동화 엔지니어는 복잡한 요소 선택기를 만들지 않고 필요한 특정 요소를 찾을 수 있습니다. 그러나 자동화 팀이 애플리케이션에서 사용할 수있는 사용자 지정 속성을 추가 할 수있는 기능이 필요합니다. 이 모범 사례 접근 방식을 활용하려면 개발 및 QA 팀이 함께 협력 하여이 전략을 구현해야합니다.
<code class="language-html"><div id="main-menu">
<div class="menu"><a href="https://www.php.cn/link/7878b14e9d762184301b06f3f609ead7">Home</a></div>
<div class="menu">
<a href="https://www.php.cn/link/f775ec264c01adf8189da19ec86676fe">Shop</a>
<div class="submenu">
<a href="https://www.php.cn/link/f775ec264c01adf8189da19ec86676fe/gizmo">Gizmo</a>
<a href="https://www.php.cn/link/f775ec264c01adf8189da19ec86676fe/widget">Widget</a>
<a href="https://www.php.cn/link/f775ec264c01adf8189da19ec86676fe/sprocket">Sprocket</a>
</div>
</div>
</div></code>
프로
<code class="language-html"><div id="main-menu">
<div class="menu"><a href="https://www.php.cn/link/7878b14e9d762184301b06f3f609ead7">Home</a></div>
<div class="menu">
<a href="https://www.php.cn/link/f775ec264c01adf8189da19ec86676fe">Shop</a>
<div class="submenu">
<a href="https://www.php.cn/link/f775ec264c01adf8189da19ec86676fe/gizmo">Gizmo</a>
<a href="https://www.php.cn/link/f775ec264c01adf8189da19ec86676fe/widget">Widget</a>
<a href="https://www.php.cn/link/f775ec264c01adf8189da19ec86676fe/sprocket">Sprocket</a>
</div>
</div>
</div></code>
"*="의 목적은 모든 요소의 TID 필드에서 "-Link"값에 대한 와일드 카드 검색을 수행하는 것입니다. 메인 메뉴 내에서 요소의 검색 범위에 초점을 맞춘 #Main-Menu ID 지정자 다음에 넣으십시오. <code class="language-python">driver.find_elements(By.TAG_NAME, "div")</code>
프로
CSS 선택기 사용자 정의 속성은 CSS의 강력한 기능으로 개발자가 속성 값을 기반으로 요소를 선택하고 스타일을 선택할 수 있습니다. 이것은 공개 속성을 공유하지만 동일한 태그 이름이나 클래스를 공유하지 않는 요소에 특정 스타일을 적용하려는 경우에 특히 유용합니다. 예를 들어, 사용자 정의 속성 선택기를 사용하여 태그 이름이나 클래스에 관계없이 "활성"데이터 속성으로 모든 요소를 스타일링 할 수 있습니다.
예, 모든 속성과 함께 CSS 선택기 사용자 지정 속성을 사용할 수 있습니다. 여기에는 "클래스"및 "ID"와 같은 표준 HTML 속성과 요소에 추가 한 사용자 정의 데이터 속성이 포함됩니다.
CSS 선택기 사용자 정의 속성은 다른 많은 CSS 선택기보다 유연성이 더 커집니다. 다른 선택기는 태그 이름, 클래스 또는 ID를 기반으로 요소를 선택하는 것으로 제한되지만 사용자 정의 속성 선택기는 모든 속성에 따라 요소를 선택할 수 있습니다. 따라서 복잡한 웹 페이지를 설정하는 강력한 도구가됩니다. CSS 선택기 사용자 정의 속성이란 무엇입니까? 를 사용합니다. 그런 다음 원하는 스타일을 이러한 요소에 적용 할 수 있습니다.
[]
[data-active]
CSS 선택기 사용자 정의 속성은 작성해야 할 CSS의 양을 줄임으로써 웹 사이트 성능을 향상시키는 데 도움이 될 수 있습니다. 속성을 기반으로 요소를 선택하면 각 요소에 대해 별도의 CSS를 쓰지 않고도 한 번에 여러 요소에 스타일을 적용 할 수 있습니다. 이를 통해 CSS를보다 효율적이고 유지 관리하기 쉽게 만들 수 있습니다.
예, 다른 선택기와 함께 CSS 선택기 사용자 지정 속성을 사용할 수 있습니다. 예를 들어, 클래스 선택기와 함께 사용자 정의 속성 선택기를 사용하여 특정 클래스 및 특정 속성을 가진 요소 만 선택할 수 있습니다.
CSS 선택기 사용자 정의 속성은 일반적으로 상태 또는 함수를 기반으로 요소를 스타일링하는 데 사용됩니다. 예를 들어, 사용자 정의 속성 선택기를 사용하여 모든 장애인 버튼 또는 필수 폼 필드를 스타일링 할 수 있습니다. 또한 데이터 테마 속성에 따라 다른 스타일을 적용하여 테마 설정에 사용할 수 있습니다.
CSS 선택기 사용자 정의 속성은 다른 CSS 선택기와 어떻게 비교됩니까?
위 내용은 CSS 선택기 및 사용자 정의 속성으로 프로젝트를 업그레이드하십시오의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!