前提
rspecでrequestsのテストを書いていること
Gemfile
gem 'autodoc'
autodoc: true
にする
ドキュメントを作成したいテストにautodoc: true
を書きます
RSpec.describe 'Products request', type: :request, autodoc: true do
...
end
設定を書く
spec/spec_helper
に設定を書いていきます
Autodoc.configuration.path = "path/to/doc"
Autodoc.configuration.suppressed_request_header = ['Cache-Control', 'Content-Length', 'X-Request-Id', 'ETag', 'Set-Cookie']
Autodoc.configuration.suppressed_response_header = ['Cache-Control', 'Content-Length', 'X-Request-Id', 'X-Runtime', 'X-XSS-Protection', 'ETag']
template = "path/to/template"
- path - ドキュメントを出力するパス
- suppressed_request_header - APIのドキュメントに表示しないリクエストヘッダー。ドキュメントに出さなくてもいいリクエストヘッダーがあれば書きます。
- suppressed_response_header - APIのドキュメントに表示しないレスポンスヘッダー。ドキュメントに出さなくてもいいレスポンスヘッダーがあれば書きます。
- template - ドキュメントに使うtemplateファイル。デフォルトではdocument.md.erb
他にオプションがあるみたいです。
https://github.com/r7kamura/autodoc#configuration
AUTODOC=1
にする
export AUTODOC=1
テストを実行する
bundle exec rspec
ドキュメントが生成される
いい感じにドキュメントを生成してくれます。