資料驅動測試例項

2021-08-18 19:10:59 字數 3620 閱讀 2237

資料驅動的形式有很多種:

1.定義變數的方式

2.定義陣列、字典的方式

3.讀取檔案(txt\csv\xml)的方式

1、通過定義變數方式進行引數化

public.py

class login():

def user_login(self,driver,username,password):

driver.find_element_by_xpath("//input[@name='email']").clear()

driver.find_element_by_xpath("//input[@name='email']").send_keys(username)

driver.find_element_by_name("password").clear()

driver.find_element_by_name("password").send_keys(password)

driver.find_element_by_id("dologin").click()

def user_logout(self,driver):

driver.find_element_by_link_text("退出").click()

driver.quit()

mailtest.py

from selenium import webdriver

from public import login

class logintest():

def __init__(self):

self.driver=webdriver.firefox()

self.driver.implicitly_wait(10)

self.driver.get("")

def test_admin_login(self):

username='admin'

password='123'

login().user_login(self.driver,username,password)

self.driver.quit()

def test_guest_login(self):

username='guest'

password='321'

login().user_login(self.driver,username,password)

self.driver.quit()

logintest().test_admin_login()

logintest().test_guest_login()

2、通過定義陣列的方式進行引數化

from selenium import webdriver

search_text=['python','中文','text']

for text in search_text:

driver=webdriver.firefox()

driver.implicitly_wait(10)

driver.get("")

driver.find_element_by_id('kw').send_keys(text)

driver.find_element_by_id('su').click()

driver.quit()

3、通過讀取txt檔案的方式進行引數化

python提供了以下讀取txt檔案的方法:

read():讀取整個檔案

readline():讀取一行資料

readlines():讀取所有行的資料

user_info.txt

zhangsan,123

lisi,456

wangwu,789

user_info.py

user_file=open('user_info.txt','r')

lines=user_file.readlines()

user_file.close()

for line in lines:

username=line.split(',')[0]

password=line.split(',')[1]

print(username,password)

4、通過讀取csv檔案的方式進行引數化

csv_read.py

import csv

date=csv.reader(open('info.csv','r'))

#迴圈輸出每一行資訊

for user in date:

print(user)

#迴圈輸出第二列資料

for user in date:

print(user[1])

5、通過讀取xml檔案的方式進行引數化

info.xml

<?xml version="1.0" encoding="utf-8"?>

windows

firefox

北京

廣東深圳

珠海浙江

杭州

from xml.dom import minidom

#開啟xml文件

dom=minidom.parse('info.xml')

#得到文件元素物件

root=dom.documentelement

print(root.nodename)

print(root.nodevalue)

print(root.nodetype)

print(root.element_node)

#獲得任意標籤名

tagname=root.getelementsbytagname('browser')

print(tagname[0].tagname)

#獲得標籤的屬性值

tagname=root.getelementsbytagname('login')

username=tagname[0].getattribute("username")

print(username)

password=tagname[0].getattribute("password")

print(password)

username=tagname[1].getattribute("username")

print(username)

password=tagname[1].getattribute("password")

print(password)

#獲得標籤對之間的資料

provinces=root.getelementsbytagname('province')

citys=root.getelementsbytagname('city')

p2=provinces[1].firstchild.data

c1=citys[0].firstchild.data

c2=citys[1].firstchild.data

print(p2)

print(c1)

print(c2)

資料驅動測試技術

資料驅動測試的概念 資料驅動測試是從資料檔案 excel 文字檔案 xml 檔案 或者資料庫 中讀取測試資料,然後通過變數傳入指令碼中,既可以當測試資料的輸入 也可以當輸出資料的驗證。測試資料在檔案中,測試指令碼負責邏輯業務過程 測試狀態以及資料檔案讀取 資料驅動的測試適用於對相同流程進行大資料量測...

QTP 資料驅動測試

1.資料驅動測試方法 資料驅動測試方法要解決的核心問題是把資料從測試指令碼中分離出來,從而實現測試指令碼的引數化。資料驅動測試通常按以下步驟進行 1 引數化測試步驟的資料,繫結到資料 中的字段。2 編輯資料 在 中編輯多行測試資料。3 設定迭代次數,選擇資料行。在qtp中,可以使用多種方式來對測試指...

資料驅動測試概念?

什麼是測試資料生成?我們如何產生它?在我們測試過程中往往需要測試我們場景更加的充分,而建立資料測試。測試資料報括輸入輸出,對輸出的自動化驗證等。建立測試資料的方法 1.手動 2.從生產到測試環境的大量資料拷貝 3.自動測試資料生成工具 為什麼需要資料驅動測試?1.測試應該建立自己的場景資料 2.自由...