背景:測試過程中,為實現將不同的測試數據批量循環錄入,考慮需對已通過讀取csv文件方式參數化的腳本進一步地參數化,示例代碼如下:
import csv from selenium import webdriver data_set = r'C:\\test.csv' data = csv.reader(file(data_set,'rb')) def test_insert(): driver = webdriver.Chrome()
driver.get(www.mytest.com) # 每條待錄入的數據共四個字段 info0 = 0 info1 = 1 info2 = 2 info3 = 3 for record in data: # 循環5次,即有5條數據待錄入 for x in xrange(0,5): driver.find_element_by_id("telephone").send_keys(record[info0]) driver.find_element_by_id("company").send_keys(record[info1].decode('gb2312')) driver.find_element_by_id("description").send_keys(record[info2].decode('gb2312')) driver.find_element_by_id("service").send_keys(record[info3].decode('gb2312')) info0 = info0 + 4 info1 = info1 + 4 info2 = info2 + 4 info3 = info3 + 4
test.csv文件局部內容如下:
13000000001,A公司,A公司簡介,A公司提供的服務,13000000002,B公司,B公司簡介,B公司提供的服務,13000000003,C公司,C公司簡介,C公司提供的服務,...
注:如果錄入的數據含有中文,可以decode一下,防止因可能的編碼問題導致腳本執行失敗。