파이썬 + 유닛 테스트 프레임 워크 배치 실행 케이스의 유닛 테스트 넷째 날

  이 같은 장면에 볼륨 실행 예를 들어 오늘 :

우리는 이러한 파일은 비즈니스 또는 기능 테스트 케이스의 파일 유형에 따라 서로 다른 모듈에 분산 된 여러 모듈 파일 (평)를 가질 수 작동합니다. 이전 작은 예를 들어, 우리가 테스트 케이스 파일에있는, 테스트 스위트를 실행 - 개발 또는이 시운전 단계의 직접 무대 것은 잘못이 아니라, 테스트 실행 단계, 우리는이 모듈을 파일 처리 할 수없는 경우 유스 케이스를 완료 한 후, 다른 실시 예로 상기 스위칭 모듈을 계속한다. 시험 배치 파일은 여러 개의 모듈을 수행 할 수 그래서 우리는 사용해야합니다.

 

우선, 제 1 실시 형태 인 경우에는 모듈이다 -

1 개  가져 오기 유닛 테스트                #의 라이브러리 유닛 테스트에 수입 
2  에서 셀레늄 가져 오기 webdriver     #의 가져 오기 webdriver에서 테스트 셀레늄을 자동화 
3  
4  클래스 baidu_test_1 (unittest.TestCase가) :    #이 baidu_test_1의 클래스를 작성, 유닛 테스트에서 상속의 TestCase 클래스 
5  
6      @classmethod         #은 우리의 직접적인을 촉진 객체의 호출은 직접 클래스가 인스턴스화 호출 할 필요는 없습니다 
7.      DEF 설치 (CLS) :      # 방법을 수행하기 위해, 모든 경우를 수행하기 전에 초기화되어 
8.          cls.driver webdriver.Chrome = ()     #이 webdriver 객체를 인스턴스화 
9.          CLS를. driver.maximize_window ()       #브라우저 창 최대화 
(10)          cls.driver.implicitly_wait을 (15)     #의 페이지 로딩 속도가 느린, 우리는 15 초 동안 기다리는 긴 시간을 설정 
11          cls.driver.get를 (R ' http://www.baidu.com ' )      # 개방 바이 홈 페이지 
(12)가된다  
(13)가된다      @classmethod
 14      DEF 다음의 tearDown (CLS)      #이 방법의 실행 모든 경우를 수행 한 후 
15          cls.driver.quit ()      #은 브라우저습니다 
(16)  
. (17)      '' '를 테스트하라 ' '' 
18 인      DEF의 test_baidu_lianjie (자기) :     # 바이 링크 테스트 사용 사례 
(19)는          '' ' 바이두 홈 : 테스트 뉴스 링크를 점프 주소 뒤에 링크가 올바른지 ' '' 
(20)         self.driver.find_element_by_link_text ( ' 뉴스 ' ) .click ()   #의 뉴스 링크를 클릭 얻을 뉴스 링크 : self.driver.current_url 
21          self.assertEqual (self.driver.current_url, ' http://news.baidu.com / ' )    # 실제 비교를 취득한 링크 및 링크와는 동일한 참조하지 않다 
(22)는  
23가된다  ' '' '의 경우 __name__ == 파일 직접 평 런타임 경우 :이 __name__ =='__main__ '수단이 ; __main__ '코드 블록에서 실행되는
 24  블록 __main__'운전시 아닌 경우 평 __name__ == 파일은 모듈화 된 형태로 도입 할 때 때 '이. '' ' 
25  IF  __name__ == ' __main__ ' :
 26 인      unittest.main (다변 = 2)

다음 코드 모듈의 제 2 실시 예이다 :

 

1 개  반입 유닛 테스트
 2  에서 셀레늄 수입 webdriver
 3  
4  클래스 : baidu_test_2 (unittest.TestCase)
 5      @classmethod
 6      데프 설정 (CLS)
 7          cls.driver = webdriver.Chrome ()
 8          cls.driver.maximize_window ()
 9          cls.driver .implicitly_wait (15 )
 (10)          cls.driver.get (R ' http://www.baidu.com ' )
 11  
12      @classmethod
 13      데프 의 tearDown (CLS)
 14         cls.driver.quit ()
 (15)  
(16)      DEF는 (자체)를 test_baidu_enabled :
 . 17          SO = self.driver.find_element_by_id ( ' 킬로와트 ' )     #의 확인 요소가 사실, 편집 할 수 있습니다) (is_enabled 리턴으로 편집 할 수있는 경우 
(18)는          self.assertTrue ( so.is_enabled ())    # 은 바바라 사실 ~에 의해 것을 다음, true를 돌려주는 경우 
(19).  
(20)은      DEF test_baidu_sousuo (자동) :
 (21)는          = self.driver.find_element_by_id (SO ' 킬로와트가 ' )
 (22)이다          (so.send_keys ' 안녕하세요 중국 ' )   # 입력 코드 입력 상자 위를 선택 : send_keys () 
23입니다         self.driver.find_element_by_id ( ' SU ' ) .click ()    # 클릭 동작을 시뮬레이션의 Click ()는 
24          인쇄 (so.get_attribute ( ' ' ))      # 얻을 값 get_attribute 양식 속성 ( '값')에 따라 
25          self.assertEqual (so.get_attribute ( ' ' ), ' 안녕하세요 중국 ' )        # 우리가 값을 사용할 수, 우리는, 비교를 할 것으로 기대 값이 있는지 여부 같은 볼 
(26)  
(27)  만약에  __name__ == ' __main__ ' :
 28      unittest.main (상세 = 2)

 

참고 : TEST_를 시작하고 두 개의 테스트 케이스의 전면에 모듈 파일 이름 : 테스트 모듈의 이름, 통합 앞, 그림을 필요로

다음 모듈은 코드, 배치 실행 예제와 코드 모듈의 마지막 파일입니다 :

. 1  가져 오기 유닛 테스트     # 유닛 테스트 도입 
 가져 오기 운영 체제의        #의 가져 오기 라이브러리의 OS가 파일 경로에 대한 접근을 용이하게하기 위해, 이전에 배운 
3.  
4.  DEF ALLTESTS을 ()
 . 5      . Unittest.TestLoader 스위트 = () 발견 (             # 인스턴스화 테스트 스위트 
. 6          start_dir을 =을 os.path .dirname ( __FILE__가 ),          #의 start_dir가 =이 파라미터는 저가 인 () 메소드는, 후자의 파라미터는 예 모듈 경로 일괄 요구된다 
. (7)          패턴 = ' 테스트 _ *. Py를 ' ,                          #의 패턴 =이 파라미터는 저가 인 () 메소드 수행 될 모든 이들 파라미터에 따른다 대신 평 파일 번호의 후반 * TEST_ 실시 예이다 
8         = 없음 top_level_dir)                           # top_level_dir =이 매개 변수는 () 메소드, 고정 포맷 발견입니다 : top_level_dir = 없음 
. 9      반환 스위트                                      #은 테스트 스위트를 다시 기억 
10  
. 11  DEF RUN () :                                            #의 실행 
(12)는      unittest.TextTestRunner (상세도 = 2) .RUN (ALLTESTS ())            #의 시험 보고서 
(13)가  
14  IF  __name__ == ' __main__ ' :
 15      RUN ()

배치 실행이 같은 ~ ~ ~ ~

요약 :

1, 요소 여부 # 체크가) (is_enabled, 당신은 반환이 True 편집 할 수있는 편집 할 수 있습니다 그렇지 않으면 Flase입니다 
함께 상자에 입력에서, 2 : send_keys ()
3 버튼 조작을 클릭하면 사용할 수 있습니다 클릭을 ()
4, get_attribute 재산은에 따라 콘텐츠 검색 등의 형태 ( '값')의 값을 얻기 위해
현재 페이지의 주소를 얻기 위해 5, URL 링크 : driver.current_url 우리는 오른쪽 페이지 이동 여부를 확인하는
라이브러리 unitest 사용 6, 배치 실행 사례 디스 커버 (start_dir는 = '테스트 패턴 TestLoader () 클래스 *의 평은'top_level_dir = 없음) 방법은

세 개의 매개 변수가있는 것을 알 수있다을 발견하는 다음 모두 바이 휠 자기 학습을위한 ~~~

start_dir는 : 이름 또는 검사 모듈 디렉토리를 테스트합니다.
패턴 = '테스트 *의 평은': 실시 예들의 원리와 일치하는 파일 이름을 나타낸다. 별표 "*"는 문자의 수를 의미한다. (시험 *의 평은 시험의 시작이다)
top_level_dir = 없음 : 테스트 모듈의 최상위 디렉토리. 더 최상위 디렉토리 (즉, 다중 레벨 디렉토리에 테스트 케이스 없음)이없는 경우, 기본값은 없음입니다.
원본 링크 : HTTPS : //blog.csdn.net/weixin_40569991/article/details/81155145
------------- 자기 연구의 요약, 우리는 ~, 친구, 온 가을 ~~~~~ 진행과 함께 메시지를 남길 수 없습니다 아프면, 계절의 변화에 ​​쉽게 관심을 돕고 싶어 ~ ~ ~ ~ 스틱 가을 지방

 

추천

출처www.cnblogs.com/woshidaliua/p/11397346.html