Actir
Application Concurrence Test in Ruby.
安装
通过Rake本地安装gem包:
$ rake install
或者通过rubygems远程安装
$ sudo gem install actir
如果是Mac OS X 10.11版本以上的系统,要么关闭rootless机制,或者:
$ sudo gem install actir -n /usr/local/bin
使用须知
测试工程结构
-
config:配置文件
--- config.yaml:总体配置文件,test_mode相关的配置项必须要填; -
elements:页面元素
- |---
components
:公用页面元素方法, 包装成Module
; - |---
pages
:页面元素封装的方法,可以继承自Actir::BasicPage
,已经封装了部分公用方法; - |---
items
:根据业务抽象出的类; - |---
user
:根据系统业务抽象出的角色及其Action;
- |---
-
testcode: 测试用例, 文件和用例方法都要以
test
开头, 执行之前需要初始化Actir::Initializer.new(project_path)
,project_path
为测试工程根目录;
浏览器对象
Browser.new(type, *args)
Browser重新封装了Watir以及Selenium的初始化浏览器的方法
- type:指定初始化浏览器的类型,可以指定www/wap两类
-
args:
-
:browser
:浏览器类型,可以支持 :chrome/:phantomjs/:firefox, 默认为chrome -
:agent
:user agent类型,可以支持 :iphone/:andriod_phone, 默认为iphone -
:mode
:启动模式,支持 :local/:remote, 默认为local -
:url
: 配合mode为remote的模式,指定远程机器的url,需要 IP+端口号
-
Initializer自动加载工程文件
Actir::Initializer.new(project_path)
- 自动require所有的elements内的文件并自动定义每个页面类对应的方法。如: 某页面类名为
LoginPage
,则会自动定义出login_page
方法供Browser
对象调用 - 可以直接调用Watir::Browser的所有方法
browser = Browser.new(:wap)
browser.login_page.login("xxx")
# 调用Watir::Browser对象的方法
browser.refresh
执行测试用例
$ actir [switches] [--] [files & folders]
$ actir testcode/test_refund/test_full_refund.rb
$ actir testcode
指定执行某个用例文件中的某个方法:
$ actir testcode/test_pay/test_pay.rb -n test_ecard
指定用例失败重试次数:
$ actir testcode/test_pay/test_pay.rb -r 2
输出html格式的测试报告:
$ actir testcode/test_pay/test_pay.rb -r 2 --report
可使用
actir -h
了解更多的运行参数