您的位置:软件测试 > 开源软件测试 > 开源功能测试工具 > Watir
10分钟学会自动化测试框架--Cucumber + Watir
作者:网络转载 发布时间:[ 2014/3/26 13:05:08 ] 推荐标签:Watir 测试框架 自动化

   运行cucumber,一个新的浏览器被打开,显示结果与(三)中相同。

   对于拥有多个用户角色的网站,比如又customer,administrator等,可分别对这些角色定义相应的对象,再在step文件中应用这些角色对象即可。

 

  (七)用ruby的Module来封装不同的行为功能

     对于单个用户来说,比如网上购物网站的customer,既要购物操作,又要能修改自己的profile,此时为了对这些不同的逻辑功能进行组织,可引入ruby中的Module来进行封装,即将costomer的不同行为功能模块封装在不同的module中,然后在customer对象中include这些Module。为简单起见,依然用Google搜索来进行演示,此时可将搜索功能加入到Module中,定义搜索module(search-behavior.rb)如下:
复制代码

1module SearchBehavior
2
3def visit_google
4@page = GooglePage.new(@browser)
5end
6
7def search_text text
8@page.search text
9end
10
11def assert_text_exist text
12@page.has_text text
13end
14
15end

复制代码

    在User对象中include该Module:
复制代码

1require File.join(File.dirname(__FILE__), "search-behavior")
2class User
3include SearchBehavior
4def initialize
5@browser = Watir::Browser.new :chrome
6end

复制代码

  对step文件和feature文件均不用修改,运行cucumber,一个新的浏览器被打开,显示结果与(三)中相同。

(八)总结

   我们可以在Cucumber对应的step文件中直接访问Watir的API,这样的确也能达到测试目的,但这样的缺点在于缺少设计,于是我们引入Page对象来封装不同的页面,引入用户角色管理不同的用户行为,再引入Module来组织不同的功能模块,后重构成了一个简单实用的自动化测试框架。

上一页1234下一页
软件测试工具 | 联系我们 | 投诉建议 | 诚聘英才 | 申请使用列表 | 网站地图
沪ICP备07036474 2003-2017 版权所有 上海泽众软件科技有限公司 Shanghai ZeZhong Software Co.,Ltd