Selenium의 자동화된 테스트 및 기능 사용에 대해서는 인터넷에 너무 많은 기본 튜토리얼이 있으므로 여기서는 하나씩 나열하지 않겠습니다. 다른 튜토리얼이나 공식 웹사이트를 참조하세요. 이 글에서는 주로 웹 자동화 테스팅의 솔루션 설계와 편집자가 개인적으로 생각하는 어려움에 대해 논의합니다.
아래와 같이 백그라운드 자동화 테스트 프레임워크를 기반으로 합니다(이 그림 웹 파트 확장된 아키텍처의 다른 부분은 회사 기밀과 관련되어 그림에 표시되지 않음), 셀레늄 확장, 셀레늄 기반 페이지 객체 식별 확장, 재시도 이중 지연 대기 시간 메커니즘을 도입하여 식별 성공률을 향상시켰습니다. 페이지 작업 모듈은 페이지 작업을 균일하게 구현합니다. 하나의 함수는 하나의 작업을 구현하므로 각 페이지 작업의 독립성을 보장합니다. 따라서 이후 버전에서 다양한 실행 단계 조합을 추가해야 하는 경우 내부의 함수만 호출하면 됩니다.
데이터 수집 모듈은 데이터베이스 데이터 수집 모듈, 페이지 데이터 수집 모듈, 웹 애플리케이션 로그 데이터 수집 모듈의 세 가지 레이어로 구분됩니다. 이런 방식으로 팀의 다양한 구성원을 쉽게 구성할 수 있으며, 누구나 자신이 가장 잘하는 모듈을 구현하고 신속하게 통합할 수 있습니다.
웹 자동화 테스트의 가장 큰 수요는 브라우저 호환성 테스트이므로 테스트를 위한 프레임워크 설계에서 고려해야 합니다. 여러 브라우저. 블로거의 계획은 설정된 테스트 케이스를 각 브라우저 인스턴스에 넣고 하나씩 순차적으로 실행하는 것입니다. 페이지 요소 정의 및 분석 많은 회사의 웹 개발자가 구현하는 코드가 표준화되어 있지 않기 때문에 어려움이 있습니다. 그럼에도 불구하고 자동화된 테스트를 구현할 때 가독성과 유지 관리성이 너무 낮기 때문에 모든 사람은 CSS와 xpath를 사용하여 정의하는 것을 피해야 합니다. ID, 이름, 클래스 이름을 사용하여 정의해 보세요. ID, 이름, 클래스 이름이 없는 일부 요소에 해당하는 경우 find_elements_by_tag_name을 사용한 다음 해당 속성을 구문 분석하여 요소를 찾거나 find_element_by_xpath(".."), find_element_by_xpath("../..")를 사용하여 상위 요소를 찾으십시오. 또는 우수한 요소.
beatuifulsoap을 사용하여 구문 분석
Beatuifulsoap은 강력한 구문 분석 기능으로 인해 많은 크롤러에서 사용됩니다. 계획에 따라 크롤러의 기능이 충족되면 자동화된 테스트에 대한 모든 요구 사항도 물론 충족될 수 있습니다. 블로거는 find_element_by_xx(table_id).get_attribute('innerHTML')과 beatuifusoup를 결합했습니다. 현재 프로젝트에는 구문 분석하고 찾을 수 없는 요소가 거의 없습니다. 예를 들어 특정 동적 ID 또는 이름의 경우 먼저 퍼지 일치를 사용합니다. beatuifulsoap. 그런 다음 다른 속성을 구문 분석하여 ID 또는 이름을 찾은 다음 find_element_by_xx를 호출하면 완벽한 위치 지정 솔루션을 얻을 수 있습니다. 엄마는 더 이상 개발자가 아이디나 이름값을 안 써줄까 걱정하지 마세요
[추천 강좌: Python video tutorial]
위 내용은 웹 자동화 테스트 (3) Selenium+beatuifulsoup의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!