README.md in actir-1.4.2 vs README.md in actir-1.4.3
- old
+ new
@@ -1,50 +1,77 @@
# Actir
Application Concurrence Test in Ruby.
-## Installation
+## 安装
-git clone code and then execute:
+通过Rake本地安装gem包:
$ rake install
-Or install it yourself as:
+或者通过rubygems远程安装
- $ gem install actir
+ $ sudo gem install actir
+
+如果是Mac OS X 10.11版本以上的系统,要么关闭rootless机制,或者:
-## Usage
+ $ sudo gem install actir -n /usr/local/bin
+
-使用须知:
-1. 对应测试工程结构如下
-  config -- 配置文件
-   |-config.yaml -- 总体配置文件,test_mode相关的配置项必须要填
-  elements
-   |-components -- 公用页面元素方法
-   |-pages -- 页面元素封装的方法,可以继承自Actir::BasicPage,已经封装了部分公用方法
-  testcode -- 测试用例,执行之前需要初始化 Actir::Initializer.new(project_path)
-
-2.project_path:测试工程根目录
+## 使用须知
-3.Browser.new(type, *args):
-  Browser重新封装了watir以及selenium的初始化浏览器的方法
-  1).type指定初始化浏览器的类型,可以指定www/wap两类
-  2).*args:
-  :browser - 浏览器类型,可以支持 :chrome/:phantomjs/:firefox, 默认为chrome
-  :agent - user agent类型,可以支持 :iphone/:andriod_phone, 默认为iphone
-  :mode - 启动模式,支持 :local/:remote, 默认为local
-  :url - 配合mode为remote的模式,指定远程机器的url,需要 IP+端口号
+####测试工程结构
+ - **config**:配置文件
+   |--- config.yaml:总体配置文件,test_mode相关的配置项必须要填
+ - **elements**:页面元素
+   |--- components:公用页面元素方法, 包装成`Module`
+   |--- pages:页面元素封装的方法,可以继承自`Actir::BasicPage`,已经封装了部分公用方法
+   |--- items:根据业务抽象出的类
+   |--- user:根据系统业务抽象出的角色及其Action
+ - **testcode**: 测试用例, 文件和用例方法都要以`test`开头, 执行之前需要初始化 Actir::Initializer.new(project_path),`project_path`为测试工程根目录
-4.初始化会自动require所有的elements内的文件并自动定义每个页面类对应的方法
-  如: 某页面类名为LoginPage,则会自动定义出login_page方法
-  3中初始化出的browser对象,可以直接调用login_page方法
-  也可以直接调用Watir::Browser对应的所有方法
-  如:browser = Browser.new(type, *args)
-    browser.login_page.xxx (xxx为LoginPage中定义的方法)
+####浏览器对象
+``` ruby
+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+端口号
-## Contributing
+####Initializer自动加载工程文件
+``` ruby
+Actir::Initializer.new(project_path)
+```
+- 自动require所有的elements内的文件并自动定义每个页面类对应的方法。如: 某页面类名为`LoginPage`,则会自动定义出`login_page`方法供`Browser`对象调用
+- 可以直接调用Watir::Browser的所有方法
+``` ruby
+browser = Browser.new(:wap)
+browser.login_page.login("xxx")
+# 调用Watir::Browser对象的方法
+browser.refresh
+```
-1. Fork it ( https://github.com/hub128/actir.git )
-2. Create your feature branch (`git checkout -b my-new-feature`)
-3. Commit your changes (`git commit -am 'Add some feature'`)
-4. Push to the branch (`git push origin my-new-feature`)
-5. Create a new Pull Request
+####执行测试用例
+
+ $ 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` 了解更多的运行参数
+>
\ No newline at end of file