Unittest框架和WebDriver


Unittest框架和WebDriver

 Unittest

 Unittest的使用

 1  import unittest
 2  
 3  class Test1(unittest.TestCase):
 4      @classmethod
 5      def setUpClass(self):
 6          print("execute setUpClass")
 7  
 8      @classmethod
 9      def tearDownClass(self):
10          print("execute tearDownClass")
11  
12      def setUp(self):
13          print("execute setUp")
14  
15      def tearDown(self):
16          print("execute tearDown")
17  
18      def test_one(self):
19          print('execute test_one')
20          self.assertTrue('FOO'.isupper())
21  
22      def test_two(self):
23          print('execute test_two')
24  
25  
26  if __name__ == '__main__':
27      unittest.main()

 

 

 

 

模擬鍵盤鼠標移動

鍵盤:

dd.find_element_by_....(...).send_keys(Keys.ENTER) 點擊Enter

.......................................(Keys.BACK_SPACE) 點擊BACK_SPACE

.......................................(Keys.CONTROL,"a") 全選

.......................................(Keys.CONTROL,"c") 復制

.......................................(Keys.CONTROL,"v") 粘貼

.......................................(Keys.CONTROL,"x") 剪切

鼠標:

ActionChains(dd).double_click(定位到的一個具體頁面控件).perform() 雙擊

.................context_click................................... 右鍵

.................move_to_element................................. 光標懸停懸浮

1 #雙擊
2 ActionChains(dd).double_click(dd.find_element_by_xpath(".//*[@id='s-menu-1']/button")).perform()
3 #右鍵
4 ActionChains(dd).context_click(dd.find_element_by_xpath(".//*[@id='s-menu-1']/button")).perform()
5 #光標懸停懸浮
6 ActionChains(dd).move_to_element(dd.find_element_by_xpath(".//*[@id='s-menu-1']/button")).perform()

滾動條:

滾動條拖到底部

js="var q=document.documentElement.scrollTop=10000"

dd.execute_script(js)

滾動條拖到頂部

js="var q=document.documentElement.scrollTop=0"

dd.execute_script(js)

1  js="var q=document.documentElement.scrollTop=10000"
2  dd.execute_script(js)
3  time.sleep(3)
4  js="var q=document.documentElement.scrollTop=0"
5  dd.execute_script(js)

 

文件處理

文件:

打開一次只能讀或者寫,不能同時進行

ff=open("文件名","打開方式")

 

ff.write("寫入內容")

w+: 如果文件不存在,新建一個寫,如果文件存在,新建一個覆蓋

a+: 如果文件不存在,新建一個寫,如果文件存在,在文件末尾追加 【焦點默認在最后】

r+: 如果不文件不存在,報錯,如果文件存在,從前往后覆蓋

 

ff.read(數字):讀數字個字符 【從當前焦點開始】

ff.read():讀所有內容 【從當前焦點開始】

ff.readline():讀一行 【從當前焦點開始】

ff.readlines():讀所有行 list類型,每一行都是list內的元素 【從當前焦點開始】

 

ff.tell(): 返回當前焦點位置

ff.seek(數字):焦點跳轉到數字位置

 

ff.close() :關閉

csv文件:

import csv:

讀:

 1 ff=open("aaa.csv","r+") #打開csv文件
 2 cr=csv.reader(ff,dialect="excel")
 3 
 4 cr:文件內容,循環獲取每一行內容
 5 
 6 for c in cr:
 7 
 8 print(c)
 9 
10 ff.close() #關閉

 

寫:

1  ff=open("bbb.csv","w+") #創建csv文件
2  cw=csv.writer(ff) #創建csv文件寫加載器
3  
4  cw.writerow(寫入內容) #通過加載器寫數據到csv文件
5  
6  ff.close() #關閉

 

測試報告

 1  import unittest
 2  from HTMLTestRunner import HTMLTestRunner
 3  
 4  import test11
 5  
 6  suite=unittest.TestSuite() #創建測試套件對象
 7  loader=unittest.TestLoader()#創建測試用例加載器對象
 8  suite.addTest(loader.loadTestsFromModule(test11))#通過用例加載器加載用例到測試套件
 9  
10  ff=open("testReport.html","wb+") #創建測試報告文件
11  #創建HTMLTestRunner對象
12  runer=HTMLTestRunner(stream=ff,title="然之測試", description="然之測試然之測試然之測試然之測試")
13  runer.run(suite) #通過HTMLTestRunner對象執行測試用例
14  ff.close() #關閉報告文件

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM