本系列文默認各位有一定的測驗理論基礎、python基礎
本系列文默認各位會百度,學習自動化系列的課程,默認各位已經配置好了相關環境,默認安裝了編譯器,
乘著冬日的寒風,在暴風雨中艱難的前行,自動化的第三天,我又姍姍來遲了

新來的朋友們,前面的知識點詳見,今天我們要講一下python讀取檔案的操作
https://blog.csdn.net/weixin_44602565/article/details/109561274
https://blog.csdn.net/weixin_44602565/article/details/110007436
1、讀txt檔案
這個很簡單,方法如下:
read()-------讀整個檔案
readline()-------一行
創建一個test.txt的檔案,檔案內容有用戶名,密碼
with open('./test.txt','r')as f:#------------------相對路徑打開這個檔案,以讀的方式打開
data=f.readlines()#-------讀檔案中的所有行的資料賦值給data,如果你接下來要用這些資料在進行登錄操作的話,就去遍歷一下data就行,自己寫一下吧
2、讀excel檔案
安裝openpyxl模塊,pip一下,自己去安裝
在本地創建一個test.xlsx的檔案
import openpyxl
wb=openpyxl.load_workbook('test_case_api.xlsx')#-------這里報錯找不到檔案的話,把檔案拖到你運行的目錄下哈,
查看運行的目錄
# import os
# os.getcwd()
打開完成以后,讀檔案
wb.sheetnames
# print(wb.sheetnames)
sheet=wb["register"]#這是我自己的檔案有注冊跟登錄兩個sheet頁
sheet.title
#這里的方法現在都用這個,以前的.get_by_name()棄用了
從表中讀取行和列,寫兩個for回圈遍歷一下,自己寫,
3、讀取csv檔案
匯入csv 庫,沒有的自己pip一下哦
import csv
with open('ceshi.csv',newline='',encoding='GBK')as f:
reader = csv.reader(f)
for row in reader:
print(row)
接下來重點來了,我們引入一下unittest的框架,主要還是便于我們查看日志,斷言,執行用例,
比如我們寫一個計算類,類里面有加法減法等不同的方法,創建一個calculator.py 的檔案
class Calculator:
def __init__(self,a,b):
self.a=int(a)
self.b=int(b)
def add(self):
return self.a+self.b
def sub(self):
return self.a-self.b
通過unnitest來寫我們的一個用例
import unittest
from calculator import Calculator
class Testcalculator(unittest.TestCase):
def test_add(self):
a=Calculator(2,3)
result=a.add()
self.assertEqual(result,5)
def test_sub(self):
a=Calculator(5,3)
result=a.sub()
self.assertEqual(result,2)
if __name__ == '__main__':
unittest.main()
unittest有幾個重要的組成:
Test case:最小的測驗單元
Test Suite:套件
Test Runner:查看結果的
Test Fixture:測驗環境
用上面的封裝一下,但是就是比上面還要麻煩了,但是在我們測驗的時候,如果你不是每次都執行所有的測驗用例,就要用套件
import unittest
from calculator import Calculator
class Testcalculator(unittest.TestCase):
def setUp(self):
print("測驗開始")
def tearDown(self):
print("測驗結束")
def test_add(self):
a=Calculator(2,3)
result=a.add()
self.assertEqual(result,5)
def test_sub(self):
a=Calculator(5,3)
result=a.sub()
self.assertEqual(result,2)
if __name__ == '__main__':
#創建測驗套件
suit=unittest.TestSuite()
suit.addTest(Testcalculator("test_add"))
suit.subTest(Testcalculator("test_sub"))
#測驗運行
runner=unittest.TextTestRunner()
runner.run(suit)
斷言的一些方法有很多,這里自行百度一下,今天不想寫了,后面接下來的一篇,我寫一個完整的框架出來吧,最后再用python 自動發一個郵件,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/229460.html
標籤:python
