bddfire 1.7.7 → 1.7.8
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 +8 -8
- data/README.markdown +24 -3
- data/bddfire.gemspec +1 -1
- data/bin/bddfire +2 -0
- data/lib/bddfire/assert.rb +45 -0
- data/lib/bddfire/version.rb +1 -1
- data/pre-defined-steps/capybara_steps.md +45 -0
- data/scaffold/config_files/Gemfile +1 -0
- data/scaffold/config_files/Rakefile +24 -0
- metadata +7 -3
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
ZDU1MzIwNzRhOGNjZTAyZTFjMzQ1NzI4YzNkYWE2YWM0MmUyN2MzMQ==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
ZjYzYWQxZDdkZjhjMTUzYWIyODcxMWM2MGM5ODIwMDllNjM5NGNkNg==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
NjU2ZDI2NWY4YzY4ZTY5OWNlMzRiYWM3MDhjM2Y2ZWVmZDE0NGFmZmE5OTk5
|
10
|
+
ZGZkNmU0YjYyNmRkMzJkMWZmZDk1ODg5ZmNkMmVhMzFjNjQyZDA5YWRjNWFi
|
11
|
+
NmRhMGMyYTgxZGQ4MjA1Mjc5NDdkMjBmNTI1NmIzZDdjMTI4OWQ=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
NmNmY2FlZmNjMzgzYzQ0ODNkMDk3MjA4NTg5ZjJhYWEyMWQ4YjljYjhiY2Zk
|
14
|
+
YzhlZTU5MjNiM2RjYTc1ZDVlMWY4ZDg5ZGU3OWZhOTA3Y2VkZmZhNjFmYTA0
|
15
|
+
YzFjZjgzZGFkYjhlNjg1ZjE5YjkyODJmZThlMzc4MGI3NDBkNzg=
|
data/README.markdown
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# bddfire
|
2
2
|
|
3
|
-
Generate default toolkit around BDD with cucumber and friends
|
3
|
+
BDDfire: Automate Mobile & Web apps with less code. An instant Ruby-Cucumber BDD framework which supports various popular open-source libraries like Capybara, Selenium-WebDriver, Poltergeist, Relish, Cuke_sniffer, Rubocop, Appium, Saucelabs, Browserstack.Generate default toolkit around BDD with cucumber and friends
|
4
4
|
## Installation
|
5
5
|
|
6
6
|
The usual:
|
@@ -19,7 +19,7 @@ In your project's root directory...
|
|
19
19
|
|
20
20
|
$ bddfire fire_cucumber
|
21
21
|
|
22
|
-
One command will install Ruby Cucumber framework with all possibly supported tools. This will create all the directories and files to support following tools
|
22
|
+
One command will install Ruby Cucumber framework with all possibly supported tools in the 'cucumber' directory. This will create all the directories and files to support following tools
|
23
23
|
* Capybara
|
24
24
|
* Selenium-Webdriver
|
25
25
|
* Poltergeist: PhantomJS based headless driver for capybara
|
@@ -101,7 +101,28 @@ You need pass rake rask to the script
|
|
101
101
|
$ ./ci_script features
|
102
102
|
|
103
103
|
|
104
|
-
##
|
104
|
+
## Use Rake
|
105
|
+
You can also use Rake taks created automatically for you
|
106
|
+
|
107
|
+
$ bundle exec rake features
|
108
|
+
|
109
|
+
You can run Cuke_sniffer report on your project
|
110
|
+
|
111
|
+
$ bundle exec rake cuke_sniffer
|
112
|
+
|
113
|
+
You can run rubocop report on your project
|
114
|
+
|
115
|
+
$ bundle exec rake rubocop
|
116
|
+
|
117
|
+
|
118
|
+
## Don't waste time writing steps. Use predefined
|
119
|
+
|
120
|
+
You can use pre-defined steps here
|
121
|
+
|
122
|
+
# TODO
|
123
|
+
|
124
|
+
* Add more and more steps so that user won't need to write more code
|
125
|
+
* Add examples to show use of native app automation
|
105
126
|
|
106
127
|
|
107
128
|
## LICENSE
|
data/bddfire.gemspec
CHANGED
@@ -11,7 +11,7 @@ Gem::Specification.new do |s|
|
|
11
11
|
s.homepage = "https://github.com/Shashikant86/bddfire"
|
12
12
|
s.license = 'MIT'
|
13
13
|
s.required_ruby_version = '>= 1.9.3'
|
14
|
-
s.summary =
|
14
|
+
s.summary = "BDDfire: Automate Mobile & Web apps with less code. An instant Ruby-Cucumber BDD framework"
|
15
15
|
s.description = %q{Instant BDD Framework - Ruby, Cucumber, Capybara, selenium, Appium, Saucelabs, Browserstack, Testingbot, poltergeist, cuke_sniffer, rubocop, relish, yard and many more awesome libraries}
|
16
16
|
s.add_runtime_dependency "cucumber", '~> 1.3', '>= 1.3.18'
|
17
17
|
s.add_runtime_dependency "capybara", '~> 2.4.4', '>= 2.4.1'
|
data/bin/bddfire
CHANGED
@@ -47,6 +47,8 @@ def bddfire_scaffold
|
|
47
47
|
sleep (2)
|
48
48
|
puts "=======Copying .yard.yml to generate YARD documentation for your project============\n"
|
49
49
|
sleep (2)
|
50
|
+
puts "=======Copying Rakefile to generate Rake tasks ============\n"
|
51
|
+
sleep (2)
|
50
52
|
end
|
51
53
|
|
52
54
|
FileUtils.cp_r(@source_config_dir, @root_dir)
|
@@ -0,0 +1,45 @@
|
|
1
|
+
require_relative 'web/web_methods'
|
2
|
+
|
3
|
+
Then(/^page should have title "(.*?)"$/) do |title|
|
4
|
+
page.shaould have_title(title)
|
5
|
+
end
|
6
|
+
|
7
|
+
Then(/^I should see element "(.*?)" having text "(.*?)"$/) do |element, text|
|
8
|
+
page.should have_css(element, :text => text)
|
9
|
+
end
|
10
|
+
|
11
|
+
Then(/^page should have element "(.*?)"$/) do |element|
|
12
|
+
page.should have_css(element)
|
13
|
+
end
|
14
|
+
|
15
|
+
Then(/^I should see element "(.*?)" having count "(.*?)"$/) do |element, count|
|
16
|
+
page.should have_css(element, :count => count)
|
17
|
+
end
|
18
|
+
|
19
|
+
Then(/^page should have button "(.*?)"$/) do |button|
|
20
|
+
page.should have_buttton(button)
|
21
|
+
end
|
22
|
+
|
23
|
+
Then(/^page should have field "(.*?)"$/) do |field|
|
24
|
+
page.should have_field(field)
|
25
|
+
end
|
26
|
+
|
27
|
+
Then(/^page should have link "(.*?)"$/) do |link|
|
28
|
+
page.should have_link(link)
|
29
|
+
end
|
30
|
+
|
31
|
+
Then(/^page should have table "(.*?)"$/) do |table|
|
32
|
+
page.should have_table(table)
|
33
|
+
end
|
34
|
+
|
35
|
+
Then(/^I should see an element "(.*?)" with checked field$/) do |element|
|
36
|
+
page.should have_checked_field(element)
|
37
|
+
end
|
38
|
+
|
39
|
+
Then(/^I should see an element "(.*?)" with unchecked field$/) do |element|
|
40
|
+
page.should have_unchecked_field(element)
|
41
|
+
end
|
42
|
+
|
43
|
+
Then(/^I should see content "(.*?)" in the page$/) do |content|
|
44
|
+
page.should have_content(content)
|
45
|
+
end
|
data/lib/bddfire/version.rb
CHANGED
@@ -0,0 +1,45 @@
|
|
1
|
+
# Pre-defined Steps
|
2
|
+
|
3
|
+
### Browser Actions
|
4
|
+
|
5
|
+
|
6
|
+
When I navigate to another page ""
|
7
|
+
When I go forward using browser
|
8
|
+
When I go back using browser
|
9
|
+
When browser is refreshed
|
10
|
+
When I have switched to another window ""
|
11
|
+
When browser window is resized to width "" and height ""
|
12
|
+
When browser window is maximized
|
13
|
+
When I closed browser window
|
14
|
+
When page is zoomed in
|
15
|
+
When page is zoomed out
|
16
|
+
When I scrolled to element with selector ""
|
17
|
+
When element with selector is hovered over
|
18
|
+
|
19
|
+
### User Actions
|
20
|
+
|
21
|
+
Given I am on “url”
|
22
|
+
When I filling “element” with “text”
|
23
|
+
When I click on “link”
|
24
|
+
When I click on “button”
|
25
|
+
When I click on element having text “text"
|
26
|
+
When I checked “checkbox”
|
27
|
+
When I unchecked “checkbox”
|
28
|
+
When I choose “radio button”
|
29
|
+
When I select option “” from dropdown “”
|
30
|
+
When I attach file “file_path"to field “locator”
|
31
|
+
When I hover over element “locator “
|
32
|
+
|
33
|
+
### Assertions
|
34
|
+
|
35
|
+
Then page should have title “"
|
36
|
+
Then I should see element “element” having text “text”
|
37
|
+
Then page should have element “element”
|
38
|
+
Then I should see element “element” having count “count”
|
39
|
+
Then page should have link “”
|
40
|
+
Then page should have button “”
|
41
|
+
Then page should have field “”
|
42
|
+
Then page should have table “”
|
43
|
+
Then I should see element “” with checked field
|
44
|
+
Then I should see element “” with unchecked field
|
45
|
+
Then I should see content “” in the page
|
@@ -0,0 +1,24 @@
|
|
1
|
+
equire 'rubygems'
|
2
|
+
require 'cucumber'
|
3
|
+
require 'cucumber/rake/task'
|
4
|
+
require 'parallel'
|
5
|
+
require 'json'
|
6
|
+
require 'yard'
|
7
|
+
|
8
|
+
|
9
|
+
YARD::Rake::YardocTask.new(:yard) do |t|
|
10
|
+
t.files = ['features/**/*.feature', 'features/**/*.rb']
|
11
|
+
#t.options = ['--any', '--extra', '--opts'] # optional
|
12
|
+
end
|
13
|
+
|
14
|
+
Cucumber::Rake::Task.new(:cucumber) do |t|
|
15
|
+
t.cucumber_opts = "features --format pretty"
|
16
|
+
end
|
17
|
+
|
18
|
+
task :parallel_cucumber do
|
19
|
+
sh "bundle exec parallel_cucumber features/"
|
20
|
+
end
|
21
|
+
|
22
|
+
task :rubocop do
|
23
|
+
sh "bundle exec rubocop features/"
|
24
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bddfire
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.7.
|
4
|
+
version: 1.7.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Shashikant Jagtap
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-04-
|
11
|
+
date: 2015-04-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: cucumber
|
@@ -112,6 +112,7 @@ files:
|
|
112
112
|
- features/support/env.rb
|
113
113
|
- features/support/support_code.rb
|
114
114
|
- lib/bddfire.rb
|
115
|
+
- lib/bddfire/assert.rb
|
115
116
|
- lib/bddfire/browser_actions.rb
|
116
117
|
- lib/bddfire/mobile/mobile_methods.rb
|
117
118
|
- lib/bddfire/mobile/required_files.rb
|
@@ -120,6 +121,7 @@ files:
|
|
120
121
|
- lib/bddfire/web/required_files.rb
|
121
122
|
- lib/bddfire/web/web_methods.rb
|
122
123
|
- lib/bddfire/web_steps.rb
|
124
|
+
- pre-defined-steps/capybara_steps.md
|
123
125
|
- scaffold/config_files/.relish
|
124
126
|
- scaffold/config_files/.rubocop.yml
|
125
127
|
- scaffold/config_files/.ruby-version
|
@@ -127,6 +129,7 @@ files:
|
|
127
129
|
- scaffold/config_files/.yard.yml
|
128
130
|
- scaffold/config_files/Gemfile
|
129
131
|
- scaffold/config_files/README.md
|
132
|
+
- scaffold/config_files/Rakefile
|
130
133
|
- scaffold/config_files/browser.json
|
131
134
|
- scaffold/config_files/ci_script
|
132
135
|
- scaffold/config_files/cucumber.yml
|
@@ -172,6 +175,7 @@ rubyforge_project:
|
|
172
175
|
rubygems_version: 2.4.5
|
173
176
|
signing_key:
|
174
177
|
specification_version: 4
|
175
|
-
summary:
|
178
|
+
summary: ! 'BDDfire: Automate Mobile & Web apps with less code. An instant Ruby-Cucumber
|
179
|
+
BDD framework'
|
176
180
|
test_files: []
|
177
181
|
has_rdoc:
|