您的位置:軟件測試 > 開源軟件測試 > 開源功能測試工具 > Watir
Watir Web Driver 對excel 文件的操作
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時間:[ 2013/12/20 10:04:27 ] 推薦標(biāo)簽:

一般我們在Watir中實(shí)現(xiàn)data driven時,是依靠ruby的file函數(shù)。下面是如何使用excel文件進(jìn)行data-driven的。

打開文件需要首先
require 'win32ole'

然后打開文件
excel = WIN32OLE::new('excel.Application')
workingbook = excel.Workbooks.Open('d: ubycode est.xlsx')

然后選擇需要的sheet

#依據(jù)sheet的名稱選擇
workingsheet = workingbook.Worksheet('test')

#或者依據(jù)順序號選擇
workingsheet = workingbook.Worksheets(1)

#激活可以用select
workingsheet.Select
#也可以用Activate
workingsheet.Actviate

然后選擇你需要的數(shù)據(jù)

#第一個cell的值
workingsheet.Range('a1').Value

#第一列的1-10的值
worksheet.Range('a1:a3').Value

#第一行的a-g的值
worksheet.Range('a1:b1:c1:d1:e1:f1:g1').Value
或者
worksheet.Range('a1:g1').Value

#任意cell的值
worksheet.Range('a1:b2:c3:d4:e5:f2:g9').Value

#第一列第一個到第三列第三個,即a1,a2,a3,b1,b2,b3,c1,c2,c3
worksheet.Range('a1:c3').Value

#判斷第一列的非空行數(shù)(注意,返回的是第一個空cell)
line=1
cells='a1'
while worksheet.Range(cells).Value
line=line+1
cells='a'+line.to_s
end

#列出第一列的非空cell
line=line-1
cells='a'+line.to_s

if cells == 'a1'
rows='a1'
else
rows='a1:'+cells
end
celldata = worksheet.Range(rows).Value
puts cell data

寫入數(shù)據(jù)

#單個數(shù)據(jù)
worksheet.Range('e2').Value= 'test'
#數(shù)組值
worksheet.Range('a5:c5').Value = ['more', 'than', 'one']

然后存儲

workbook.Close(1)
#對應(yīng)的是第一個按鍵
 
workbook.SaveAs 'mytest.xls'
# 默認(rèn)路徑是"My Documents"

關(guān)閉文件
excel.Quit

注意,操作時不要打開目標(biāo)文件。

更多的關(guān)于excel的操作,可以參考:
http://msdn.microsoft.com/zh-cn/library/ff841127(v=office.14).aspx

軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd