Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
d675286
ci: Migrating to GitHub Actions
tmikriukov Jun 24, 2022
48f1f43
Submodule update
tmikriukov Jun 24, 2022
31ddd9c
CI cloud name fix
tmikriukov Jun 24, 2022
741a6ba
ci: adding workflow manual trigger
tmikriukov Jul 7, 2022
2ac5fb4
ci: adding workflow manual trigger
tmikriukov Jul 7, 2022
92277e4
ci: adding workflow manual trigger
tmikriukov Jul 7, 2022
16b1b4f
ci: adding workflow manual trigger
tmikriukov Jul 7, 2022
cfe2e45
ci: adding workflow manual trigger
tmikriukov Jul 7, 2022
aa23432
ci: adding workflow manual trigger
tmikriukov Jul 7, 2022
bc71c5c
ci: adding workflow manual trigger
tmikriukov Jul 7, 2022
6cc6635
ci: adding workflow manual trigger
tmikriukov Jul 7, 2022
dc57903
ci: adding workflow manual trigger
tmikriukov Jul 7, 2022
fedfbf7
ci: adding workflow manual trigger
tmikriukov Jul 7, 2022
ae2fd8f
ci: adding workflow manual trigger
tmikriukov Jul 7, 2022
ccb3984
ci: adding workflow manual trigger
tmikriukov Jul 7, 2022
b96baca
Selenium W3C compatibility
tmikriukov Jul 8, 2022
e116658
Selenium W3C compatibility
tmikriukov Jul 8, 2022
c352e4c
Config submodule update
tmikriukov Jul 18, 2022
84171f7
ci: adding workflow manual trigger
tmikriukov Jul 19, 2022
8820a9c
ci: adding workflow manual trigger
tmikriukov Jul 19, 2022
6cb2f95
ci: fixing CircleCi job
tmikriukov Jul 26, 2022
030e333
ci: fixing CircleCi job
tmikriukov Jul 26, 2022
808e195
ci: fixing CircleCi job
tmikriukov Jul 26, 2022
b252901
ci: fixing CircleCi job
tmikriukov Jul 26, 2022
f481e99
updating Gems
tmikriukov Jul 26, 2022
89fc59b
replacing Mailgun with testmail
tmikriukov Aug 15, 2022
b42fd07
replacing Mailgun with testmail
tmikriukov Aug 15, 2022
b4afa1e
replacing Mailgun with testmail
tmikriukov Aug 15, 2022
41529f7
migrating to 1secMail
tmikriukov Aug 16, 2022
3e398f8
migrating to 1secMail
tmikriukov Aug 16, 2022
3a02c41
Added extra run options
Sep 5, 2022
b7851d5
gemlock file with new howitzer
Sep 9, 2022
8dcdf0b
code clean up - appium
Sep 9, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 22 additions & 14 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -1,26 +1,34 @@
version: 2

version: '2.1'
orbs:
browser-tools: circleci/[email protected]
jobs:
build:
working_directory: ~/howitzer_example
docker:
- image: circleci/ruby:2.6.8-browsers
- image: cimg/ruby:3.0.4-browsers
steps:
- checkout
- run: git submodule update --init
- run: sudo apt-get update
- run: sudo apt-get install gstreamer1.0-plugins-base gstreamer1.0-tools gstreamer1.0-x
# Restore bundle cache
- type: cache-restore
key: example-cucumber-{{ checksum "Gemfile.lock" }}

- browser-tools/install-chrome
- browser-tools/install-chromedriver

# Restore bundle cache
- restore_cache:
keys:
- example-cucumber-{{ arch }}-{{ .Branch }}-{{ checksum "Gemfile.lock" }}
- example-cucumber-{{ arch }}-{{ .Branch }}-
- example-cucumber-{{ arch }}-

# Bundle install dependencies
- run: gem install bundler:2.2.22
- run: bundle install --path vendor/bundle
- run: bundle install
- run: bundle clean --force

# Store bundle cache
- type: cache-save
key: example-cucumber-{{ checksum "Gemfile.lock" }}
paths:
- vendor/bundle
- save_cache:
paths:
- ~/.bundle
key: example-cucumber-{{ arch }}-{{ .Branch }}-{{ checksum "Gemfile.lock" }}

# Execute tests
- run: bundle exec rake features:smoke
79 changes: 79 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
name: Howitzer

on:
pull_request:
branches: master
workflow_dispatch:
inputs:
ref:
description: 'The branch, tag or SHA to checkout'
type: string
required: false

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
tests:
runs-on: ubuntu-latest
strategy:
max-parallel: 1
fail-fast: false
matrix:
ruby-version:
- 2.7.6
- 3.0.4
- 3.1.2
driver:
- headless_chrome
- headless_firefox
rake:
- features:bvt features:p1 features:p2
include:
- driver: sauce
ruby-version: 3.0.4
cloud: SAUCE
rake: features:smoke
- driver: testingbot
ruby-version: 3.0.4
cloud: TESTINGBOT
rake: features:smoke
- driver: browserstack
ruby-version: 3.0.4
cloud: BROWSERSTACK
rake: features:smoke
- driver: crossbrowsertesting
ruby-version: 3.0.4
cloud: CROSSBROWSERTESTING
rake: features:smoke
# - driver: lambdatest
# ruby-version: 3.0.4
# cloud: LAMBDATEST
# rake: features:smoke

steps:
- uses: actions/checkout@v3
with:
submodules: 'recursive'
- name: Install packages
run: sudo apt-get install -y jq google-chrome-stable
- name: Configure bundle
if: ${{ github.event.inputs.ref != '' }}
run: |
echo "BUNDLE_GEMFILE=Gemfile.github" >> $GITHUB_ENV
echo "HOWITZER_REF=${{github.event.inputs.ref}}" >> $GITHUB_ENV
- name: Set up Ruby ${{ matrix.ruby-version }}
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby-version }}
bundler-cache: true
- name: Install dependencies
run: bundle install
- name: Run rubocop
if: ${{ contains(matrix.driver, 'headless') }}
run: bundle exec rake rubocop
- name: Run tests
run: bundle exec rake ${{ matrix.rake }} EXTRA_RUN_OPTS='-c'
env:
SEXY_SETTINGS: "driver=${{ matrix.driver }},cloud_auth_login=${{ secrets[format('{0}_AUTH_LOGIN',matrix.cloud)] }},cloud_auth_pass=${{ secrets[format('{0}_AUTH_PASS',matrix.cloud)] }},testmail_api_key=${{ secrets.TESTMAIL_API_KEY }},testmail_namespace=${{ secrets.TESTMAIL_NAMESPACE }}"
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -19,4 +19,5 @@ build-number.txt
sauce_connect.log*
*.*~
capybara-*.html
.byebug_history
.byebug_history
.vscode
3 changes: 3 additions & 0 deletions .rubocop.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,9 @@ Lint/AmbiguousRegexpLiteral:
Metrics/BlockLength:
Enabled: false

Metrics/MethodLength:
Max: 30

Metrics/ModuleLength:
Max: 150

Expand Down
2 changes: 1 addition & 1 deletion Gemfile
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
source 'https://rubygems.org'

gem 'appium_capybara'
gem 'capybara-screenshot', git: 'https://github.com/mattheworiordan/capybara-screenshot.git'
gem 'factory_bot'
gem 'howitzer' # , git: 'https://github.com/strongqa/howitzer.git', branch: 'master'
gem 'matrix'
gem 'multi_json'
gem 'repeater'
gem 'rest-client'
Expand Down
18 changes: 18 additions & 0 deletions Gemfile.github
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
source 'https://rubygems.org'

gem 'capybara-screenshot', git: 'https://github.com/mattheworiordan/capybara-screenshot.git'
gem 'factory_bot'
gem 'howitzer', git: 'https://github.com/strongqa/howitzer.git', ref: ENV['HOWITZER_REF']
gem 'matrix'
gem 'multi_json'
gem 'repeater'
gem 'rest-client'
gem 'spyke'

gem 'cucumber', '>=3', '<7'
gem 'cuke_sniffer', require: false
gem 'syntax'

gem 'pry'
gem 'pry-byebug'
gem 'rubocop'
Loading