Project

actir

0.0
No commit activity in last 3 years
No release in over 3 years
Distribut automated testing framework for Web or App.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 1.7
~> 10.0

Runtime

 Project Readme

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 了解更多的运行参数