rajatthareja / Reportbuilder
Licence: mit
Ruby gem to merge Cucumber JSON reports and build mobile-friendly HTML Test Report, JSON report and retry file.
Stars: ✭ 69
Projects that are alternatives of or similar to Reportbuilder
Sense Client
Quick and dirty Ruby client for the Hello Sense sleep tracker. Based on http://jeffhuang.com/extracting_my_data_from_the_hello_sense.html
Stars: ✭ 20 (-71.01%)
Mutual labels: rubygem
Dry Validation
Validation library with type-safe schemas and rules
Stars: ✭ 1,087 (+1475.36%)
Mutual labels: rubygem
Scientist
🔬 A Ruby library for carefully refactoring critical paths.
Stars: ✭ 6,301 (+9031.88%)
Mutual labels: rubygem
App store connect
A Ruby interface to the App Store Connect API
Stars: ✭ 22 (-68.12%)
Mutual labels: rubygem
Matestack Ui Core
Matestack enables you to create sophisticated, reactive UIs in pure Ruby, without touching JavaScript and HTML. You end up writing 50% less code while increasing productivity, maintainability and developer happiness.
Stars: ✭ 469 (+579.71%)
Mutual labels: rubygem
Vagrant Cloudstack
Use Vagrant to manage your Cosmic or Cloudstack instances.
Stars: ✭ 65 (-5.8%)
Mutual labels: rubygem
Materialize Sass
Materializecss rubygem for Rails Asset Pipeline / Sprockets
Stars: ✭ 785 (+1037.68%)
Mutual labels: rubygem
Green Button Data
Fast Ruby parser and API client for Green Button data
Stars: ✭ 18 (-73.91%)
Mutual labels: rubygem
Spark api
Ruby client library for communication with the Spark API
Stars: ✭ 56 (-18.84%)
Mutual labels: rubygem
Gingerice
Ruby wrapper for correcting spelling and grammar mistakes based on the context of complete sentences.
Stars: ✭ 478 (+592.75%)
Mutual labels: rubygem
Str metrics
Ruby gem (native extension in Rust) providing implementations of various string metrics
Stars: ✭ 68 (-1.45%)
Mutual labels: rubygem
Fastlane Plugin Google drive
fastlane plugin to upload files to Google Drive
Stars: ✭ 39 (-43.48%)
Mutual labels: rubygem
ReportBuilder
Ruby gem to merge Cucumber JSON reports and build mobile-friendly HTML Test Report, JSON report and retry file.
Sample Reports
Installation
gem install report_builder
Information
- RDoc documentation available on RubyDoc.info
- Source code available on GitHub
Usage
Note: Works with cucumber(>= 2.1.0) test results in JSON format.
Config Options:
Option | Type | Default | Values |
---|---|---|---|
json_path/input_path | [String]/[Array]/[Hash] | (current directory) | input json files path / array of json files or path / hash of json files or path |
report_path | [String] | 'test_report' | reports output file path with file name without extension |
json_report_path | [String] | (report_path) | json report output file path with file name without extension |
html_report_path | [String] | (report_path) | html report output file path with file name without extension |
retry_report_path | [String] | (report_path) | retry report output file path with file name without extension |
report_types | [Array] | [:html] | :json, :html, :retry (output file types) |
report_title | [String] | 'Test Results' | report and html title |
include_images | [Boolean] | true | true / false (If false, the size of HTML report is reduced by excluding embedded images) |
voice_commands | [Boolean] | false | true / false (Enable voice commands for easy navigation and search) |
additional_info | [Hash] | {} | additional info for report summary |
additional_css | [String] | nil | additional CSS string or CSS file path or CSS file url for customizing html report |
additional_js | [String] | nil | additional JS string or JS file path or JS file url for customizing html report |
color | [String] | brown | report color, Ex: indigo, cyan, purple, grey, lime etc. |
Code Examples:
require 'report_builder'
# Ex 1:
ReportBuilder.configure do |config|
config.input_path = 'results/cucumber_json'
config.report_path = 'my_test_report'
config.report_types = [:retry, :html]
config.report_title = 'My Test Results'
config.additional_info = {browser: 'Chrome', environment: 'Stage 5'}
end
ReportBuilder.build_report
# Ex 2:
ReportBuilder.input_path = 'results/cucumber_json'
ReportBuilder.report_path = 'my_test_report'
ReportBuilder.report_types = [:retry, :html]
ReportBuilder.report_title = 'My Test Results'
ReportBuilder.additional_info = {Browser: 'Chrome', Environment: 'Stage 5'}
ReportBuilder.build_report
# Ex 3:
options = {
input_path: 'results/cucumber_json',
report_path: 'my_test_report',
report_types: ['retry', 'html'],
report_title: 'My Test Results',
additional_info: {'Browser' => 'Chrome', 'Environment' => 'Stage 5'}
}
ReportBuilder.build_report options
# Ex 4:
ReportBuilder.input_path = 'results/cucumber_json'
ReportBuilder.configure do |config|
config.report_path = 'my_test_report'
config.report_types = [:json, :html]
end
options = {
report_title: 'My Test Results'
}
ReportBuilder.build_report options
Grouped Features Report Example:
ReportBuilder.configure do |config|
config.input_path = {
'Group A' => ['path/of/json/files/dir1', 'path/of/json/files/dir2'],
'Group B' => ['path/of/json/file1', 'path/of/json/file2'],
'Group C' => 'path/of/json/files/dir'}
end
ReportBuilder.build_report
CLI Options:
Option | Values | Explanation |
---|---|---|
-s, --source | x,y,z | List of input json path or files |
-o, --out | [PATH]NAME | Reports path with name without extension |
--json_out | [PATH]NAME | JSON report path with name without extension |
--html_out | [PATH]NAME | HTML report path with name without extension |
--retry_out | [PATH]NAME | Retry report path with name without extension |
-f, --format | x,y,z | List of report format - html,json,retry |
--[no-]images | Reduce HTML report size by excluding embedded images | |
-T, --title | TITLE | Report title |
-c, --color | COLOR | Report color |
-I, --info | a:x,b:y,c:z | List of additional info about test - key:value |
--css | CSS/PATH/URL | Additional CSS string or CSS file path or CSS file url for customizing html report |
--js | JS/PATH/URL | Additional JS string or JS file path or JS file url for customizing html report |
-vc, --voice_commands | Enable voice commands for easy navigation and search | |
-h, --help | Show available command line switches | |
-v, --version | Show gem version |
CLI Example:
report_builder
report_builder -s 'path/of/json/files/dir'
report_builder -s 'path/of/json/files/dir' -o my_report_file
Hook Example:
require 'report_builder'
at_exit do
ReportBuilder.configure do |config|
config.input_path = 'results/cucumber_json'
config.report_path = 'results/report'
end
ReportBuilder.build_report
end
Voice Commands:
Use voice commands for easy navigation and search
- show ( overview, features, summary, errors )
- search { Keywords }
Report Builder Java API
Contributing
We're open to any contribution. It has to be tested properly though.
License
Copyright (c) 2017 MIT LICENSE
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].