docs: document the contributor testing workflow
メンテナーはふだん 2 日以内に返信
評価
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 初心者へのやさしさ
- 78/100
- issue の種類
- ドキュメント
- 明瞭さ
- おおむね明確
- 活発さ
- 活発
- 技術スタック
- python
調査の方向性
まず、issue #429を例として参照し、contributor documentationとhumanize.clamp()の既存のpytestテストを見つけます。テストの見つけ方、リポジトリの規約、パラメータ化されたケース、対象を絞ったテストと全テストスイートのコマンド、回帰の検証を扱う短いセクションを追加します。初めてコントリビュートする人にワークフローが明確になれば完了です。
索引モデルが issue の本文から書いたものです。
説明
Problem
As a first-time contributor, I found it difficult to determine the
expected workflow for adding and verifying tests.
While working on #429, I had to figure out:
- how to find the appropriate test file
- how to follow the repository's existing pytest conventions
- how to run focused tests
- how to run the full test suite
- how to verify that a regression test actually fails when the
protected behavior is broken
The current contributor documentation does not explain this workflow
for someone making their first test contribution.
Proposed change
Add a short contributor-testing section explaining how to:
- Find the relevant existing test file.
- Follow the repository's existing test patterns.
- Add parameterized test cases where appropriate.
- Run the relevant tests locally.
- Intentionally verify that the test catches a regression.
- Run the full test suite before opening a PR.
The section would use a small example based on the existing test suite.
Motivation
I encountered this while working on #429, where I added parameterized
tests for two-sided humanize.clamp() boundary behavior.
I also intentionally introduced a regression to verify that the new
test failed, then restored the implementation and ran the full suite.
Related PR: #429
- 主要言語
- Python
- スター
- 761
- フォーク
- 185
- 平均マージ
- 4日 3時間
- マージ済み PR(30日)
- 7
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
python-humanize/humanize のほかの issue
-
intcomma returns scientific notation for large floats対応中かも @TheNetherWatcher が 6 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
python-humanize/humanize#431 ·
メンテナーはふだん 2 日以内に返信
-
docs: document how to run the test suite locally対応中かも @yuefdev が 6 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
python-humanize/humanize#430 ·
メンテナーはふだん 2 日以内に返信
-
metric() adds a digit when a value rounds into quetta対応中かも @SashaMIT が 8 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
python-humanize/humanize#423 ·
メンテナーはふだん 2 日以内に返信
-
precisedelta() silently drops the sign of negative timedeltas対応中かも @Mukller が 45 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
python-humanize/humanize#379 ·
メンテナーはふだん 2 日以内に返信
-
`naturalsize()` raises `ValueError` for custom format strings with text対応中かも @Sanjays2402 が 69 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
python-humanize/humanize#366 ·
メンテナーはふだん 2 日以内に返信
python-humanize/humanize の issue をすべて見る
似ている issue
-
難易度 1/5 1時間未満 初心者へのやさしさ 85/100
MystenLabs/MemWal#1163 · コメント 2 件 ·
メンテナーはふだん 1 日以内に返信
-
infertopics leaves new nodes without a topic when untopiced neighbours outnumber topiced ones対応中かも @moneebullah25 が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
FinanceFlash/unvibecode#218 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
NVIDIA/earth2studio#1241 ·
メンテナーはふだん 3 日以内に返信