Skip to content

Commit

Permalink
Added Appium and OSX Yosemite iOS8 integration
Browse files Browse the repository at this point in the history
  • Loading branch information
Shashikant86 committed Oct 15, 2014
0 parents commit 8368ce1
Show file tree
Hide file tree
Showing 7,632 changed files with 1,261,692 additions and 0 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
2 changes: 2 additions & 0 deletions .gitignore
@@ -0,0 +1,2 @@
.ruby-version
.travis.yml
2 changes: 2 additions & 0 deletions .relish
@@ -0,0 +1,2 @@
---
api_token: your_token
43 changes: 43 additions & 0 deletions .rubocop.yml
@@ -0,0 +1,43 @@
AllCops:
Include:
- Gemfile
- Rakefile
Exclude:
- bin/**/*
- vendor/**/*
- tmp/**/*

CollectionMethods:
Enabled: false

Encoding:
Enabled: false

LineLength:
Max: 119

Documentation:
Enabled: false

CaseIndentation:
Enabled: false

DotPosition:
Enabled: false

MethodLength:
CountComments: false
Max: 20

Blocks:
Enabled: false
Enabled: false

AlignParameters:
Enabled: false

IfUnlessModifier:
Enabled: false

TrailingComma:
Enabled: false
10 changes: 10 additions & 0 deletions .yard.yml
@@ -0,0 +1,10 @@
--- !map:SymbolHash
:load_plugins: true
:ignored_plugins: []

:autoload_plugins: []

:safe_mode: false

:"yard-cucumber":
menus: [ 'features', 'directories', 'tags', 'steps', 'step definitions' ]
16 changes: 16 additions & 0 deletions Gemfile
@@ -0,0 +1,16 @@
source "http://rubygems.org"
gem 'nokogiri', '1.6.1'
gem 'cucumber'
gem 'capybara'
gem 'bddfire'
gem 'selenium-webdriver'
gem 'poltergeist'
gem 'rake'
gem 'yard-cucumber'
gem 'redcarpet'
gem 'rubocop'
gem 'cuke_sniffer'
gem 'json'
gem 'rspec'
gem 'relish'
gem 'rubocop-checkstyle_formatter'
133 changes: 133 additions & 0 deletions Gemfile.lock
@@ -0,0 +1,133 @@
GEM
remote: http://rubygems.org/
specs:
activesupport (4.1.6)
i18n (~> 0.6, >= 0.6.9)
json (~> 1.7, >= 1.7.7)
minitest (~> 5.1)
thread_safe (~> 0.1)
tzinfo (~> 1.1)
archive-tar-minitar (0.5.2)
ast (2.0.0)
astrolabe (1.3.0)
parser (>= 2.2.0.pre.3, < 3.0)
bddfire (1.6.0)
thor
builder (3.2.2)
capybara (2.4.4)
mime-types (>= 1.16)
nokogiri (>= 1.3.3)
rack (>= 1.0.0)
rack-test (>= 0.5.4)
xpath (~> 2.0)
childprocess (0.5.5)
ffi (~> 1.0, >= 1.0.11)
cliver (0.3.2)
cucumber (1.3.17)
builder (>= 2.1.2)
diff-lcs (>= 1.1.3)
gherkin (~> 2.12)
multi_json (>= 1.7.5, < 2.0)
multi_test (>= 0.1.1)
cuke_sniffer (0.0.8)
roxml
diff-lcs (1.2.5)
ffi (1.9.6)
gherkin (2.12.2)
multi_json (~> 1.3)
i18n (0.6.11)
json (1.8.1)
mime-types (2.4.1)
mini_portile (0.5.3)
minitest (5.4.2)
multi_json (1.10.1)
multi_test (0.1.1)
netrc (0.7.7)
nokogiri (1.6.1)
mini_portile (~> 0.5.0)
parser (2.2.0.pre.5)
ast (>= 1.1, < 3.0)
slop (~> 3.4, >= 3.4.5)
poltergeist (1.5.1)
capybara (~> 2.1)
cliver (~> 0.3.1)
multi_json (~> 1.0)
websocket-driver (>= 0.2.0)
powerpack (0.0.9)
rack (1.5.2)
rack-test (0.6.2)
rack (>= 1.0)
rainbow (2.0.0)
rake (10.3.2)
redcarpet (3.2.0)
relish (0.7)
archive-tar-minitar (>= 0.5.2)
json (>= 1.4.6)
rest-client (>= 1.6.1)
rest-client (1.7.2)
mime-types (>= 1.16, < 3.0)
netrc (~> 0.7)
roxml (3.3.1)
activesupport (>= 2.3.0)
nokogiri (>= 1.3.3)
rspec (3.1.0)
rspec-core (~> 3.1.0)
rspec-expectations (~> 3.1.0)
rspec-mocks (~> 3.1.0)
rspec-core (3.1.7)
rspec-support (~> 3.1.0)
rspec-expectations (3.1.2)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.1.0)
rspec-mocks (3.1.3)
rspec-support (~> 3.1.0)
rspec-support (3.1.2)
rubocop (0.26.1)
astrolabe (~> 1.3)
parser (>= 2.2.0.pre.4, < 3.0)
powerpack (~> 0.0.6)
rainbow (>= 1.99.1, < 3.0)
ruby-progressbar (~> 1.4)
rubocop-checkstyle_formatter (0.1.1)
rubocop (>= 0.14.0)
ruby-progressbar (1.6.0)
rubyzip (1.1.6)
selenium-webdriver (2.43.0)
childprocess (~> 0.5)
multi_json (~> 1.0)
rubyzip (~> 1.0)
websocket (~> 1.0)
slop (3.6.0)
thor (0.19.1)
thread_safe (0.3.4)
tzinfo (1.2.2)
thread_safe (~> 0.1)
websocket (1.2.1)
websocket-driver (0.3.5)
xpath (2.0.0)
nokogiri (~> 1.3)
yard (0.8.7.4)
yard-cucumber (2.3.2)
cucumber (~> 1.3)
gherkin (~> 2.12)
yard (>= 0.8.1)

PLATFORMS
ruby

DEPENDENCIES
bddfire
capybara
cucumber
cuke_sniffer
json
nokogiri (= 1.6.1)
poltergeist
rake
redcarpet
relish
rspec
rubocop
rubocop-checkstyle_formatter
selenium-webdriver
yard-cucumber
27 changes: 27 additions & 0 deletions README.md
@@ -0,0 +1,27 @@
BDD Scenarios
========================

## Install

Your description to install project

$ bundle install
Make sure you are using corect ruby version.

## Usage

### Run cucumber bundle tasks

$ bundle exec cucumber -p selenium
### Run Rake tasks

$ bundle exec rake [task name]


## Running on CI


Your steps to run the things on CI goes here


37 changes: 37 additions & 0 deletions Rakefile
@@ -0,0 +1,37 @@
require 'rubygems'
require 'bundler'
require 'bundler/setup'



require 'cucumber/rake/task'
Cucumber::Rake::Task.new(:features) do |features|
features.cucumber_opts = "features -p selenium --format progress"
end
Cucumber::Rake::Task.new(:features_ci) do |task|
task.cucumber_opts = ["-p poltergeist -f pretty -f junit --out target/ -f html --out target/report.html"]
end




task :cuke_sniffer do
sh 'cd features'
sh 'bundle exec cuke_sniffer'
end



require 'rubocop/rake_task'

#desc "Run Rubocop"

#Rubocop::RakeTask.new(:rubocop_rake) do |task|
# task.patterns = ['features/**/*.rb']
#end

task :rubocop do
sh 'bundle exec rubocop'
end


14 changes: 14 additions & 0 deletions browser.json
@@ -0,0 +1,14 @@
{
"ios_iphone_6": {
"device": "iPhone 5",
"browserName": "iPhone",
"os": "ios",
"os_version": "6.0"
},
"osx_firefox": {
"browser": "firefox",
"browser_version": "15.0",
"os": "OS X",
"os_version": "Snow Leopard"
}
}
15 changes: 15 additions & 0 deletions ci_script
@@ -0,0 +1,15 @@
#!/bin/bash
RAKETASK=$1
rm -rf ${WORKSPACE}/target/
rm -rf ${WORKSPACE}/.yarddoc/
rm -rf ${WORKSPACE}/doc/
mkdir -p ${WORKSPACE}/target/
bundle install --path vendor/bundle --binstubs
bundle exec yard config load_plugins true
bundle exec yardoc 'example/**/*.rb' 'example/**/*.feature'
bundle exec rake yard
cd ${WORKSPACE}/features
bundle exec cuke_sniffer --out html ${WORKSPACE}/target/cuke_sniffer.html
bundle exec rubocop ${WORKSPACE}/features/ --require rubocop/formatter/checkstyle_formatter --format Rubocop::Formatter::CheckstyleFormatter --no-color --silent --rails --out ${WORKSPACE}/target/checkstyle.xml
cd ${WORKSPACE}
bundle exec rake "${RAKETASK}"
10 changes: 10 additions & 0 deletions cucumber.yml
@@ -0,0 +1,10 @@
default: -p selenium
html_report: --format pretty --format html --out=features_report.html
bvt: --tags @test
browserstack : DRIVER=browserstack
testingbot: DRIVER=testingbot
poltergeist : DRIVER=poltergeist
selenium : DRIVER=selenium
appium_android : DRIVER=appium_android
appium_ios : DRIVER=appium_ios
sauce : DRIVER=sauce
Empty file.
7 changes: 7 additions & 0 deletions features/google.feature
@@ -0,0 +1,7 @@
Feature: Google Search to explore poltergiest


Scenario: View home page
Given I am on the home page
#When I fill in "q" with "shashi"
Then I should see "Sign in"
14 changes: 14 additions & 0 deletions features/pages/Abstract.rb
@@ -0,0 +1,14 @@
class Abstract

def initialize(session)
@session = Capybara.current_session
end

def your_abstracted_method1
#your code goes here
end

def your_abstracted_method2
#your code goes here
end
end
22 changes: 22 additions & 0 deletions features/pages/HomePage.rb
@@ -0,0 +1,22 @@
class HomePage
class << self
attr_accessor :title, :title_text
end

self.title_text = "Your Site "
self.title = "your_css_selector"

def initialize(session)
@session = Capybara.current_session
end

def visit_home_page
@session.visit("your_url")
end
end

=begin
You can the use these methods in the step_definitions as
@home_page = HomePage.new(Capybara.current_session)
@home_page.visit_home_page
=end
Empty file.
12 changes: 12 additions & 0 deletions features/step_definitions/google_steps.rb
@@ -0,0 +1,12 @@
require 'bddfire'
Given(/^I am on the home page$/) do
visit "http://www.google.com"
end

When /^I fill in "([^"]*)" with "([^"]*)"$/ do |element, text|
fill_in element, with: text
end

Then(/^I should see "(.*?)"$/) do |text|
page.should have_content text
end

0 comments on commit 8368ce1

Please sign in to comment.