유닛 테스트 관리 보고서 생성 사용 사례

# 登录方法的封装

에서 appium 수입 webdriver
 에서 시간 가져 오기 에서 python_selenium.Slide의 수입 swipeLeft 

데프 (사용자, PWD) 로그인 :  = {
       " platformName " : " 안드로이드 " ,
       " 장치 이름 " : " 127.0.0.1:21503 " ,
       " platformVersion " : " 5.1.1 " ,
       "appPackage ": " com.yw.yzz " ,
       " appActivity " : " com.yw.yzz.biz.splash.SplashActivity " ,
       " unicodeKeyboard " : " " ,
       " resetKeyboard " : " " ,
       " noReset " : " 진정한 " 
      } 
    박사 = webdriver.Remote ( " http://127.0.0.1:4723/wd/hub " , 모자) 
    박사.implicitly_wait ( 10 )
    절전 ( 3 )
     시도 : 
        dr.find_element_by_id ( " com.yw.yzz : ID / iv_img " ) 
        수면 ( 2 )
     제외 : 
        dr.find_element_by_id ( " com.yw.yzz : ID / seting_tab " ) .click ()
     다른 사람 : 
        swipeLeft (DR, 3,1000 ) 
        수면 ( 1 ) 
        dr.find_element_by_id ( " com.yw.yzz : ID / btn_open " ) .click () 
        수면 ( 4 ) 
        dr.find_element_by_id ( "com.yw.yzz : ID / seting_tab " ) .click () 
    수면 ( 1 ) 
    dr.find_element_by_xpath ( ' //android.widget.TextView[@resource-id="com.yw.yzz:id/tv_name"] " ) .click () 
    EL2 = dr.find_element_by_id ( " com.yw.yzz : ID / et_phone " ) 
    el2.send_keys (사용자) 
    EL3 = dr.find_element_by_id ( " com.yw.yzz : ID / et_password " ) 
    el3.send_keys (PWD) 
    EL4 = dr.find_element_by_id ( " com.yw.yzz : ID / btn_login " ) 
    수면 ( 1 ) 
    EL4.딸깍 하는 소리()
    시도 : 
        dr.find_element_by_id ( " : ID / tv_phone com.yw.yzz " )
     제외 :
         인상 AssertionError를
     다른를 :
         패스 
    반환 박사
# 滑动方法封装

에서 시간 수입 슬립 

DEF swipeLeft (DR, N, t) 
    의 폭 = dr.get_window_size () " " ] 
    높이 = dr.get_window_size () " 높이 " ]
     에 대한 I 범위 (N) : 
        dr.swipe (폭 * 0.9, 높이 / 2 * 0.1 폭, 높이 / 2 , t) 
        수면 ( 1 ) 

DEF swipeUp (DR, N, t) 
    의 폭 = dr.get_window_size () " " ] 
    높이 = [() dr.get_window_size" 높이 " ]
     에 대한 I 범위 (N) : 
        dr.swipe (폭 * 0.5 * 0.9 높이, 폭 * 0.5 * 0.1 높이 , t) 
        수면 ( 1)
# 用例输出

에서 python_selenium.yyt_login의 수입 로그인
 에서 시간을 가져 수면
 수입 유닛 테스트 

클래스 YYT (unittest.TestCase) :
     데프 설정 (자동) : 
        self.driver = 로그인 ( " 1777982xxxx " , "X XXXXXX " ) 
        수면 ( 1 ) 
        EL1 = self.driver.find_element_by_id ( " com.yw.yzz : ID / iv_btn_setting " ) 
        el1.click을 () 

    DEF test_ChangeName (자기) : 
        EL2= self.driver.find_element_by_xpath ( " /hierarchy/android.widget.FrameLayout/android.widget.LinearLayout " ) 
        el2.click () 
        EL3 = self.driver.find_element_by_id ( " com.yw.yzz : ID / ll_updateinfo_name " ) 
        EL3 .click () 
        EL4 = self.driver.find_element_by_id ( " com.yw.yzz : ID / et_my_changemyname " ) 
        el4.clear () 
        el4.send_keys ( " XXXX " ) 
        EL5 = self.driver.find_element_by_id ( " com.yw. yzz : ID / top_right_tv "  )
        EL5.딸깍 하는 소리()

     DEF test_ChangeSex (자기) 
        self.driver.tap ([(0, 131), (1080,281), (500) ) 
        수면 ( 1 ) 
        self.driver.find_element_by_id ( " com.yw.yzz : ID / ll_updateinfo_gender " ) .click () 
        잠 ( 1 ) 
        self.driver.find_element_by_id ( " com.yw.yzz : ID / ll_choosegender_secret " ) .click () 
                
    데프 의 tearDown (자동) : 
        self.driver.back () 
        수면 ( 1 ) 
        el7 = self.driver.find_element_by_id ( " com.yw.yzz : ID / exit_btn" ) 
        el7.click ()
        el8 = self.driver.find_element_by_id ( " com.yw.yzz : ID / sure_button " ) 
        el8.click () 
        수면 ( 1 ) 
        self.driver.quit () 

경우  __name__ == ' __main__ ' : 
    unittest.main ()
# 일괄 작업의 경우, 및 리포트 생성 

오기 유닛 테스트
 오기 HTMLTestRunner의 

경로 = " D : \\ \\ python_selenium CodeFile의 work_doc \\ " 
의 TestCase = unittest.defaultTestLoader.discover (경로 패턴 = " case.py " , top_level_dir = 없음) 

YYTtestreport = " D : \\ testreport.html " 
열기 (YYTtestreport와 " WB " ) AS YYT : 
    러너 = HTMLTestRunner.HTMLTestRunner (YYT 제목 = " 시험 보고서 " 의 정보 = " 상세 보고서 " )
    runner.run (테스트 케이스)

추천

출처www.cnblogs.com/Mr-ZY/p/12038345.html