python自動化測試框架unittest+讀取excel文件內容

寫在前面:本人測試小白,自動化更是還沒入門,業務邏輯也是爲所欲爲而分,如有高手路過,還望指點一二,不勝感激。php

第一部分python

==================================================================================web

1.先對各業務進行封。chrome

browser模塊負責瀏覽器以及登陸的輸入的操做;瀏覽器

controlBussiness模塊負責登陸成功或失敗與否的判斷;測試

excleReader模塊從excle文件中讀取相關數據;.net

test模塊負責測試用例。如圖:命令行

2.先實現一個自動登陸(本人用的是方維p2p相關項目),代碼在browser模塊中實現code

from selenium import webdriver
from excleReader.ExcleReader import ExcleReader

class Browser:
    def __init__(self,cUrl="http://192.168.201.135/fw/m.php"):
        self.cUrl = cUrl
        self.chromeB =  webdriver.Chrome()

    def inputUrl(self):
        self.chromeB.get(self.cUrl)

    def inputUser(self):
        self.chromeB.find_element_by_name("adm_name").send_keys("admin")
        self.chromeB.find_element_by_name("adm_password").send_keys("admin")
        self.chromeB.find_element_by_name("adm_verify").send_keys("888")
        self.chromeB.find_element_by_id("login_btn").click()

3.在test模塊進行登陸測試blog

from browser.Browser import Browser

class Test:
        browser = Browser()
        browser.inputUrl()
        browser.inputUser()

4.這樣就能實現一個自動登陸的腳本

第二部分

==================================================================================

下面實現從excle文件中讀取登陸用戶名和密碼

1.先下載好xlrd包並解壓,命令行,進入setup.py所在的目錄,運行setup.py install。 具體安裝:https://my.oschina.net/bysu/blog/783887

2.excleReader模塊的代碼

import xlrd  #導入xlrd包

class ExcleReader:
    def __init__(self,strPath="c:\\data.xlsx"):  
        self.strPath = strPath
    def readExcle(self,sheet,row,col):
        workEx = xlrd.open_workbook(self.strPath)
        sheetEx = workEx.sheet_by_index(sheet)
        cellValue = sheetEx.cell_value(row,col)
        return cellValue

    def getValue(self,sheet,row,col):
        return self.readExcle(sheet,row,col)

3.修改browser模塊的代碼

from selenium import webdriver
from excleReader.ExcleReader import ExcleReader

class Browser:
    def __init__(self,cUrl="http://192.168.201.135/fw/m.php"):
        self.cUrl = cUrl
        self.chromeB =  webdriver.Chrome()

    def inputUrl(self):
        self.chromeB.get(self.cUrl)

    def inputUser(self,sheet,row,col):
        # self.chromeB.find_element_by_name("adm_name").send_keys("admin")
        # self.chromeB.find_element_by_name("adm_password").send_keys("admin")
        self.chromeB.find_element_by_name("adm_name").send_keys(ExcleReader().getValue(sheet,row,col))
        self.chromeB.find_element_by_name("adm_password").send_keys(ExcleReader().getValue(sheet,row,col+1)) #在用戶名的下一列
        self.chromeB.find_element_by_name("adm_verify").send_keys("888")
        self.chromeB.find_element_by_id("login_btn").click()

4.在test模塊進行登陸測試

from browser.Browser import Browser

class Test:
        browser = Browser()
        browser.inputUrl()
        browser.inputUser(0,1,0) #讀取excle表格中第一個表的第2行,第1列

 

5.這樣就能實現一個從excle表格中讀取數據並自動登陸的腳本

 

第三部分

================================================================================

1.到controlBussiness模塊實現登陸狀況的判斷

a.登陸成功過

未完待續======

相關文章
相關標籤/搜索