#의 demo.py의
수입 요청을 가져올 JSON의 클래스 RunMain을 : 데프 __init__ (자기, URL, 방법, 데이터 = 없음) : self.data = 데이터 self.url = URL의 self.method = 방법 self.res = self.run_main () DEF url_post (자기) : 고해상도 = requests.post (URL = self.url, 데이터 = self.data) .json () 반환 고해상도 DEF : url_get (자기) 고해상도를Requests.get는 = (= self.url의 URL은 데이터 = self.data) .json은 () 반환 고해상도 #의 JSON 데이터는 고해상도의 반환 #을 들여 노출 들여 #의 sort_keys을 일종의 # 반환 json.dumps (고해상도, 들여 쓰기 = 2, sort_keys 진정한 =) #이 방법을 재 포장,이 게시물을 수행하고 요청을받을 DEF ) 자기 (run_main : RES = 없음 IF self.method == ' 가져 오기 ' : RES = self.url_get () 다른 : RES = self.url_post ( ) 반환입술 경우 __name__ == " __main__ " : url_p = " https://easy-mock.com/mock/5d0cce9536b12b2b2e62adc7/example/upload " 데이터 = { " 안녕하세요 " : " 세계 " , " botoo " : " 123 " } url_g = " https://easy-mock.com/mock/5d0cce9536b12b2b2e62adc7/example/query " g = RunMain (url_g," GET" )가 .RES 인쇄 (g) P = RunMain은 (url_p, " POST " 데이터 = 된 데이터) .RES 인쇄 ) (p
# Unittest-test.py 가져 오기는 유닛 테스트 에서 데모 가져 오기 RunMain 가져 오기 HtmlTestRunner의 클래스 TestMethod (unittest.TestCase) : #의 클래스 메소드는 @classmethod DEF setUpClass (CLS) : 인쇄 ( " 실행 방법 클래스 전에 " ) @classmethod DEF tearDownClass을 (CLS) : 인쇄 ( " 클래스 실행 후 방법 " ) #은 각 방법은 실행하기 전에 DEF : 설정 (셀프) 인쇄 ( " 설정" ) 데프 test_01 (자동) : url_p = " https://easy-mock.com/mock/5d0cce9536b12b2b2e62adc7/example/upload " 데이터 = { " 안녕하세요 " : " 세계 " , " botoo " : " 123 " } 고해상도 = RunMain은 (url_p, " POST " , 데이터) .RES #의 인쇄 (고해상도) 자체.assertIn ( "undefined_http " , STR (입술 [ ' 데이터 ' ])) 전역 () ' IMG ' = 입술 [ ' 데이터 ' ] [ ' IMG ' ] # 加入缓存 DEF test_02 (자기) 인쇄 (IMG) url_g = " HTTPS : //easy-mock.com/mock/5d0cce9536b12b2b2e62adc7/example/query " 고해상도 = RunMain은 (url_g, " GET " ) .RES (self.assertEqual를 "HAH ", RES [ ' 데이터 ' ] [ ' 이름 ' ]) #에 인쇄 (RES) @ unittest.skip DEF test_03 (자기) 전단 (IMG) # 방법이 이후에 수행 될 때마다 DEF 의 tearDown (자기) 인쇄 ( " 의 tearDown " ) IF __name__ == " __main__ " : "" " # 방법 하나 unittest.main () " "" "" " 두 번째 방법 # : # 실행이 선박에 추가 된 제품군 = unittest.TestSuite () suite.addTest (TestMethod ( "test_01")) suite.addTest (TestMethod ( "test_02")) suite.addTest (TestMethod ( "test_03")) unittest.TextTestRunner (). RUN (스위트) "" " " "" # 방법 세 가지 : #은 시험 보고서에 추가, 모든 케이스 수행 (HtmlTestRunner.HTMLTestRunner의 TestRunner = (출력 = 'example_dir')) unittest.main "" " " "" : # 네 #는 선박을 수행, 시험 보고서에 추가가 추가 된 케이스 = 스위트 unittest.TestSuite () suite.addTest (TestMethod ( "test_01")) suite.addTest (TestMethod ( "test_02")) suite.addTest (TestMethod ( "test_03")) 의 TestRunner HtmlTestRunner.HTMLTestRunner = (출력 = 'example_dir') testRunner.run (스위트) "" "