【自動化測試】搭建一個簡單從Excel讀取用例內容並輸出結果的腳本


# -*- coding:utf-8 -*-
from selenium import webdriver
import xlrd
import xlwt
from xlutils.copy import copy
import time

class Batchauto:
    def __init__(self,x,y):
        self.x = x
        self.y = y
        
    def auto_brower(self):
        #打開瀏覽器
        open_brower = webdriver.Chrome()
        url = "http://xxxxx"
        open_brower.get(url)
        
        #讀取文件
        read_file = r"C:\Users\admin\Desktop\py\auto\auto_denglu.xls"
        book = xlrd.open_workbook(read_file)
       #sheet的表格中,已經命名sheet為“denglu”
        read_file_sheet = book.sheet_by_name("denglu")
        
        #獲取文件內容
        user_value = read_file_sheet.cell_value(self.x,self.y)
        pwd_value = read_file_sheet.cell_value(self.x,self.y+1)
        
        #填寫內容
        time.sleep(2)
        open_brower.find_element_by_id("userName").send_keys(user_value)
        open_brower.find_element_by_id("password").send_keys(pwd_value)
        open_brower.find_element_by_id("submit").click()
        
        time.sleep(5)
        
        #判斷登錄成功后是否有該元素存在
        try:
            open_brower.find_element_by_xpath("//a[@href='user/confirm.jsp?userName=XXX']")
            tag = u"登錄成功"
        except:
            tag = u"登錄失敗"    
        
        print tag
        
        #填寫文件內容,xlrd只有只讀沒有只寫,所以,需要用過xlutils的copy獲得寫的能力,xlutils相當於xlrd和xlwt的通道
        book_rw = copy(book)
        book_rw_sheet = book_rw.get_sheet("denglu")
        book_rw_sheet.write(self.x,self.y+2,tag)

        book_rw.save(read_file)

        time.sleep(2)
        open_brower.close()        

if __name__ == "__main__":
    #只需要定位X、y的初始位置即可   
    for x in range(0,3):
        y = 0
        ba = Batchauto(x,y)
        ba.auto_brower()

最后Excel結果顯示為:

 


免責聲明!

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



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