bucky-core 0.9.0 → 0.9.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 84480202869791beb2216d99538d38bd3cbfa4d4
4
- data.tar.gz: 1a7d387572dc81f08e8ff3dc6db62d14e49e1cf3
3
+ metadata.gz: 5ca9ddc3d75d052fad26d93b6ba792ca2ef7fff3
4
+ data.tar.gz: 949249b28151ab881209439272cc8071d4ded81e
5
5
  SHA512:
6
- metadata.gz: da5cba5f370ffefa0d395f587e3ec5327c6102e0b2ade30fd3be53e434e7dc0d589ceeb5a9fa451d6101b4ee358f8ba2f16da660afe6a7139236b306e599d3a2
7
- data.tar.gz: 7f5faff4bfdc389dc135901158f5ab426a887d97891adbcbae76883083d560604320ca2089263fd65ab8263cee14ea04fe371957e0fc9e8fd589a4fc93416e0e
6
+ metadata.gz: 20bc1124ddb7d9fb746da674f47fdbf9e2c61f46688f91fe2a827a5338edadebe98c5ba1500486e90f5a9b0ece6b02d545018809fb772fd63b399e71d1891652
7
+ data.tar.gz: 6846b76b5fd4539f7d31668fbfab22c311f6e2746872475b1fadcf926cd47a494cb0f6795278331eefeb33b6bdcf1c96bcbe65a52863365295377a9be80a103b
data/README.md CHANGED
@@ -1,33 +1,42 @@
1
1
  # Bucky-Core
2
2
 
3
3
  ## Overview
4
+ Bucky-core can run test code which is written in YAML. End-to-End test (working with Selenium) and Linkstatus test (HTTP status check) are supported in default. Page object model pattern and page based element management is the main concept in Bucky-core. You can create scenarios and execute it easily by using Bucky-core.
4
5
 
5
- Bucky is a testing framework that supports web system testing life cycle.
6
+ When working with [Bucky-management](https://github.com/lifull-dev/bucky-management), Bucky-core can also record test results. You can make test results visualization by using Bucky-management.
6
7
 
7
8
  ## Feature
8
9
 
9
10
  * Run tests in parallel
10
11
  * Re-run tests which failed last time
11
12
  * Support test code in YAML
12
- * Multiple browser supported (Currently only Chrome is supported)
13
+ * Multiple browser supported (currently only Chrome is supported)
13
14
  * Customizable test categories
14
15
  * [Default] E2E: E2E (End to End) tests including JavaScript error check
15
16
  * [Default] Linkstatus: http status code check in web page
16
- * Making test Report with [bucky-management](https://github.com/lifull-dev/bucky-management)
17
+ * Making test report with [Bucky-management](https://github.com/lifull-dev/bucky-management)
17
18
 
18
19
 
19
20
  ## Setup
20
21
 
22
+ Checkout Hands-on in example to get a quick start.
23
+ * [bucky-core/example/hands-on](https://github.com/lifull-dev/bucky-core/tree/master/example/hands-on)
24
+
21
25
  ### Install
22
26
  ```bash
23
27
  gem install bucky-core
24
28
  ```
25
29
 
26
30
  ### Implement test code
31
+ * Use snake case for naming
27
32
  ```bash
28
33
  # Make project directory
29
34
  bucky new {your_project_name}
30
35
 
36
+ # Move into project directory
37
+ # It's the working directory when execute Bucky command
38
+ cd {your_project_name}
39
+
31
40
  # Make service directory
32
41
  bucky make service {your_service_name}
33
42
 
@@ -57,7 +66,10 @@ export BUCKY_DB_NAME="{your database name}"
57
66
  ```
58
67
 
59
68
  ## Usage
69
+ You can find some examples in here!
70
+ * [bucky-core/example](https://github.com/lifull-dev/bucky-core/blob/master/example)
60
71
 
72
+ You should start Selenium Chrome driver first. And you can find how to start Selenium Chrome driver by Docker in [SeleniumHQ/docker-selenium](https://github.com/SeleniumHQ/docker-selenium).
61
73
  ### Run test
62
74
  ```bash
63
75
  # Condition filter using option
@@ -188,7 +200,7 @@ cases:
188
200
 
189
201
  #### Sample linkstatus test_code.yml
190
202
 
191
- * linkstatus will check every \<a> tag's http response in url
203
+ * Linkstatus will check every \<a> tag's http response in url
192
204
 
193
205
  ```yaml
194
206
  desc: suite description
data/bucky-core.gemspec CHANGED
@@ -10,10 +10,13 @@ Gem::Specification.new do |spec|
10
10
  spec.authors = %w[NaotoKishino HikaruFukuzawa SeiyaSato NaokiNakano RikiyaHikimochi JyeRuey]
11
11
  spec.email = ['KishinoNaoto@lifull.com']
12
12
 
13
- spec.summary = 'A test framework that supports Life Cycle of System Testing.'
13
+ spec.summary = 'System testing framework for web application.'
14
14
  spec.description = <<-DESCRIPTION
15
- Bucky support run in parellel, test results managed in database, and some test categories(E2E, http status check) and so on.
15
+ Bucky-core can run test code which is written in YAML. End-to-End test (working with Selenium) and Linkstatus test (HTTP status check) are supported in default. Page object model pattern and page based element management is the main concept in Bucky-core. You can create scenarios and execute it easily by using Bucky-core.
16
+
17
+ When working with Bucky-management, Bucky-core can also record test results. You can make test results visualization by using Bucky-management.
16
18
  DESCRIPTION
19
+ spec.required_rubygems_version = '>= 2.4.2'
17
20
  spec.homepage = 'https://github.com/lifull-dev/bucky-core'
18
21
  spec.license = 'MIT'
19
22
 
data/example/README.md ADDED
@@ -0,0 +1,2 @@
1
+ ## You can check the example code in each directory
2
+ * [hands-on](https://github.com/lifull-dev/bucky-core/blob/master/example/hands-on)
@@ -0,0 +1,2 @@
1
+ # bucky home directory.
2
+ # Do not delete this file.
@@ -0,0 +1,338 @@
1
+ # Hands-on
2
+
3
+ # What is this example doing
4
+ It will show you how to create a project, service, page and some test code using Bucky command.
5
+ And will show you how to execute these test code.
6
+
7
+ ## Before starting
8
+ Make sure you have already installed gem "bucky-core".
9
+ ```bash
10
+ gem install bucky-core
11
+ ```
12
+
13
+ ## 1. Create a new test project
14
+ * Project directory is your working directory when you are executing Bucky test code
15
+
16
+ Create a new test project.
17
+ ```bash
18
+ bucky new hands-on
19
+ ```
20
+ You will get a new directory which name is "hands-on" in the current directory.
21
+
22
+ ## 2. Create a new service in the project
23
+ * Service means the application name that you are going to test
24
+ * You are able to create multiple services in one project
25
+ * Use snake case for naming
26
+
27
+ Move into project directory and create a service.
28
+ ```bash
29
+ cd hands-on
30
+ bucky make service bucky_hands_on
31
+ ```
32
+ You will get a new directory which name is "bucky_hands_on" under services directory.
33
+
34
+ ## 3. Create devices directory and create page_object, parts for test code
35
+ * Device only support PC, SP and tablet
36
+ * Test code will be executed in different user agents according to the device
37
+ * Page_object is the file that you can add customize method in
38
+ * Parts is the file that HTML element of the page is declared in
39
+ * Use snake case for naming
40
+
41
+ Create device directory, page_object file and part file.
42
+ ```bash
43
+ # Create github top page
44
+ bucky make page github_top --service bucky_hands_on --device pc
45
+ # Create github search list page
46
+ bucky make page github_search_list --service bucky_hands_on --device pc
47
+ ```
48
+ In this time, your directory will look like the following:
49
+ ```bash
50
+ hands-on/
51
+ ├── README.md
52
+ ├── config
53
+ │ ├── bucky_config.yml
54
+ │ ├── e2e_config.yml
55
+ │ ├── linkstatus_config.yml
56
+ │ └── test_db_config.yml
57
+ ├── services
58
+ │ ├── README.md
59
+ │ └── bucky_hands_on
60
+ │ └── pc
61
+ │ ├── pageobject
62
+ │ │ ├── github_search_list.rb
63
+ │ │ └── github_top.rb
64
+ │ └── parts
65
+ │ ├── github_search_list.yml
66
+ │ └── github_top.yml
67
+ └── system
68
+ ├── evidences
69
+ │ ├── README.md
70
+ │ └── screen_shots
71
+ │ └── README.md
72
+ └── logs
73
+ └── README.md
74
+ ```
75
+
76
+ ## 4. Add the element in part file, which are going to be used in test code
77
+ * Part file can be written in xpath or id
78
+ * Use snake case for naming
79
+
80
+ Add the search bar and search result element in github_top.yml.
81
+ ```
82
+ ## services/bucky_hands_on/pc/parts/github-top.yml ##
83
+ search_bar:
84
+ - xpath
85
+ - //input[contains(@class,'header-search-input')]
86
+ search_resault:
87
+ - xpath
88
+ - //div[contains(@class,'jump-to-suggestions')]
89
+ ```
90
+ Add bucky-core click element in github_search_list.yml.
91
+ ```
92
+ ## services/bucky_hands_on/pc/parts/github_search_list.yml ##
93
+ bucky_core_a_tag:
94
+ - xpath
95
+ - //a[contains(text(),'lifull-dev')]
96
+ ```
97
+
98
+ ## 5. Create test code in E2E (End-to-End) category
99
+ * This step can't be done by Bucky command
100
+ * Use snake case for naming
101
+
102
+ Create e2e category directory.
103
+ ```bash
104
+ mkdir -p services/bucky_hands_on/pc/scenarios/e2e
105
+ ```
106
+ Create test code file, which test suite name is "search_and_assert".
107
+ ```bash
108
+ touch services/bucky_hands_on/pc/scenarios/e2e/search_and_assert.yml
109
+ ```
110
+ Add test code in test suite.
111
+ ```
112
+ ## services/bucky_hands_on/pc/scenarios/e2e/search_and_assert.yml ##
113
+ # Describe for this test suite
114
+ desc: search in github and check page transition
115
+ device: pc
116
+ service: bucky_hands_on
117
+ priority: high
118
+ test_category: e2e
119
+ labels:
120
+ - example
121
+ cases:
122
+ # You should create test case name as {test suite name + _ + number}
123
+ - case_name: search_and_assert_1
124
+ func: transition
125
+ desc: Should able to search bucky-core in github, and move to bucky-core page.
126
+ # Procedures to do in this case
127
+ procs:
128
+ - proc: Open github top page
129
+ exec:
130
+ operate: go
131
+ url: https://github.com/
132
+ - proc: Input 'bucky-core' in search bar
133
+ exec:
134
+ operate: input
135
+ page: github_top
136
+ part: search_bar
137
+ word: 'bucky-core'
138
+ - proc: Click search result
139
+ exec:
140
+ operate: click
141
+ page: github_top
142
+ part: search_resault
143
+ - proc: Click target result
144
+ exec:
145
+ operate: click
146
+ page: github_search_list
147
+ part: bucky_core_a_tag
148
+ - proc: assert_text
149
+ exec:
150
+ verify: assert_title
151
+ expect: 'GitHub - lifull-dev/bucky-core: Bucky is a testing framework that supports Web System Testing Life Cycle.'
152
+ ```
153
+ ## 6. Create test code in Linkstatus category
154
+ * This step can't be done by Bucky command
155
+ * Use snake case for naming
156
+
157
+ Create linkstatus category directory.
158
+ ```bash
159
+ mkdir -p services/bucky_hands_on/pc/scenarios/linkstatus
160
+ ```
161
+ Create test code file, which test suite name is "github_top".
162
+ ```bash
163
+ touch services/bucky_hands_on/pc/scenarios/linkstatus/github_top.yml
164
+ ```
165
+ Add test code in test suite.
166
+ ```
167
+ ## services/bucky_hands_on/pc/scenarios/linkstatus/github_top.yml ##
168
+ # Describe for this test suite
169
+ desc: Check all a tag in githib top
170
+ device: pc
171
+ service: bucky_hands_on
172
+ priority: high
173
+ test_category: linkstatus
174
+ labels:
175
+ - example
176
+ # You can exclude url that you don't want to check
177
+ exclude_urls:
178
+ - https://github.com/customer-stories/*
179
+ cases:
180
+ - case_name: github_top_1
181
+ desc: Check github top
182
+ urls:
183
+ - https://github.com/
184
+ ```
185
+
186
+ ## 7. Execute test code
187
+ * You should start Selenium Chrome driver first
188
+
189
+ You can find how to start Selenium Chrome driver by Docker in [SeleniumHQ/docker-selenium](https://github.com/SeleniumHQ/docker-selenium).
190
+
191
+ Set the connection for E2E test.
192
+ ```
193
+ ## config/e2e_config.yml ##
194
+ :selenium_ip: {your ip for selenium}
195
+ :selenium_port: '4444'
196
+ ```
197
+
198
+ Execute the test by Bucky command. You should execute the test code in working directory. In this case, the working directory is: "hands-on/".
199
+ ```bash
200
+ # Use -d option, because we doesn't start-up bucky-managemnt in this example.
201
+ bucky run -t e2e -c search_and_assert_1 -d
202
+ bucky run -t linkstatus -c github_top_1 -d
203
+ ```
204
+
205
+ You will get resault like the following:
206
+ ```
207
+ bucky run -t e2e -c search_and_assert_1 -d
208
+
209
+ Loaded suite /usr/local/bin/bucky
210
+ Started
211
+
212
+ search_and_assert_1(TestBuckyHandsOnPcE2eSearchAndassert)
213
+ Sholud able to serch bucky-core in github, and transition to it. ....
214
+ 1:Open github top page
215
+ {:operate=>"go", :url=>"https://github.com/"}
216
+ 2:Input 'bucky-core' in search bar
217
+ {:operate=>"input", :page=>"github_top", :part=>"search_bar", :word=>"bucky-core"}
218
+ 3:Click search result
219
+ {:operate=>"click", :page=>"github_top", :part=>"search_resault"}
220
+ 4:Click target result
221
+ {:operate=>"click", :page=>"github_search_list", :part=>"bucky_core_a_tag"}
222
+ 5:assert_text
223
+ assert_title is defined in E2eVerificationClass.
224
+ {:verify=>"assert_title", :expect=>"GitHub - lifull-dev/bucky-core: Bucky is a testing framework that supports Web System Testing Life Cycle."}
225
+ .
226
+
227
+ Finished in 8.948734 seconds.
228
+ -------------------------------------------------------------------------------------------------------------------------------------------------------------------
229
+ 1 tests, 5 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications
230
+ 100% passed
231
+ -------------------------------------------------------------------------------------------------------------------------------------------------------------------
232
+ 0.11 tests/s, 0.56 assertions/s
233
+
234
+
235
+
236
+ bucky run -t linkstatus -c github_top_1 -d
237
+
238
+ Loaded suite /usr/local/bin/bucky
239
+ Started
240
+
241
+ github_top_1(TestBuckyHandsOnPcLinkstatusGithubTop))}
242
+ https://github.com/ ... [200:OK]
243
+ https://github.com/ is already [200:OK]
244
+ https://github.com/features/actions ... [200:OK]
245
+ https://github.com/features#team-management ... [200:OK]
246
+ https://github.com/join?source=header-home ... [200:OK]
247
+ https://github.com#start-of-content ... [200:OK]
248
+ https://github.com/features/code-review/ ... [200:OK]
249
+ https://github.com/features ... [200:OK]
250
+ https://github.com/features/project-management/ ... [200:OK]
251
+ https://github.com/features#code-hosting ... [200:OK]
252
+ https://github.com/features#social-coding ... [200:OK]
253
+ https://github.com/customer-stories ... [200:OK]
254
+ https://github.com/security ... [200:OK]
255
+ https://github.com/collections ... [200:OK]
256
+ https://github.com/topics ... [200:OK]
257
+ https://github.com/features#documentation ... [200:OK]
258
+ https://github.com/events ... [200:OK]
259
+ https://github.com/enterprise ... [200:OK]
260
+ https://github.com/trending ... [200:OK]
261
+ https://github.com/pricing#feature-comparison ... [200:OK]
262
+ https://github.com/explore ... [200:OK]
263
+ https://github.com/nonprofit ... [200:OK]
264
+ https://github.com/marketplace ... [200:OK]
265
+ https://github.com/pricing ... [200:OK]
266
+ https://github.com/login ... [200:OK]
267
+ https://github.com/features/integrations ... [200:OK]
268
+ https://github.com ... [200:OK]
269
+ https://github.com/business ... redirect to https://github.com/enterprise [302:RD]
270
+ https://github.com/open-source ... [200:OK]
271
+ https://github.com/enterprise is already [200:OK]
272
+ https://github.com/join?source=button-home ... [200:OK]
273
+ https://github.com/join?plan=business&setup_organization=true&source=business-page ... [200:OK]
274
+ https://github.com/personal ... [200:OK]
275
+ https://github.com/about/careers ... [200:OK]
276
+ https://github.com/contact ... [200:OK]
277
+ https://github.com/about ... [200:OK]
278
+ https://github.com/features/project-management ... [200:OK]
279
+ https://github.com/site/terms ... redirect to https://help.github.com/articles/github-terms-of-service/ [301:RD]
280
+ https://github.com/features/code-review ... [200:OK]
281
+ https://github.com/about/press ... [200:OK]
282
+ https://github.com/site/privacy ... redirect to https://help.github.com/articles/github-privacy-statement/ [302:RD]
283
+ https://github.com/github ... [200:OK]
284
+ https://help.github.com/articles/github-terms-of-service/ ... redirect to https://help.github.com/articles/github-terms-of-service [301:RD]
285
+ https://help.github.com/articles/github-privacy-statement/ ... redirect to https://help.github.com/articles/github-privacy-statement [301:RD]
286
+ https://help.github.com/articles/github-terms-of-service ... redirect to https://help.github.com/en/articles/github-terms-of-service [301:RD]
287
+ https://help.github.com/articles/github-privacy-statement ... redirect to https://help.github.com/en/articles/github-privacy-statement [301:RD]
288
+ https://help.github.com/en/articles/github-privacy-statement ... [200:OK]
289
+ https://help.github.com/en/articles/github-terms-of-service ... [200:OK]
290
+ .
291
+
292
+ Finished in 11.283795 seconds.
293
+ -------------------------------------------------------------------------------------------------------------------------------------------------------------------
294
+ 1 tests, 2 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications
295
+ 100% passed
296
+ -------------------------------------------------------------------------------------------------------------------------------------------------------------------
297
+ 0.09 tests/s, 0.18 assertions/s
298
+ ```
299
+
300
+ ## At last
301
+ Congratulations!! You have just finish this example.
302
+
303
+ If you follow these procedures your directory will be like this:
304
+ ```
305
+ hands-on/
306
+ ├── README.md
307
+ ├── config
308
+ │ ├── bucky_config.yml
309
+ │ ├── e2e_config.yml
310
+ │ ├── linkstatus_config.yml
311
+ │ └── test_db_config.yml
312
+ ├── services
313
+ │ ├── README.md
314
+ │ └── bucky_hands_on
315
+ │ └── pc
316
+ │ ├── pageobject
317
+ │ │ ├── github_search_list.rb
318
+ │ │ └── github_top.rb
319
+ │ ├── parts
320
+ │ │ ├── github_search_list.yml
321
+ │ │ └── github_top.yml
322
+ │ └── scenarios
323
+ │ ├── e2e
324
+ │ │ └── search_and_assert.yml
325
+ │ └── linkstatus
326
+ │ └── github_top.yml
327
+ └── system
328
+ ├── evidences
329
+ │ ├── README.md
330
+ │ └── screen_shots
331
+ │ └── README.md
332
+ └── logs
333
+ └── README.md
334
+ ```
335
+
336
+ We have learned how to create project, service, page, and test code. And also learned how to execute test code using Bucky command.
337
+
338
+ Now you can create you own test code!!
@@ -0,0 +1,6 @@
1
+ :parallel_num: 4
2
+ :test_result_path: './system/test_results/'
3
+ :log_path: './system/logs/'
4
+ :screen_shot_path: './system/evidences/screen_shots/'
5
+ :bucky_error: 'bucky_error'
6
+ :test_code_repo: 'https://github.com/hogehoge/fugafuga/'
@@ -0,0 +1,15 @@
1
+ :selenium_ip: localhost # default selenium ip. please set ip or 'docker_host_ip'. ip route | awk 'NR==1 {print $3}'
2
+ :selenium_port: '4444' # default selenium port
3
+ :browser: :chrome # Only chrome
4
+ :sp_device_name: :iphone
5
+ :tablet_device_name: :ipad
6
+ :device_name_on_chrome:
7
+ :iphone: 'iPhone X'
8
+ :android: 'Galaxy S5'
9
+ :ipad: 'iPad'
10
+ :user_agent: 'E2ETest (X11; Linux x86_64)'
11
+ :js_error_check: true
12
+ :js_error_collector_path: '/var/lib/selenium/ChromeJSErrorCollector-master/extension' # https://github.com/dharrya/ChromeJSErrorCollector
13
+ :driver_read_timeout: 60 # sec
14
+ :driver_open_timeout: 60 # sec
15
+ :find_element_timeout: 10 # sec
@@ -0,0 +1,3 @@
1
+ :linkstatus_parallel_num: 8
2
+ :linkstatus_open_timeout: 60
3
+ :linkstatus_read_timeout: 60
@@ -0,0 +1,8 @@
1
+ :test_db:
2
+ :bucky_test:
3
+ :username: <%= ENV['BUCKY_DB_USERNAME'] %>
4
+ :password: <%= ENV['BUCKY_DB_PASSWORD'] %>
5
+ :database: 'bucky_development'
6
+ :host: <%= ENV['BUCKY_DB_HOSTNAME'] %>
7
+ :port: 3306
8
+ :adapter: :mysql
@@ -0,0 +1 @@
1
+ for services page and parts objects.
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'bucky/test_equipment/pageobject/base_pageobject'
4
+ module Services
5
+ module BuckyHandsOn
6
+ module Pc
7
+ module PageObject
8
+ class GithubSearchList < Bucky::TestEquipment::PageObject::BasePageObject
9
+
10
+ protected
11
+
12
+ # add some user operations for this page
13
+ # sample ====================
14
+ # @param [Hash] args
15
+ # def search_freeword(**args)
16
+ # freeword_form.send_keys(args[:word])
17
+ # freeword_form.submit
18
+ # end
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'bucky/test_equipment/pageobject/base_pageobject'
4
+ module Services
5
+ module BuckyHandsOn
6
+ module Pc
7
+ module PageObject
8
+ class GithubTop < Bucky::TestEquipment::PageObject::BasePageObject
9
+
10
+ protected
11
+
12
+ # add some user operations for this page
13
+ # sample ====================
14
+ # @param [Hash] args
15
+ # def search_freeword(**args)
16
+ # freeword_form.send_keys(args[:word])
17
+ # freeword_form.submit
18
+ # end
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,3 @@
1
+ bucky_core_a_tag:
2
+ - xpath
3
+ - //a[contains(text(),'lifull-dev')]
@@ -0,0 +1,6 @@
1
+ search_bar:
2
+ - xpath
3
+ - //input[contains(@class,'header-search-input')]
4
+ search_resault:
5
+ - xpath
6
+ - //div[contains(@class,'jump-to-suggestions')]
@@ -0,0 +1,39 @@
1
+ # Describe for this test suite
2
+ desc: search in github and check page transition
3
+ device: pc
4
+ service: bucky_hands_on
5
+ priority: high
6
+ test_category: e2e
7
+ labels:
8
+ - example
9
+ cases:
10
+ # You should create test case name as {test suite name + _ + number}
11
+ - case_name: search_and_asseret_1
12
+ func: transition
13
+ desc: Should able to search bucky-core in github, and move to bucky-core page.
14
+ # Procedures to do in this case
15
+ procs:
16
+ - proc: Open github top page
17
+ exec:
18
+ operate: go
19
+ url: https://github.com/
20
+ - proc: Input 'bucky-core' in search bar
21
+ exec:
22
+ operate: input
23
+ page: github_top
24
+ part: search_bar
25
+ word: 'bucky-core'
26
+ - proc: Click search result
27
+ exec:
28
+ operate: click
29
+ page: github_top
30
+ part: search_resault
31
+ - proc: Click target result
32
+ exec:
33
+ operate: click
34
+ page: github_search_list
35
+ part: bucky_core_a_tag
36
+ - proc: assert_text
37
+ exec:
38
+ verify: assert_title
39
+ expect: 'GitHub - lifull-dev/bucky-core: System testing framework for web application.'
@@ -0,0 +1,16 @@
1
+ # Describe for this test suite
2
+ desc: Check all a tag in githib top
3
+ device: pc
4
+ service: bucky_hands_on
5
+ priority: high
6
+ test_category: linkstatus
7
+ labels:
8
+ - example
9
+ # You can exclude url that you don't want to check
10
+ exclude_urls:
11
+ - https://github.com/customer-stories/*
12
+ cases:
13
+ - case_name: github_top_1
14
+ desc: Check github top
15
+ urls:
16
+ - https://github.com/
@@ -0,0 +1 @@
1
+ for save evidence directory.
@@ -0,0 +1 @@
1
+ for save screen shots directory.
@@ -0,0 +1 @@
1
+ for save logs directory.
data/lib/bucky/version.rb CHANGED
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Bucky
4
4
  module Version
5
- VERSION = '0.9.0'
5
+ VERSION = '0.9.1'
6
6
  end
7
7
  end
@@ -3,6 +3,6 @@
3
3
  :username: <%= ENV['BUCKY_DB_USERNAME'] %>
4
4
  :password: <%= ENV['BUCKY_DB_PASSWORD'] %>
5
5
  :database: 'bucky_development'
6
- :host: <%= ENV['BUCKY_DB_HOST'] %>
6
+ :host: <%= ENV['BUCKY_DB_HOSTNAME'] %>
7
7
  :port: 3306
8
8
  :adapter: :mysql
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bucky-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.0
4
+ version: 0.9.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - NaotoKishino
@@ -13,7 +13,7 @@ authors:
13
13
  autorequire:
14
14
  bindir: exe
15
15
  cert_chain: []
16
- date: 2019-04-11 00:00:00.000000000 Z
16
+ date: 2019-04-15 00:00:00.000000000 Z
17
17
  dependencies:
18
18
  - !ruby/object:Gem::Dependency
19
19
  name: awesome_print
@@ -281,8 +281,10 @@ dependencies:
281
281
  - - "~>"
282
282
  - !ruby/object:Gem::Version
283
283
  version: '3.2'
284
- description: " Bucky support run in parellel, test results managed in database,
285
- and some test categories(E2E, http status check) and so on.\n"
284
+ description: |2
285
+ Bucky-core can run test code which is written in YAML. End-to-End test (working with Selenium) and Linkstatus test (HTTP status check) are supported in default. Page object model pattern and page based element management is the main concept in Bucky-core. You can create scenarios and execute it easily by using Bucky-core.
286
+
287
+ When working with Bucky-management, Bucky-core can also record test results. You can make test results visualization by using Bucky-management.
286
288
  email:
287
289
  - KishinoNaoto@lifull.com
288
290
  executables:
@@ -314,6 +316,23 @@ files:
314
316
  - docker/nginx/nginx.conf
315
317
  - docker/nginx/public/index.html
316
318
  - docker/nginx/public/test_page.html
319
+ - example/README.md
320
+ - example/hands-on/.bucky_home
321
+ - example/hands-on/README.md
322
+ - example/hands-on/config/bucky_config.yml
323
+ - example/hands-on/config/e2e_config.yml
324
+ - example/hands-on/config/linkstatus_config.yml
325
+ - example/hands-on/config/test_db_config.yml
326
+ - example/hands-on/services/README.md
327
+ - example/hands-on/services/bucky_hands_on/pc/pageobject/github_search_list.rb
328
+ - example/hands-on/services/bucky_hands_on/pc/pageobject/github_top.rb
329
+ - example/hands-on/services/bucky_hands_on/pc/parts/github_search_list.yml
330
+ - example/hands-on/services/bucky_hands_on/pc/parts/github_top.yml
331
+ - example/hands-on/services/bucky_hands_on/pc/scenarios/e2e/search_and_asseret.yml
332
+ - example/hands-on/services/bucky_hands_on/pc/scenarios/linkstatus/github_top.yml
333
+ - example/hands-on/system/evidences/README.md
334
+ - example/hands-on/system/evidences/screen_shots/README.md
335
+ - example/hands-on/system/logs/README.md
317
336
  - exe/bucky
318
337
  - lib/bucky.rb
319
338
  - lib/bucky/core/database/db_connector.rb
@@ -405,11 +424,11 @@ required_rubygems_version: !ruby/object:Gem::Requirement
405
424
  requirements:
406
425
  - - ">="
407
426
  - !ruby/object:Gem::Version
408
- version: '0'
427
+ version: 2.4.2
409
428
  requirements: []
410
429
  rubyforge_project:
411
- rubygems_version: 2.5.2.3
430
+ rubygems_version: 2.6.14
412
431
  signing_key:
413
432
  specification_version: 4
414
- summary: A test framework that supports Life Cycle of System Testing.
433
+ summary: System testing framework for web application.
415
434
  test_files: []