0

編集: .simplecovSimpleCov の指示に従って、ディレクトリのルートにあるファイルを使用しています。「app/views」を含むいくつかのグループも追加しました。ただし、Cucumber テストはまだ SimpleCov にログインされていません。launchy gem を使用して、コードが実行されているかどうかを確認しました... この時点で少し困惑しています。

初めて Cucumber を Rails 5 アプリに統合しようとしています。RSpec と SimpleCov も使用しています。Cucumber を使用して、単純なユーザー登録とユーザー サインイン機能をテストしています。テストは Cucumber でパスし、Cucumber のカバレッジ レポートが生成されたと言われました。ただし、カバレッジ レポートには、「ログイン」または「サインアップ」機能がカバーされたことは実際には示されません。

user.feature ファイル:

# /features/user.feature

Feature: User Features
As a user I want to be able to Sign Up or Log In when I visit the home page so that I can use the website.

Scenario: Create a user account
When I go to the index
Then I should see "Sign Up"

Scenario: Sign In as a user
When I go to the index
Then I should see "Sign In"

user_steps.rb ファイル:

# /features/step_definitions/user_steps.rb
When(/^I go to the index$/) do
  visit root_path
end

Then(/^I should see "([^"]*)"$/) do |arg1|
  click_on "Sign Up"
  fill_in "Email", with: "user1@example.com"
  fill_in "Password", with: "password1"
  fill_in "Password confirmation", with: "password1"
  click_button "Sign up"

  expect(page).to have_content("Welcome! You have signed up successfully.")
end

$ cucumber通過していることを示す実行中の端末出力:

ANTONIOs-MacBook-Pro:reddit_clone Tony$ cucumber
Using the default profile...
Feature: Create User
As a user I want to be able to sign up when I visit the home page so that they can use the website.

  Scenario: Create a user account # features/user.feature:4
    When I go to the index        #  features/step_definitions/user_steps.rb:1
    Then I should see "Sign Up"   # features/step_definitions/user_steps.rb:5

  Scenario: Sign In as a user   # features/user.feature:8
    When I go to the index      # features/step_definitions/user_steps.rb:1
    Then I should see "Sign In" # features/step_definitions/user_steps.rb:5

2 scenarios (2 passed)
4 steps (4 passed)
0m0.897s
Coverage report generated for Cucumber Features to     /Users/Tony/Documents/projects/rails/reddit_clone/coverage. 18 / 185 LOC (9.73%) covered.

私のカバレッジレポート:

SimpleCov インデックス

# /spec/spec_helper.rb top of the file. 
require 'simplecov'
SimpleCov.start
require 'database_cleaner'
RSpec.configure do |config|
  config.before(:suite) do
    DatabaseCleaner.strategy = :transaction
    DatabaseCleaner.clean_with(:truncation)
  end

  config.around(:each) do |example|
    DatabaseCleaner.cleaning do
      example.run
    end
  end

  ...

end

キュウリ env.rb ファイル:

# /features/support/env.rb
require 'simplecov'

SimpleCov.start 'rails'

require 'cucumber/rails'

カバレッジ レポートでキュウリのテスト カバレッジを表示するには、どのような手順を実行する必要がありますか?

4

1 に答える 1

0

結果をマージする方法はドキュメントにあります

https://github.com/colszowka/simplecov#using-simplecov-for-centralized-config

https://github.com/colszowka/simplecov#merging-results

于 2016-10-13T02:52:08.880 に答える