GithubHelp home page GithubHelp logo

pretty_face's People

Contributors

benwoz avatar cheezy avatar dijweaver avatar docondev avatar joelbyler avatar sahithya avatar zeljkofilipin avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pretty_face's Issues

Embedded images not displaying

I have screen shot saving setup in my After hook. When I navigate to the html report and click on the screenshot link it won't display the image. The url looks totally correct. I have tried this in chrome ff and ie. Here is the code from my After hook.

if scenario.failed?
    Dir::mkdir('screenshots') if not File.directory?('screenshots')
    screenshot = "./screenshots/FAILED_#{Time.new.to_i}_#{scenario.name.gsub(' ','_').gsub(/[^0-9A-Za-z_]/, '')}.png"
    @browser.screenshot.save screenshot
    embed screenshot, 'image/png'
  end

PrettyFace Does not work with latest version of ActionPack (4.2.0)

It looks like using the latest PrettyFace (0.10.3) with the latest ActionPack (4.2.0) causes the html formatter to blow up (stack trace below). Temporary fix is to use a version of ActionPack below 4.2.0 with PrettyFace.

{:superclass_delegating_accessor=>:class_attribute} is not a symbol (TypeError)
c:/Ruby200/lib/ruby/gems/2.0.0/gems/deprecated-2.0.1/lib/deprecated.rb:176:in `instance_method'
c:/Ruby200/lib/ruby/gems/2.0.0/gems/deprecated-2.0.1/lib/deprecated.rb:176:in `block in <top (required)>'
c:/Ruby200/lib/ruby/gems/2.0.0/gems/activesupport-4.2.0/lib/active_support/core_ext/class/delegating_attributes.rb:26:in `<class:Class>'
c:/Ruby200/lib/ruby/gems/2.0.0/gems/activesupport-4.2.0/lib/active_support/core_ext/class/delegating_attributes.rb:6:in `<top (required)>'
c:/Ruby200/lib/ruby/gems/2.0.0/gems/activesupport-4.2.0/lib/active_support/core_ext/class.rb:2:in `require'
c:/Ruby200/lib/ruby/gems/2.0.0/gems/activesupport-4.2.0/lib/active_support/core_ext/class.rb:2:in `<top (required)>'
c:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.2.0/lib/action_view/template/resolver.rb:2:in `require'
c:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.2.0/lib/action_view/template/resolver.rb:2:in `<top (required)>'
c:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.2.0/lib/action_view/lookup_context.rb:4:in `require'
c:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.2.0/lib/action_view/lookup_context.rb:4:in `<top (required)>'
c:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.2.0/lib/action_view/base.rb:8:in `require'
c:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.2.0/lib/action_view/base.rb:8:in `<top (required)>'
c:/Ruby200/lib/ruby/gems/2.0.0/gems/pretty_face-0.10.3/lib/pretty_face/formatter/html.rb:159:in `generate_report'
c:/Ruby200/lib/ruby/gems/2.0.0/gems/pretty_face-0.10.3/lib/pretty_face/formatter/html.rb:130:in `after_features'
c:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.18/lib/cucumber/ast/tree_walker.rb:181:in `block in send_to_all'
c:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.18/lib/cucumber/ast/tree_walker.rb:179:in `each'
c:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.18/lib/cucumber/ast/tree_walker.rb:179:in `send_to_all'
c:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.18/lib/cucumber/ast/tree_walker.rb:171:in `broadcast'
c:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.18/lib/cucumber/ast/tree_walker.rb:20:in `visit_features'
c:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.18/lib/cucumber/runtime.rb:49:in `run!'
c:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.18/lib/cucumber/cli/main.rb:47:in `execute!'
c:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.18/bin/cucumber:13:in `<top (required)>'
c:/Ruby200/bin/cucumber:23:in `load'
c:/Ruby200/bin/cucumber:23:in `<main>'

cannot load such file -- cucumber/ast/scenario

error that I get

cannot load such file -- cucumber/ast/scenario
Error creating formatter: PrettyFace::Formatter::Html (LoadError)
/Users/dennisdem/.rvm/gems/ruby-2.2.1/gems/pretty_face-0.10.3/lib/pretty_face/formatter/html.rb:5:in require' /Users/dennisdem/.rvm/gems/ruby-2.2.1/gems/pretty_face-0.10.3/lib/pretty_face/formatter/html.rb:5:in<top (required)>'
/Users/dennisdem/.rvm/gems/ruby-2.2.1/gems/cucumber-2.0.0/lib/cucumber/constantize.rb:17:in require' /Users/dennisdem/.rvm/gems/ruby-2.2.1/gems/cucumber-2.0.0/lib/cucumber/constantize.rb:17:inrescue in constantize'
/Users/dennisdem/.rvm/gems/ruby-2.2.1/gems/cucumber-2.0.0/lib/cucumber/constantize.rb:6:in constantize' /Users/dennisdem/.rvm/gems/ruby-2.2.1/gems/cucumber-2.0.0/lib/cucumber/cli/configuration.rb:73:informatter_class'
/Users/dennisdem/.rvm/gems/ruby-2.2.1/gems/cucumber-2.0.0/lib/cucumber/cli/configuration.rb:172:in block in formatter_factories' /Users/dennisdem/.rvm/gems/ruby-2.2.1/gems/cucumber-2.0.0/lib/cucumber/cli/configuration.rb:168:inmap'
/Users/dennisdem/.rvm/gems/ruby-2.2.1/gems/cucumber-2.0.0/lib/cucumber/cli/configuration.rb:168:in formatter_factories' /Users/dennisdem/.rvm/gems/ruby-2.2.1/gems/cucumber-2.0.0/lib/cucumber/runtime.rb:193:informatters'
/Users/dennisdem/.rvm/gems/ruby-2.2.1/gems/cucumber-2.0.0/lib/cucumber/runtime.rb:185:in report' /Users/dennisdem/.rvm/gems/ruby-2.2.1/gems/cucumber-2.0.0/lib/cucumber/runtime.rb:67:inrun!'
/Users/dennisdem/.rvm/gems/ruby-2.2.1/gems/cucumber-2.0.0/lib/cucumber/cli/main.rb:38:in execute!' /Users/dennisdem/.rvm/gems/ruby-2.2.1/gems/cucumber-2.0.0/bin/cucumber:9:in<top (required)>'
/Users/dennisdem/.rvm/gems/ruby-2.2.1/bin/cucumber:23:in load' /Users/dennisdem/.rvm/gems/ruby-2.2.1/bin/cucumber:23:in<top (required)>'
-e:1:in load' -e:1:in

'

Running Rubymine

Using cucumber 2.0.0
Using pretty_face 0.10.3
Using rspec 3.2.0
Using selenium-webdriver 2.46.2

Pretty_face feature html unable to reference stock images (passed failed, etc)

We are using the latest pretty_face from github (https://github.com/cheezy/pretty_face).

Our rake file has a simple task as follows:

namespace :test_rake_results do
  Cucumber::Rake::Task.new(:test_c) do |task|
    task.cucumber_opts = "--format PrettyFace::Formatter::Html --out index.html"
  end
end

task :demo_c => ['test_rake_results:test_c']

When we execute the task, the index.html file is created in the root of the project as expected. Also, the test1.html file is created in the feature folder alongside the original test1.feature file:

image

When opened in a browser, the index.html file looks as expected. The passed, failed, etc images appear. However, when we click on a feature link at the bottom of the page as so:

image

The test1.html file is opened but looks like this:

image

Looking at the source of the test1.html file, we are seeing that the links to the images are referenced from the location of the test1.html file itself rather than from the location of the index.html file (one folder up).

image

Also, from the test1.html file the back button is not linking to the index.html file as expected. This is the same issue.

Is this a bug, or is there a configuration option or setup approach we are missing?

Report mis-formatted when more features than processes in parallel run

When I run my suite (10 features) in parallel (on 8 processors) I am getting a mis-formatted feature overview in my index.html.
screen shot 2015-11-30 at 3 14 10 pm

The index.html also does not show all of the processes that were run. As the picture shows there are 3 features that were reported but 10 features were run.

Ruby:
ruby 2.2.1

Gems:
cucumber (1.3.20)
parallel (1.6.1)
parallel_tests (1.3.7)
pretty_face (0.10.3)

undefined method `steps'

I'm missing something:

undefined method steps' for nil:NilClass (NoMethodError) C:/Ruby/lib/ruby/gems/1.9.1/gems/pretty_face-0.1/lib/pretty_face/formatter/report.rb:28:inadd_step'

undefined method `steps' problem again

Hello,
I don't know how I can open issue so I write a new issue.
Just now I have the same problem, when I run it with RubyMine:

undefined method steps' for nil:NilClass (NoMethodError)
C:/Ruby/lib/ruby/gems/1.9.1/gems/pretty_face-0.1/lib/pretty_face/formatter/report.rb:28:inadd_step'

I'm using:
actionpack (4.0.1, 2.3.18)
activesupport (4.0.1, 2.3.18)
ansi (1.4.3)
atomic (1.1.14)
bigdecimal (1.2.1, 1.2.0)
builder (3.2.2, 3.2.0, 3.1.4)
bundler (1.3.5)
childprocess (0.3.9)
cucumber (1.3.9, 1.3.8, 1.3.1)
data_magic (0.16.1, 0.14)
debase (0.0.8, 0.0.3)
debugger-ruby_core_source (1.2.
diff-lcs (1.2.5, 1.2.4)
erubis (2.7.0)
faker (1.2.0, 1.1.2)
ffi (1.9.3 x86-mingw32, 1.9.0 x
fig_newton (0.9)
gherkin (2.12.2 x86-mingw32, 2.
hashie (2.0.5)
httpclient (2.3.4.1, 2.3.3)
i18n (0.6.5, 0.6.4)
io-console (0.4.2)
json (1.8.0, 1.7.7)
mini_magick (3.5.0)
mini_portile (0.5.1)
minitest (5.0.8, 4.7.5, 4.3.2)
minitest-reporters (1.0.0.beta2
multi_json (1.8.2, 1.8.0, 1.7.3
multi_test (0.0.2)
net-http-digest_auth (1.4, 1.3)
nokogiri (1.6.0 x86-mingw32)
page-object (0.9.3, 0.9.2, 0.8.
page_navigation (0.9)
pik (0.2.8)
powerbar (1.0.11)
pretty_face (0.9.1, 0.3)
psych (2.0.1, 2.0.0)
rack (1.5.2, 1.1.6)
rack-test (0.6.2)
rake (10.1.0, 0.9.6)
rautomation (0.13.0)
rdoc (4.0.1, 4.0.0)
require_all (1.3.1, 1.2.1)
rspec (2.14.1, 2.13.0)
rspec-core (2.14.7, 2.14.5, 2.1
rspec-expectations (2.14.4, 2.1
rspec-mocks (2.14.4, 2.14.3, 2.
ruby-debug-ide (0.4.17.beta16)
rubygems-update (2.1.10, 2.1.5,
rubyzip (1.0.0, 0.9.9)
selenium-webdriver (2.37.0, 2.3
subexec (0.2.3)
syntax (1.0.0)
test-unit (2.0.0.0)
testgen (0.8.1)
thor (0.18.1)
thread_safe (0.1.3)
tzinfo (0.3.38)
watir-classic (4.0.1)
watir-webdriver (0.6.4, 0.6.3)
websocket (1.0.7)
win32-api (1.5.0 universal-ming
win32-process (0.7.4)
win32console (1.3.2 x86-mingw32
win32screenshot (1.0.9)
windows-api (0.4.2)
windows-pr (1.2.2)
yml_reader (0.2)

Does anybody know the problem?
Sincerely Regards

cannot load such file -- cucumber/ast/scenario (LoadError)

Hi,

I am getting this error #744 while executing watir-cucumber scripts using cucumber 2.0 beta 3 in windows. I have raised a defect in cucumber issue tracker. But it is an pretty_face issue and mattwynne provided patch for cause of this issue.

Can any body see this issue #744 page and fix it.

Thanks,
Anil

Undefined method 'table=' for for #<Cucumber::Ast::Step:0x3e45a30> - Scenario Outline with data table

using:
pretty_face 0.9.1
cucumber 1.3.10

For the following feature file I am getting an error message:

 undefined method `table=' for #<Cucumber::Ast::Step:0x3e45a30> (NoMethodError)

Example Feature:

Scenario Outline: Pretty Face records results for failed scenario outlines
    Given I have a scenario outline with a data table
     |  <username>  |  <password>  |
    When I execute my feature file
    Then the table is included in the HTML report

  Examples:
    |   username    |   password  |

The backtrace points to this method.

  def after_step(step)
        step = process_step(step) unless step_belongs_to_outline? step
        if @cells
          step.table = @cells
          @cells = nil
        end
      end

The method calls step.table =, but because this step belongs to an outline, the table= method was not created in process_step.

NoMethodError when using pretty_face with Scenario Outlines

When using pretty face with Scenario Outlines an error is produced. Here is my scenario code:

Scenario Outline: : Add Application Category
When I search for the "<search_name>" application
Then I should see the "<category_name>" category and the "<app_name>" application in the application tree
Examples:
| search_name | app_name   | category_name |
| freq        | frequently | help          |
| wel         | welcome    | help          |
| incl        | incliner   | button        |
| decl        | decliner   | button        |
| new         | news       | news          |
| out         | outage     | payers        |
| prod        | product    | recondo       |
| publ        | publisher  | recondo       |
| rep         | report     | report        |
| pass        | password   | utilities     |
| upl         | upload     | utilities     |

Here is the output:

When I search for the "<search_name>" application
Then I should see the "<category_name>" category and the "<app_name>"          application in the application tree
undefined method `steps' for nil:NilClass (NoMethodError)
C:/Ruby193/lib/ruby/gems/1.9.1/gems/pretty_face-   0.9.1/lib/pretty_face/formatter/report.rb:79:in `add_step'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/pretty_face-0.9.1/lib/pretty_face/formatter/html.rb:233:in `process_step'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/pretty_face-0.9.1/lib/pretty_face/formatter/html.rb:111:in `after_step'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/cucumber-1.3.10/lib/cucumber/ast/tree_walker.rb:181:in `block in send_to_all'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/cucumber-1.3.10/lib/cucumber/ast/tree_walker.rb:179:in `each'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/cucumber-1.3.10/lib/cucumber/ast/tree_walker.rb:179:in `send_to_all' 
(cont...)
Process finished with exit code 1

"cannot load such file -- cucumber/ast/scenario" error is getting when i tried to use pretty face gem in my profiles 'default: FIG_NEWTON_FILE=default.yml --format PrettyFace::Formatter::Html --out results/index.html browser=firefox'

cannot load such file -- cucumber/ast/scenario
Error creating formatter: PrettyFace::Formatter::Html (LoadError)
C:/Ruby193/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in require' C:/Ruby193/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:inrequire'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/pretty_face-0.10.3/lib/pretty_face/formatter/html.rb:5:in <top (required)>' C:/Ruby193/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:60:inrequire'
C:/Ruby193/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:60:in rescue in require' C:/Ruby193/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:35:inrequire'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/cucumber-2.0.0/lib/cucumber/constantize.rb:17:in rescue in constantize' C:/Ruby193/lib/ruby/gems/1.9.1/gems/cucumber-2.0.0/lib/cucumber/constantize.rb:6:inconstantize'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/cucumber-2.0.0/lib/cucumber/cli/configuration.rb:73:in formatter_class' C:/Ruby193/lib/ruby/gems/1.9.1/gems/cucumber-2.0.0/lib/cucumber/cli/configuration.rb:172:inblock in formatter_factories'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/cucumber-2.0.0/lib/cucumber/cli/configuration.rb:168:in map' C:/Ruby193/lib/ruby/gems/1.9.1/gems/cucumber-2.0.0/lib/cucumber/cli/configuration.rb:168:informatter_factories'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/cucumber-2.0.0/lib/cucumber/runtime.rb:193:in formatters' C:/Ruby193/lib/ruby/gems/1.9.1/gems/cucumber-2.0.0/lib/cucumber/runtime.rb:185:inreport'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/cucumber-2.0.0/lib/cucumber/runtime.rb:67:in run!' C:/Ruby193/lib/ruby/gems/1.9.1/gems/cucumber-2.0.0/lib/cucumber/cli/main.rb:38:inexecute!'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/cucumber-2.0.0/bin/cucumber:9:in <top (required)>' C:/Ruby193/bin/cucumber:23:inload'
C:/Ruby193/bin/cucumber:23:in `

'

Can anyone please help me to resolve it?

I am using below versions

  • RUBY Version 1.9.3
  • Cucumber version 2.0.0
  • Pretty_face version 0.10.3

Thanks.

Prettyface out of date with Cucumber

Hey folks,

This is an issue we're picking up at a client, and after a bit of digging, I've found that the cucumber/ast references within the code is actually causing the project to fail spectacularly.

Not sure how to fix, but I did dig up that Ast was deprecated. Thought I'd point you in the right direction.

C:\Ruby200\bin\ruby.exe -e $stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift) C:\Ruby200\bin/cucumber C:/Users/TNV766/Desktop/ICORE_Hispanic_Automation_Subversion/51.05_new/icoreAcceptanceTests/features/Hispanic_TellUs_About_Yourself_Dropdowns.feature --format Teamcity::Cucumber::Formatter --expand --color -r features -p st5 RDEE_BROWSER=firefox
Testing started at 10:28 AM ...
0 scenarios
0 steps
0m0.000s
NaN (ActionView::Template::Error)
C:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.17/lib/cucumber/formatter/duration.rb:8:in divmod' C:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.17/lib/cucumber/formatter/duration.rb:8:informat_duration'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/pretty_face-0.10.2/lib/pretty_face/formatter/view_helper.rb:33:in scenario_average_duration' C:/Ruby200/lib/ruby/gems/2.0.0/gems/pretty_face-0.10.2/lib/pretty_face/templates/main.erb:53:in_____uby____lib_ruby_gems_______gems_pretty_face________lib_pretty_face_templates_main_erb___341596305_27652512'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.1.6/lib/action_view/template.rb:145:in block in render' C:/Ruby200/lib/ruby/gems/2.0.0/gems/activesupport-4.1.6/lib/active_support/notifications.rb:161:ininstrument'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.1.6/lib/action_view/template.rb:339:in instrument' C:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.1.6/lib/action_view/template.rb:143:inrender'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.1.6/lib/action_view/renderer/template_renderer.rb:55:in block (2 levels) in render_template' C:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.1.6/lib/action_view/renderer/abstract_renderer.rb:38:inblock in instrument'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/activesupport-4.1.6/lib/active_support/notifications.rb:159:in block in instrument' C:/Ruby200/lib/ruby/gems/2.0.0/gems/activesupport-4.1.6/lib/active_support/notifications/instrumenter.rb:20:ininstrument'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/activesupport-4.1.6/lib/active_support/notifications.rb:159:in instrument' C:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.1.6/lib/action_view/renderer/abstract_renderer.rb:38:ininstrument'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.1.6/lib/action_view/renderer/template_renderer.rb:54:in block in render_template' C:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.1.6/lib/action_view/renderer/template_renderer.rb:62:inrender_with_layout'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.1.6/lib/action_view/renderer/template_renderer.rb:53:in render_template' C:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.1.6/lib/action_view/renderer/template_renderer.rb:17:inrender'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.1.6/lib/action_view/renderer/renderer.rb:42:in render_template' C:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.1.6/lib/action_view/renderer/renderer.rb:23:inrender'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.1.6/lib/action_view/helpers/rendering_helper.rb:32:in render' C:/Ruby200/lib/ruby/gems/2.0.0/gems/pretty_face-0.10.2/lib/pretty_face/formatter/html.rb:171:ingenerate_report'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/pretty_face-0.10.2/lib/pretty_face/formatter/html.rb:140:in after_features' C:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.17/lib/cucumber/ast/tree_walker.rb:181:inblock in send_to_all'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.17/lib/cucumber/ast/tree_walker.rb:179:in each' C:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.17/lib/cucumber/ast/tree_walker.rb:179:insend_to_all'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.17/lib/cucumber/ast/tree_walker.rb:171:in broadcast' C:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.17/lib/cucumber/ast/tree_walker.rb:20:invisit_features'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.17/lib/cucumber/runtime.rb:49:in run!' C:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.17/lib/cucumber/cli/main.rb:47:inexecute!'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.17/bin/cucumber:13:in <top (required)>' C:/Ruby200/bin/cucumber:23:inload'
C:/Ruby200/bin/cucumber:23:in <top (required)>' -e:1:inload'
-e:1:in `

'

Process finished with exit code 1
Empty test suite.

Question about feature/reports folder structure

Hi Cheezy,

I have my features broken up by folders. e.g. features/product_a/feature_a.feature

I set my report to output to a folder named 'results' like so:

my_profile: -r features/ --no-source --format PrettyFace::Formatter::Html --out results/index.html

Given this configuration, I ended up having to duplicate the folder structure of features to align directly with the results folder. In other words, I would need to create a results/product_a folder. Is this how it's intended to be used? Should I always have to manually create a new folder under results every time I create a new folder in features? How would you recommend configuring a scenario like this?

Thanks!

Unable to generate report getting uninitialized constant ActionView::LookupContext::DetailsKey::Mime (NameError)

I am getting the following error while running my scripts using:

@browser = Watir::Browser.new :phantomjs

not only for phantomjs for all drivers. Please look into this issue

uninitialized constant ActionView::LookupContext::DetailsKey::Mime (NameError)
C:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.1.1/lib/action_view/lookup_cont
ext.rb:69:in `get'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.1.1/lib/action_view/lookup_cont
ext.rb:93:in `details_key'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.1.1/lib/action_view/lookup_cont
ext.rb:160:in `detail_args_for'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.1.1/lib/action_view/lookup_cont
ext.rb:154:in `args_for_lookup'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.1.1/lib/action_view/lookup_cont
ext.rb:124:in `find'
C:in `find_template'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.1.1/lib/action_view/renderer/te
mplate_renderer.rb:33:in `block in determine_template'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.1.1/lib/action_view/lookup_cont
ext.rb:145:in `with_fallbacks'
C:in `with_fallbacks'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.1.1/lib/action_view/renderer/te
mplate_renderer.rb:33:in `determine_template'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.1.1/lib/action_view/renderer/te
mplate_renderer.rb:8:in `render'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.1.1/lib/action_view/renderer/re
nderer.rb:42:in `render_template'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.1.1/lib/action_view/renderer/re
nderer.rb:23:in `render'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/actionview-4.1.1/lib/action_view/helpers/ren
dering_helper.rb:32:in `render'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/pretty_face-0.10.1/lib/pretty_face/formatter
/html.rb:157:in `generate_report'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/pretty_face-0.10.1/lib/pretty_face/formatter
/html.rb:126:in `after_features'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.15/lib/cucumber/ast/tree_walker
.rb:181:in `block in send_to_all'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.15/lib/cucumber/ast/tree_walker
.rb:179:in `each'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.15/lib/cucumber/ast/tree_walker
.rb:179:in `send_to_all'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.15/lib/cucumber/ast/tree_walker
.rb:171:in `broadcast'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.15/lib/cucumber/ast/tree_walker
.rb:20:in `visit_features'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.15/lib/cucumber/runtime.rb:49:i
n `run!'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.15/lib/cucumber/cli/main.rb:47:
in `execute!'
C:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.3.15/bin/cucumber:13:in `<top (re
quired)>'
C:/Ruby200/bin/cucumber:23:in `load'
C:/Ruby200/bin/cucumber:23:in `<main>'

Fails when using multiline argument tables with scenario outlines

PrettyFace appears to be failing when using multiline argument tables in conjunction with scenario outlines. For example:

Scenario Outline: Example
    Given the following data
        | Foo        | Bar        |
        | <foo_data> | <bar_data> |
    Then things should work

    Examples:
        | foo_data  | bar_data  |
        | abcd      | 1234      |

The above scenario outline causes PrettyFace to fail with the following message:

undefined method `table=' for #<Cucumber::Ast::Step:0x42fab48> (NoMethodError)

which comes from:

lib/pretty_face/formatter/html.rb:120:in `after_step'

error while embedding images & no pretty_face report when put as default profile

hi ,

i have the below code in my env.rb to generate screenshots for failed and passed scenarios.

def take_screenshot(scenario)
if scenario.failed?
scenario_name = scenario.name.gsub /[^\w-]/, ' '
time = Time.now.strftime("%Y-%m-%d %H%M")
Dir.mkdir("failed_png") unless File.directory?("failed_png")
filename = time + ' - ' + scenario_name + '.png'
screenshot_path = './failed_png/' + filename
save_screenshot(screenshot_path)
embed ('../../failed_png/' + filename), 'image/png'
else
scenario_name = scenario.name.gsub /[^\w-]/, ' '
time = Time.now.strftime("%Y-%m-%d %H%M")
Dir.mkdir("success_png") unless File.directory?("success_png")
filename = time + ' - ' + scenario_name + '.png'
screenshot_path = './success_png/' + filename
save_screenshot(screenshot_path)
embed ('../../success_png/' + filename), 'image/png'
end
end
After do |scenario|
take_screenshot(scenario)
end

the above code creates images in my success_png folder . here below the snap shot of my folder structure .

image

when i do this , i get the pretty face report of my scenario, image is displayed correctly but i get the failure scenario due to the error in the command line like below:

image

and when i inspect the image in pretty face report html, i can see the path is valid and i can see the image when i click , but why this error? here is the src in the pretty_face html report

src="images/../../success_png/2014-05-13 0949 - Valid Login.png"

due to this my scenarios are failing. can u let me know what i shall do to get rid of the this error . i am using pretty_face version 0.10.1 with actionpack 4.0.4.

another issue , i am facing is , no matter what if i put the pretty_face arguments like this in default yml file in cucumber, it doesnt run the report. i have to always put a seperate profile in the yml for generating pretty_face report. i am doing something wrong ?

default: --format pretty --tag ~@wip --format PrettyFace::Formatter::Html --out results/index.html

PrettyFace formatter not working at all.

I updated PrettyFace (I think, jenkins does it automatically so I'm guessing it updated because everything is now breaking) and I'm getting this error when trying to use the --format PrettyFace::Formatter:Html --out results/index.html flags

NaN (ActionView::Template::Error)
C:/Ruby193/lib/ruby/gems/1.9.1/gems/cucumber-1.3.6/lib/cucumber/formatter/duration.rb:8:in `divmod'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/cucumber-1.3.6/lib/cucumber/formatter/duration.rb:8:in `format_duration'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/pretty_face-0.9.1/lib/pretty_face/formatter/view_helper.rb:33:in `scenario_average_duration'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/pretty_face-0.9.1/lib/pretty_face/templates/main.erb:53:in `_____uby____lib_ruby_gems_______gems_pretty_face_______lib_pretty_face_templates_main_erb__556451822_35069304'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/actionpack-4.0.1/lib/action_view/template.rb:143:in `block in render'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-4.0.1/lib/active_support/notifications.rb:161:in `instrument'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/actionpack-4.0.1/lib/action_view/template.rb:141:in `render'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/actionpack-4.0.1/lib/action_view/renderer/template_renderer.rb:49:in `block (2 levels) in render_template'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/actionpack-4.0.1/lib/action_view/renderer/abstract_renderer.rb:38:in `block in instrument'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-4.0.1/lib/active_support/notifications.rb:159:in `block in instrument'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-4.0.1/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-4.0.1/lib/active_support/notifications.rb:159:in `instrument'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/actionpack-4.0.1/lib/action_view/renderer/abstract_renderer.rb:38:in `instrument'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/actionpack-4.0.1/lib/action_view/renderer/template_renderer.rb:48:in `block in render_template'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/actionpack-4.0.1/lib/action_view/renderer/template_renderer.rb:56:in `render_with_layout'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/actionpack-4.0.1/lib/action_view/renderer/template_renderer.rb:47:in `render_template'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/actionpack-4.0.1/lib/action_view/renderer/template_renderer.rb:17:in `render'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/actionpack-4.0.1/lib/action_view/renderer/renderer.rb:42:in `render_template'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/actionpack-4.0.1/lib/action_view/renderer/renderer.rb:23:in `render'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/actionpack-4.0.1/lib/action_view/helpers/rendering_helper.rb:24:in `render'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/pretty_face-0.9.1/lib/pretty_face/formatter/html.rb:154:in `generate_report'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/pretty_face-0.9.1/lib/pretty_face/formatter/html.rb:123:in `after_features'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/cucumber-1.3.6/lib/cucumber/ast/tree_walker.rb:181:in `block in send_to_all'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/cucumber-1.3.6/lib/cucumber/ast/tree_walker.rb:179:in `each'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/cucumber-1.3.6/lib/cucumber/ast/tree_walker.rb:179:in `send_to_all'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/cucumber-1.3.6/lib/cucumber/ast/tree_walker.rb:171:in `broadcast'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/cucumber-1.3.6/lib/cucumber/ast/tree_walker.rb:20:in `visit_features'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/cucumber-1.3.6/lib/cucumber/runtime.rb:48:in `run!'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/cucumber-1.3.6/lib/cucumber/cli/main.rb:47:in `execute!'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/cucumber-1.3.6/bin/cucumber:13:in `<top (required)>'
C:/Ruby193/bin/cucumber:23:in `load'
C:/Ruby193/bin/cucumber:23:in `<main>'

Embedding two screenshots after a failed scenario

Hi,

I am using Ruby + Cucumber + prettyFace (no PageObject) for testing with two browsers at the same time (two different users logged in to the same webpage and interacting - one user does some action, the second one verifies it, etc). When the scenario fails, I iterate through the list of users and take screenshot of their browser. So far so good (I end up with two screenshots).
But the problem is to embed them in the prettyFace report. I only see link for the screenshot that was embedded last. Seems to me that the first embed is overridden by the second one. My goal is to embed both of them so I can have better idea where the user interaction failed. Is there a way around it or only one screenshot can be embedded to the report for each failed scenario?

Enhancement: How about adding failed and passed screenshots in the report?

Hi Jeff,

How about adding failed and passed screenshots in the report?

Presently I am using like this:

After do |scenario|
if scenario.failed?
Dir::mkdir('images') if not File.directory?('images')
screenshot = "./FAILED_#{scenario.name.gsub(' ','').gsub(/[^0-9A-Za-z_]/, '')}.png"
@browser.screenshot.save(screenshot)
embed screenshot, 'image/png'
else
Dir::mkdir('images') if not File.directory?('images')
screenshot = "./PASSED
#{scenario.name.gsub(' ','_').gsub(/[^0-9A-Za-z_]/, '')}.png"
@browser.screenshot.save(screenshot)
embed screenshot, 'image/png'
end

Can we include this in pretty_face

Thanks,
Anil

undefined method `silence_warnings' for ActiveSupport::Deprecation::DeprecationProxy:Class (NoMethodError)

Trying to run cucumber with pretty_face report produces the following:

[ruby-2.0.0-p353]ay@ay-air ~/RubymineProjects/indi_ui_tests $ cucumber --format PrettyFace::Formatter::Html --out testresults/report.html
undefined method `silence_warnings' for ActiveSupport::Deprecation::DeprecationProxy:Class (NoMethodError)
/Users/ay/.rvm/gems/ruby-2.0.0-p353/gems/activesupport-2.3.18/lib/active_support/deprecation.rb:130:in `<class:DeprecationProxy>'
/Users/ay/.rvm/gems/ruby-2.0.0-p353/gems/activesupport-2.3.18/lib/active_support/deprecation.rb:122:in `<module:Deprecation>'
/Users/ay/.rvm/gems/ruby-2.0.0-p353/gems/activesupport-2.3.18/lib/active_support/deprecation.rb:4:in `<module:ActiveSupport>'
/Users/ay/.rvm/gems/ruby-2.0.0-p353/gems/activesupport-2.3.18/lib/active_support/deprecation.rb:3:in `<top (required)>'
/Users/ay/.rvm/gems/ruby-2.0.0-p353/gems/actionpack-2.3.18/lib/action_view.rb:56:in `<top (required)>'
/Users/ay/.rvm/rubies/ruby-2.0.0-p353/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
/Users/ay/.rvm/rubies/ruby-2.0.0-p353/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
/Users/ay/.rvm/gems/ruby-2.0.0-p353/gems/pretty_face-0.3/lib/pretty_face/formatter/html.rb:1:in `<top (required)>'
/Users/ay/.rvm/rubies/ruby-2.0.0-p353/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:135:in `require'
/Users/ay/.rvm/rubies/ruby-2.0.0-p353/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:135:in `rescue in require'
/Users/ay/.rvm/rubies/ruby-2.0.0-p353/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:144:in `require'
/Users/ay/.rvm/gems/ruby-2.0.0-p353/gems/cucumber-1.3.10/lib/cucumber/constantize.rb:17:in `rescue in constantize'
/Users/ay/.rvm/gems/ruby-2.0.0-p353/gems/cucumber-1.3.10/lib/cucumber/constantize.rb:6:in `constantize'
/Users/ay/.rvm/gems/ruby-2.0.0-p353/gems/cucumber-1.3.10/lib/cucumber/cli/configuration.rb:83:in `formatter_class'
/Users/ay/.rvm/gems/ruby-2.0.0-p353/gems/cucumber-1.3.10/lib/cucumber/cli/configuration.rb:182:in `block in formatters'
/Users/ay/.rvm/gems/ruby-2.0.0-p353/gems/cucumber-1.3.10/lib/cucumber/cli/configuration.rb:178:in `map'
/Users/ay/.rvm/gems/ruby-2.0.0-p353/gems/cucumber-1.3.10/lib/cucumber/cli/configuration.rb:178:in `formatters'
/Users/ay/.rvm/gems/ruby-2.0.0-p353/gems/cucumber-1.3.10/lib/cucumber/cli/configuration.rb:76:in `build_tree_walker'
/Users/ay/.rvm/gems/ruby-2.0.0-p353/gems/cucumber-1.3.10/lib/cucumber/runtime.rb:46:in `run!'
/Users/ay/.rvm/gems/ruby-2.0.0-p353/gems/cucumber-1.3.10/lib/cucumber/cli/main.rb:47:in `execute!'
/Users/ay/.rvm/gems/ruby-2.0.0-p353/gems/cucumber-1.3.10/bin/cucumber:13:in `<top (required)>'
/Users/ay/.rvm/gems/ruby-2.0.0-p353/bin/cucumber:23:in `load'
/Users/ay/.rvm/gems/ruby-2.0.0-p353/bin/cucumber:23:in `<main>'
[ruby-2.0.0-p353]ay@ay-air ~/RubymineProjects/indi_ui_tests $

This is reproducible with both Ruby 2.0 and 2.1

Dealing with embedded images better

I'm going to start using embedded images because I like the idea of not have screenshots building up everywhere. However when using this code I ran into a problem with the feature template.

encoded_img = @browser.driver.screenshot_as(:base64)
embed("data:image/png;base64,#{encoded_img}",'image/png')

Based on the feature template the resulting HTML is as follows.

src="images/data:image/png;base64,iVBORw0.....

In order to get the embedded image to display I had to remove "images/" from the feature template.

<img id='<%= scenario.image_id %>' style='display: none' src='<%= feature.directory_prefix_for(feature.file) %><%= scenario.image %>'/>

This works for me but it would be nice if instead of appending the images/ to everything in the features template it was appended in the HTML file here with the scenario image file name.

def embed(src, mime_type, label)
    case(mime_type)
    when /^image\/(png|gif|jpg|jpeg)/
      embed_image(src, label)
    end
end

def embed_image(src, label)
    @report.current_scenario.image = src.split(separator).last
    @report.current_scenario.image_label = label
    @report.current_scenario.image_id = "img_#{@img_id}"
    @img_id += 1
    filename = "#{File.dirname(@path)}#{separator}images"
    FileUtils.cp src, filename
end

It looks as though it would be possible to account for embedded images here and either apply the "images/" to the front or not.

Thanks,
Adam

Step messages not diaplayed in results

If I output to the normal HTML any "puts" show up. However if I use the pretty_face output they do not. Normally we don't print in the steps but needed it for only one scenario.
To env.rb I added:
Before do |scenario|
$world = self
end

In the step I used:
$world.puts "Fruit name: #{fruit_name}"

When outputting to html it shows up as

  • Fruit name: Washington Apple
  • Any way to have the prints appear in the results file with pretty_face?
    Thanks.

    Error creating formatter: PrettyFace::Formatter::HTML (Gem::LoadError)

    Hi Guys,

    When i tried to create pretty face report i get the below error

    i used pretty_face as :: calabash-android run tablet_build5.apk --format PrettyFace::Formatter::HTML --out result/index.html --tags @clean LOGIN=[email protected]:qwerty

    Could not find 'syntax' (>= 0) among 199 total gem(s)
    Error creating formatter: PrettyFace::Formatter::HTML (Gem::LoadError)
    /Library/Ruby/Site/2.0.0/rubygems/dependency.rb:298:in to_specs' /Library/Ruby/Site/2.0.0/rubygems/specification.rb:1295:inblock in activate_dependencies'
    /Library/Ruby/Site/2.0.0/rubygems/specification.rb:1284:in each' /Library/Ruby/Site/2.0.0/rubygems/specification.rb:1284:inactivate_dependencies'
    /Library/Ruby/Site/2.0.0/rubygems/specification.rb:1266:in activate' /Library/Ruby/Site/2.0.0/rubygems.rb:196:inrescue in try_activate'
    /Library/Ruby/Site/2.0.0/rubygems.rb:193:in try_activate' /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:132:inrescue in require'
    /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:144:in require' /Library/Ruby/Gems/2.0.0/gems/cucumber-1.3.15/lib/cucumber/constantize.rb:17:inrescue in constantize'
    /Library/Ruby/Gems/2.0.0/gems/cucumber-1.3.15/lib/cucumber/constantize.rb:6:in constantize' /Library/Ruby/Gems/2.0.0/gems/cucumber-1.3.15/lib/cucumber/cli/configuration.rb:83:informatter_class'
    /Library/Ruby/Gems/2.0.0/gems/cucumber-1.3.15/lib/cucumber/cli/configuration.rb:182:in block in formatters' /Library/Ruby/Gems/2.0.0/gems/cucumber-1.3.15/lib/cucumber/cli/configuration.rb:178:inmap'
    /Library/Ruby/Gems/2.0.0/gems/cucumber-1.3.15/lib/cucumber/cli/configuration.rb:178:in formatters' /Library/Ruby/Gems/2.0.0/gems/cucumber-1.3.15/lib/cucumber/cli/configuration.rb:76:inbuild_tree_walker'
    /Library/Ruby/Gems/2.0.0/gems/cucumber-1.3.15/lib/cucumber/runtime.rb:46:in run!' /Library/Ruby/Gems/2.0.0/gems/cucumber-1.3.15/lib/cucumber/cli/main.rb:47:inexecute!'
    /Library/Ruby/Gems/2.0.0/gems/cucumber-1.3.15/bin/cucumber:13:in <top (required)>' /usr/bin/cucumber:23:inload'
    /usr/bin/cucumber:23:in `

    '

    Can you please help me with this ?

    uninitialized constant ActionView::LookupContext::DetailsKey::Mime (NameError)

    Ran bundle update and started getting the following error with pretty_face 0.10.1

    uninitialized constant ActionView::LookupContext::DetailsKey::Mime (NameError)
    /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionview-4.1.0/lib/action_view/lookup_context.rb:69:in get' /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionview-4.1.0/lib/action_view/lookup_context.rb:93:indetails_key'
    /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionview-4.1.0/lib/action_view/lookup_context.rb:160:in detail_args_for' /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionview-4.1.0/lib/action_view/lookup_context.rb:154:inargs_for_lookup'
    /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionview-4.1.0/lib/action_view/lookup_context.rb:124:in find' /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionview-4.1.0/lib/action_view/renderer/abstract_renderer.rb:18:infind_template'
    /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionview-4.1.0/lib/action_view/renderer/template_renderer.rb:33:in block in determine_template' /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionview-4.1.0/lib/action_view/lookup_context.rb:145:inwith_fallbacks'
    /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionview-4.1.0/lib/action_view/renderer/abstract_renderer.rb:18:in with_fallbacks' /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionview-4.1.0/lib/action_view/renderer/template_renderer.rb:33:indetermine_template'
    /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionview-4.1.0/lib/action_view/renderer/template_renderer.rb:8:in render' /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionview-4.1.0/lib/action_view/renderer/renderer.rb:42:inrender_template'
    /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionview-4.1.0/lib/action_view/renderer/renderer.rb:23:in render' /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionview-4.1.0/lib/action_view/helpers/rendering_helper.rb:32:inrender'
    /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/pretty_face-0.10/lib/pretty_face/formatter/html.rb:157:in generate_report' /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/pretty_face-0.10/lib/pretty_face/formatter/html.rb:126:inafter_features'
    /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/cucumber-1.3.14/lib/cucumber/ast/tree_walker.rb:181:in block in send_to_all' /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/cucumber-1.3.14/lib/cucumber/ast/tree_walker.rb:179:ineach'
    /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/cucumber-1.3.14/lib/cucumber/ast/tree_walker.rb:179:in send_to_all' /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/cucumber-1.3.14/lib/cucumber/ast/tree_walker.rb:171:inbroadcast'
    /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/cucumber-1.3.14/lib/cucumber/ast/tree_walker.rb:20:in visit_features' /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/cucumber-1.3.14/lib/cucumber/runtime.rb:49:inrun!'
    /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/cucumber-1.3.14/lib/cucumber/cli/main.rb:47:in execute!' /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/cucumber-1.3.14/bin/cucumber:13:in<top (required)>'
    /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/bin/cucumber:23:in load' /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/bin/cucumber:23:in

    '
    /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/bin/ruby_executable_hooks:14:in eval' /Users/tester/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/bin/ruby_executable_hooks:14:in'

    Tried 0.10.0 and had the same issue. It results in blank output files.

    Achieving True Cucumber 2.0 Support

    Hi Folks,

    I noticed @cheezy pushed a commit updating the require statements to core/ast, and I think it is time we pushed and updated Pretty Face to be fully Cucumber 2.0 compatible.

    I have found the following roadblocks thus far:

    1. ensure_io now only takes a single argument
    Offending Code: html.rb-46

    @io = ensure_io(path_or_io, 'html')

    2. Cucumber::Ast API calls are deprecated
    Offending Code: html.rb & report.rb

    Cucumber::Ast::Table::Cells
    Cucumber::Ast::ScenarioOutline
    Cucumber::Ast::Background
    Cucumber::Ast::OutlineTable::ExampleRow
    Cucumber::Ast::Scenario

    Some of these calls can simply be updated to Cucumber::Core::Ast, but others have been removed/renamed in the Cucumber code-base and need to be rebuilt.

    I am working on a set of local updates and believe I am close to solving the above roadblocks, I will report back with my results and hopefully we can get this translated to a pull request soon.

    Best,
    J

    undefined method `cattr_accessor' for ActionView::Base:Class

    Installed Pretty face gem and added to cucumber.yml
    --format PrettyFace::Formatter::Html --out results/index.html
    Ran my feature file but I get this error:

    Errror in terminal:

    undefined method cattr_accessor' for ActionView::Base:Class Did you mean? attr_accessor Error creating formatter: PrettyFace::Formatter::Html Did you mean? attr_accessor (NoMethodError) /Users/marklane/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/actionpack-1.4.0/lib/action_view/base.rb:129:in class:Base'
    /Users/marklane/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/actionpack-1.4.0/lib/action_view/base.rb:119:in <module:ActionView>' /Users/marklane/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/actionpack-1.4.0/lib/action_view/base.rb:3:in <top (required)>'
    /Users/marklane/.rbenv/versions/2.3.3/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:68:in require' /Users/marklane/.rbenv/versions/2.3.3/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:68:in require'
    /Users/marklane/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/actionpack-1.4.0/lib/action_view.rb:33:in <top (required)>' /Users/marklane/.rbenv/versions/2.3.3/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:68:in require'
    /Users/marklane/.rbenv/versions/2.3.3/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:68:in require' /Users/marklane/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/pretty_face-0.3/lib/pretty_face/formatter/html.rb:1:in <top (required)>'
    /Users/marklane/.rbenv/versions/2.3.3/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:127:in require' /Users/marklane/.rbenv/versions/2.3.3/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:127:in rescue in require'
    /Users/marklane/.rbenv/versions/2.3.3/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:40:in require' /Users/marklane/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/cucumber-3.1.0/lib/cucumber/constantize.rb:18:in rescue in constantize'
    /Users/marklane/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/cucumber-3.1.0/lib/cucumber/constantize.rb:7:in constantize' /Users/marklane/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/cucumber-3.1.0/lib/cucumber/configuration.rb:210:in formatter_class'
    /Users/marklane/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/cucumber-3.1.0/lib/cucumber/configuration.rb:195:in block in formatter_factories' /Users/marklane/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/cucumber-3.1.0/lib/cucumber/configuration.rb:193:in map'
    /Users/marklane/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/cucumber-3.1.0/lib/cucumber/configuration.rb:193:in formatter_factories' /Users/marklane/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/cucumber-3.1.0/lib/cucumber/runtime.rb:196:in formatters'
    /Users/marklane/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/cucumber-3.1.0/lib/cucumber/runtime.rb:181:in report' /Users/marklane/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/cucumber-3.1.0/lib/cucumber/runtime.rb:71:in run!'
    /Users/marklane/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/cucumber-3.1.0/lib/cucumber/cli/main.rb:33:in execute!' /Users/marklane/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/cucumber-3.1.0/bin/cucumber:9:in <top (required)>'
    /Users/marklane/.rbenv/versions/2.3.3/bin/cucumber:22:in load' /Users/marklane/.rbenv/versions/2.3.3/bin/cucumber:22:in <top (required)>'
    -e:1:in load' -e:1:in

    '

    Process finished with exit code 2
    Empty test suite.

    Only showing results of last test

    The index file only seems to show the last feature test completed. The subdirectories and results for each feature are there in the proper location it just does not seem to get linked to the index file.
    My feature tests are run using parallel_cucumber. Is there something I need to change to make all results show in the index?

    To run my feature tests I do the following: parallel_cucumber features/cereal/
    In cucumber.yml I have: parallel: FIG_NEWTON_FILE=qa.yml ENV=GRID --expand --color --require features --format PrettyFace::Formatter::Html --out results/index.html

    Also, there is a floating "html>" in the footer.
    screen shot 2013-10-28 at 4 02 29 pm

    Method to embed hash/text in the report?

    Hi @cheezy,

    I recently finished your book 'Cucumber & Cheese' and I am loving the base framework I now have for automation projects.

    My biggest snag currently is not having a way to embed Faker/Data-Magic data in my report. For example, I generate a dynamic username & password for each test run, and I would like to share those credentials in the report. Ideally within the scenario that they are created.

    When using explicit input tables for scenarios, Pretty Face makes beautiful tables in the report. Would it be possible to pass an text/hash embed statement to Pretty Face on the Scenario After hook?

    Thanks in advance for any inputs you might have. Also, thanks for making such easy to read tutorials and book chapters!

    Error when running in parallel

    I am getting this error when I run my tests in parallel.

    undefined method +' for nil:NilClass (ActionView::Template::Error) /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/pretty_face-0.9.1/lib/pretty_face/formatter/report.rb:247:insnippet'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/pretty_face-0.9.1/lib/pretty_face/formatter/report.rb:228:in extra_failure_content' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/pretty_face-0.9.1/lib/pretty_face/templates/_step.erb:37:in___sers_qauser__rvm_rubies_ruby_______p____lib_ruby_gems_______gems_pretty_face_______lib_pretty_face_templates__step_erb___278293468819112096_70173996326860'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionpack-4.0.2/lib/action_view/template.rb:143:in block in render' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/activesupport-4.0.2/lib/active_support/notifications.rb:161:ininstrument'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionpack-4.0.2/lib/action_view/template.rb:141:in render' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionpack-4.0.2/lib/action_view/renderer/partial_renderer.rb:306:inrender_partial'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionpack-4.0.2/lib/action_view/renderer/partial_renderer.rb:279:in block in render' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionpack-4.0.2/lib/action_view/renderer/abstract_renderer.rb:38:inblock in instrument'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/activesupport-4.0.2/lib/active_support/notifications.rb:159:in block in instrument' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/activesupport-4.0.2/lib/active_support/notifications/instrumenter.rb:20:ininstrument'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/activesupport-4.0.2/lib/active_support/notifications.rb:159:in instrument' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionpack-4.0.2/lib/action_view/renderer/abstract_renderer.rb:38:ininstrument'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionpack-4.0.2/lib/action_view/renderer/partial_renderer.rb:278:in render' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionpack-4.0.2/lib/action_view/renderer/renderer.rb:47:inrender_partial'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionpack-4.0.2/lib/action_view/helpers/rendering_helper.rb:27:in render' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/pretty_face-0.9.1/lib/pretty_face/templates/feature.erb:109:inblock (2 levels) in ___sers_qauser__rvm_rubies_ruby_______p____lib_ruby_gems_______gems_pretty_face_______lib_pretty_face_templates_feature_erb___720800486048250610_70173996255100'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/pretty_face-0.9.1/lib/pretty_face/templates/feature.erb:104:in each' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/pretty_face-0.9.1/lib/pretty_face/templates/feature.erb:104:inblock in ___sers_qauser__rvm_rubies_ruby_______p____lib_ruby_gems_______gems_pretty_face_______lib_pretty_face_templates_feature_erb___720800486048250610_70173996255100'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/pretty_face-0.9.1/lib/pretty_face/templates/feature.erb:99:in each' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/pretty_face-0.9.1/lib/pretty_face/templates/feature.erb:99:in___sers_qauser__rvm_rubies_ruby_______p____lib_ruby_gems_______gems_pretty_face_______lib_pretty_face_templates_feature_erb___720800486048250610_70173996255100'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionpack-4.0.2/lib/action_view/template.rb:143:in block in render' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/activesupport-4.0.2/lib/active_support/notifications.rb:161:ininstrument'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionpack-4.0.2/lib/action_view/template.rb:141:in render' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionpack-4.0.2/lib/action_view/renderer/template_renderer.rb:49:inblock (2 levels) in render_template'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionpack-4.0.2/lib/action_view/renderer/abstract_renderer.rb:38:in block in instrument' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/activesupport-4.0.2/lib/active_support/notifications.rb:159:inblock in instrument'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/activesupport-4.0.2/lib/active_support/notifications/instrumenter.rb:20:in instrument' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/activesupport-4.0.2/lib/active_support/notifications.rb:159:ininstrument'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionpack-4.0.2/lib/action_view/renderer/abstract_renderer.rb:38:in instrument' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionpack-4.0.2/lib/action_view/renderer/template_renderer.rb:48:inblock in render_template'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionpack-4.0.2/lib/action_view/renderer/template_renderer.rb:56:in render_with_layout' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionpack-4.0.2/lib/action_view/renderer/template_renderer.rb:47:inrender_template'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionpack-4.0.2/lib/action_view/renderer/template_renderer.rb:17:in render' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionpack-4.0.2/lib/action_view/renderer/renderer.rb:42:inrender_template'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionpack-4.0.2/lib/action_view/renderer/renderer.rb:23:in render' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/actionpack-4.0.2/lib/action_view/helpers/rendering_helper.rb:24:inrender'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/pretty_face-0.9.1/lib/pretty_face/formatter/html.rb:169:in write_feature_file' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/pretty_face-0.9.1/lib/pretty_face/formatter/html.rb:156:inblock in generate_report'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/pretty_face-0.9.1/lib/pretty_face/formatter/html.rb:155:in each' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/pretty_face-0.9.1/lib/pretty_face/formatter/html.rb:155:ingenerate_report'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/pretty_face-0.9.1/lib/pretty_face/formatter/html.rb:123:in after_features' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/cucumber-1.3.10/lib/cucumber/ast/tree_walker.rb:181:inblock in send_to_all'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/cucumber-1.3.10/lib/cucumber/ast/tree_walker.rb:179:in each' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/cucumber-1.3.10/lib/cucumber/ast/tree_walker.rb:179:insend_to_all'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/cucumber-1.3.10/lib/cucumber/ast/tree_walker.rb:171:in broadcast' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/cucumber-1.3.10/lib/cucumber/ast/tree_walker.rb:20:invisit_features'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/cucumber-1.3.10/lib/cucumber/runtime.rb:49:in run!' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/cucumber-1.3.10/lib/cucumber/cli/main.rb:47:inexecute!'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/cucumber-1.3.10/bin/cucumber:13:in <top (required)>' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/bin/cucumber:23:inload'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/bin/cucumber:23:in <main>' /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/bin/ruby_executable_hooks:14:ineval'
    /Users/qauser/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/bin/ruby_executable_hooks:14:in `

    '

    Been getting these random errors. The result is a blank page for the feature results.

    Recommend Projects

    • React photo React

      A declarative, efficient, and flexible JavaScript library for building user interfaces.

    • Vue.js photo Vue.js

      ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

    • Typescript photo Typescript

      TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

    • TensorFlow photo TensorFlow

      An Open Source Machine Learning Framework for Everyone

    • Django photo Django

      The Web framework for perfectionists with deadlines.

    • D3 photo D3

      Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

    Recommend Topics

    • javascript

      JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

    • web

      Some thing interesting about web. New door for the world.

    • server

      A server is a program made to process requests and deliver data to clients.

    • Machine learning

      Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

    • Game

      Some thing interesting about game, make everyone happy.

    Recommend Org

    • Facebook photo Facebook

      We are working to build community through open source technology. NB: members must have two-factor auth.

    • Microsoft photo Microsoft

      Open source projects and samples from Microsoft.

    • Google photo Google

      Google โค๏ธ Open Source for everyone.

    • D3 photo D3

      Data-Driven Documents codes.