actir 1.4.3 → 1.4.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +16 -15
- data/lib/actir/config.rb +10 -2
- data/lib/actir/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a2e634f0e5f5dfcf857c0077bbb5969e3b7eac6e
|
4
|
+
data.tar.gz: a6b1b491c350309cc143af835e8f78b273477b62
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c4cfe4d148b8857bd576518115da9669d63cfa33dbbcbd09aa3de752cbaeb2ad8299fc237e62c52891807b8cd228f47b06a485def665c956ff332b4baf591920
|
7
|
+
data.tar.gz: 7bde615a9561f603710ee0cf2422d7d0d4115459380ca03faee55a529de202ff38b58d1c9319e10b768f7813f27637175c256d34c9cb1662e9923e669022400f
|
data/README.md
CHANGED
@@ -19,34 +19,35 @@ Application Concurrence Test in Ruby.
|
|
19
19
|
|
20
20
|
## 使用须知
|
21
21
|
|
22
|
-
|
22
|
+
###测试工程结构
|
23
23
|
- **config**:配置文件
|
24
|
-
|
24
|
+
--- config.yaml:总体配置文件,test_mode相关的配置项必须要填;
|
25
25
|
- **elements**:页面元素
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
- **testcode**: 测试用例, 文件和用例方法都要以`test`开头,
|
26
|
+
- |--- `components`:公用页面元素方法, 包装成`Module`;
|
27
|
+
- |--- `pages`:页面元素封装的方法,可以继承自`Actir::BasicPage`,已经封装了部分公用方法;
|
28
|
+
- |--- `items`:根据业务抽象出的类;
|
29
|
+
- |--- `user`:根据系统业务抽象出的角色及其Action;
|
30
|
+
- **testcode**: 测试用例, 文件和用例方法都要以`test`开头, 执行之前需要初始化`Actir::Initializer.new(project_path)`,`project_path`为测试工程根目录;
|
31
31
|
|
32
|
-
|
32
|
+
###浏览器对象
|
33
33
|
``` ruby
|
34
34
|
Browser.new(type, *args)
|
35
35
|
```
|
36
36
|
Browser重新封装了Watir以及Selenium的初始化浏览器的方法
|
37
37
|
- **type**:指定初始化浏览器的类型,可以指定www/wap两类
|
38
|
-
-
|
38
|
+
- **args**:
|
39
39
|
- `:browser`:浏览器类型,可以支持 :chrome/:phantomjs/:firefox, 默认为chrome
|
40
|
-
|
41
|
-
|
42
|
-
|
40
|
+
- `:agent`:user agent类型,可以支持 :iphone/:andriod_phone, 默认为iphone
|
41
|
+
- `:mode`:启动模式,支持 :local/:remote, 默认为local
|
42
|
+
- `:url`: 配合mode为remote的模式,指定远程机器的url,需要 IP+端口号
|
43
43
|
|
44
|
-
|
44
|
+
###Initializer自动加载工程文件
|
45
45
|
``` ruby
|
46
46
|
Actir::Initializer.new(project_path)
|
47
47
|
```
|
48
48
|
- 自动require所有的elements内的文件并自动定义每个页面类对应的方法。如: 某页面类名为`LoginPage`,则会自动定义出`login_page`方法供`Browser`对象调用
|
49
|
-
- 可以直接调用Watir::Browser的所有方法
|
49
|
+
- 可以直接调用Watir::Browser的所有方法
|
50
|
+
|
50
51
|
``` ruby
|
51
52
|
browser = Browser.new(:wap)
|
52
53
|
browser.login_page.login("xxx")
|
@@ -54,7 +55,7 @@ browser.login_page.login("xxx")
|
|
54
55
|
browser.refresh
|
55
56
|
```
|
56
57
|
|
57
|
-
|
58
|
+
###执行测试用例
|
58
59
|
|
59
60
|
$ actir [switches] [--] [files & folders]
|
60
61
|
$ actir testcode/test_refund/test_full_refund.rb
|
data/lib/actir/config.rb
CHANGED
@@ -38,6 +38,9 @@ module Actir
|
|
38
38
|
def get_content(filepath)
|
39
39
|
f ||= filepath if valid?(filepath)
|
40
40
|
File.open(f) {|handle| @hash_content = YAML.load(handle)}
|
41
|
+
if (is_multi_env_cfg?(@hash_content))
|
42
|
+
@hash_content = @hash_content[ENV["env"]]
|
43
|
+
end
|
41
44
|
content = OpenStruct.new(@hash_content)
|
42
45
|
content
|
43
46
|
end
|
@@ -67,7 +70,7 @@ module Actir
|
|
67
70
|
hash = load_file(file(file_name, config_path))
|
68
71
|
end
|
69
72
|
#判断是否存在 online 和 qatest 关键词,存在的话就读取当前env配置
|
70
|
-
if (
|
73
|
+
if (is_multi_env_cfg?(hash))
|
71
74
|
#在key_array头上加入env配置
|
72
75
|
key_array.unshift(determine_env)
|
73
76
|
end
|
@@ -103,7 +106,7 @@ module Actir
|
|
103
106
|
hash = load_file(file(file_name, config_path))
|
104
107
|
end
|
105
108
|
#判断是否存在 online 和 qatest 关键词,存在的话就读取当前env配置
|
106
|
-
if (
|
109
|
+
if (is_multi_env_cfg?(hash))
|
107
110
|
#在key_array头上加入env配置
|
108
111
|
key_array.unshift(determine_env)
|
109
112
|
end
|
@@ -218,6 +221,11 @@ module Actir
|
|
218
221
|
end
|
219
222
|
end
|
220
223
|
|
224
|
+
# 判断是否是多环境配置文件
|
225
|
+
def is_multi_env_cfg?(hash)
|
226
|
+
hash.has_key?("online") || hash.has_key?("qatest")
|
227
|
+
end
|
228
|
+
|
221
229
|
end
|
222
230
|
end
|
223
231
|
end
|
data/lib/actir/version.rb
CHANGED