1. 程式人生 > >Python ddt讀取CSV文件數據驅動

Python ddt讀取CSV文件數據驅動

tex 測試 response reader with clas name app 讀取csv文件

import csv
import unittest
from time import sleep

from ddt import ddt, data, unpack
from selenium import webdriver


def getCsvData():
# 讀取CSV文件
value_rows = []
with open(‘./TextData.csv‘, encoding=‘UTF-8‘) as f:
f_csv = csv.reader(f)
next(f_csv)
for r in f_csv:
value_rows.append(r)
return value_rows

@ddt
# 數據驅動
class MyTestCase(unittest.TestCase):

def setUp(self):
self.driver = webdriver.Firefox()
self.base_url = "https://www.baidu.com/"
self.driver.get(self.base_url)
self.driver.maximize_window()
sleep(2)

@data(*getCsvData())
# 測試數據

@unpack
# 解包
def test_something(self, searchTerm, searchResult):
driver = self.driver
driver.find_element_by_xpath(".//*[@id=‘kw‘]").send_keys(searchTerm)
driver.find_element_by_xpath(".//*[@id=‘su‘]").click()
sleep(2)
responseText = driver.find_element_by_xpath(".//*[@id=‘1‘]/h3/a").text
self.assertEqual(responseText, searchResult)

def tearDown(self):
self.driver.close()
self.driver.quit()

if __name__ == ‘__main__‘:
unittest.main()

搜索詞,響應
中國,中國_百度百科
美國,美國_百度百科
英國,英國_百度百科

Python ddt讀取CSV文件數據驅動