IronRuby - 编写自动化测试脚本

发表于:2010-6-28 15:58

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:周金根(cnblogs)    来源:51Testing软件测试网采编

分享:

  编写函数

  由于查找button等功能可以复用,编写几个函数:

def window(title)
    win = WinWindow.new
    win.SearchProperties["Name"] = title
    win
end
 
def button(parent, title)
    btn  = WinButton.new(parent);
    btn.SearchProperties["Name"] = title
    btn
end

  完整代码

$LOAD_PATH << 'D:/GZJ/OpenExpressApp/Tool/OpenTest/dll'
 
require "Microsoft.VisualStudio.TestTools.UITest.Extension.dll"
require "Microsoft.VisualStudio.TestTools.UITest.Extension.IE.dll"
require "Microsoft.VisualStudio.TestTools.UITest.Extension.IE.Communication.Interop.dll"
require "Microsoft.VisualStudio.TestTools.UITest.Extension.MSAA.dll"
require "Microsoft.VisualStudio.TestTools.UITest.Extension.Uia.dll"
require "Microsoft.VisualStudio.TestTools.UITest.Framework.dll"
require "Microsoft.VisualStudio.TestTools.UITesting.dll"
require "Microsoft.VisualStudio.TestTools.UITest.Playback.dll"
require "Microsoft.VisualStudio.TestTools.UITesting.dll"
include Microsoft::VisualStudio::TestTools::UITesting
include Microsoft::VisualStudio::TestTools::UITesting::WinControls
 
def window(title)
    win = WinWindow.new
    win.SearchProperties["Name"] = title
    win
end
 
def button(parent, title)
    btn  = WinButton.new(parent);
    btn.SearchProperties["Name"] = title
    btn
end
 
Playback.Initialize()  #注意必须加这句,不然提示Playback的错误
 
app = ApplicationUnderTest.Launch('C:/Windows/system32/calc.exe')
 
calc_window = window(" 计算器")
btn_1 = button(calc_window, "1")
btn_2 = button(calc_window, "2")
btn_add = button(calc_window, "+")
btn_equal = button(calc_window, "=")
btn_value = WinEdit.new(calc_window)
 
Mouse.Click btn_1
Mouse.Click btn_add
Mouse.Click btn_2
Mouse.Click btn_equal
puts "1+2=3:太高科技了,电脑算对了" if btn_value.Text.to_i  == 3
 
 
Keyboard.SendKeys("C");
Keyboard.SendKeys("2");
Keyboard.SendKeys("*");
Keyboard.SendKeys("2");
Keyboard.SendKeys(".");
Keyboard.SendKeys("2");
Keyboard.SendKeys("{ENTER}");
puts "2*2.2=4.4:受不了了,连小数和乘法都会了" if btn_value.Text.to_f  == 4.4
 
app.close
 
Playback.Cleanup()

32/3<123>
重磅发布,2022软件测试行业现状调查报告~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2023
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号