一、mock實現
自定義一個類,用來模擬未完成部分的開發代碼
1 class Say(): 2 3 def say_hello(self): 4 pass
自定義返回值
1 import unittest 2 from unittest import mock 3 from d4231 import Say #自定義類的py文件名,say為類名 4 5 class TestSay(unittest.TestCase): 6 def test_say(self): 7 s = Say() 8 #return_value定義方法的返回值 9 s.say_hello=mock.Mock(return_value="還沒有開發完成先然后這個吧") 10 #無論s.say_hello()是否傳參,mock返回的都是上面已設定的值 11 result = s.say_hello() 12 13 try: 14 self.assertEqual(result,"還沒有開發完成先然后這個吧") 15 print("成功,result=",result) 16 except AssertionError as e: 17 print("失敗",str(e)) 18 19 # unittest.main #默認執行以test開頭的方法 20 ts = TestSay() 21 ts.test_say()
二、webservice實現
Python處理webservice
1 from suds.client import Client 2 3 ws_url = "http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx?wsdl" 4 Client = Client(ws_url) 5 # print(Client) 6 #如果有多個參數可以以key=value形式編寫,qqOnlineWebServiceSoap為服務名,qqCheckOnline為方法名 7 resulte = Client.service["qqOnlineWebServiceSoap"].qqCheckOnline(qqCode="809773385") 8 print(resulte) 9 10 #如果只有一個參數可以這樣編寫 11 resulte = Client.service.qqCheckOnline("809773386") 12 print(resulte)
三、webdriver模擬手機瀏覽器
1 from selenium import webdriver 2 from time import sleep 3 #設置 4 mobileEmulation = {'deviceName': 'iPhone 6'} 5 options = webdriver.ChromeOptions() 6 options.add_experimental_option('mobileEmulation', mobileEmulation) 7 #啟動driver 8 # driver=webdriver.Chrome(executable_path='chromedriver.exe', chrome_options=options) 9 driver=webdriver.Chrome(chrome_options=options) 10 #訪問百度wap頁 11 driver.get('http://m.baidu.com') 12 sleep(3) 13 driver.quit()