test: no shared conformance suite across runtimes
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 35/100
- issue の種類
- 機能追加
- 明瞭さ
- おおむね明確
- 活発さ
- 活発
- 技術スタック
- typescript
- 領域
- testing-qa
調査の方向性
まず、既存のランタイムごとの統合テストと、生成ドキュメントまたは共有テストマトリクスに関するリポジトリの慣例を見つけます。列挙された動作を既存のカバレッジに対応付け、次にサポートされているマトリクス形式を選択して現在の結果を記入します。既存のテストが正確に反映され、空のセルが不足しているカバレッジを明確に示す、ランタイム横断の表が1つ存在すれば完了です。
索引モデルが issue の本文から書いたものです。
説明
Many items in this project's issues are the same questions asked repeatedly: does this runtime propagate trace headers on its default HTTP client? Does it keep a span open for a streaming response? Does it report the right SDK name and runtime? Does double init do the same thing?
Each was found by reading one package and comparing to another. A table would have found them all at once, and would keep finding them.
Work item. Add a single matrix table to the repo (a test, or a generated doc) with one row per behavior and one column per runtime, covering at least:
| Behavior |
|---|
sdk.name and sdk.packages |
contexts.runtime.name / .version |
incoming server span: name, sentry.op, source |
incoming server span: continues an inbound sentry-trace |
| outgoing default HTTP client: child span created |
outgoing default HTTP client: sentry-trace + baggage sent |
| streaming response: span stays open until the body ends |
| streaming response: client cancel propagates upstream |
request body capture honors dataCollection.httpBodies |
ignoreStatusCodes drops the transaction |
| OPTIONS / HEAD produce no span |
double init() behavior |
| tracing-off: tracing integrations absent |
| unhandled error in the handler is captured and rethrown |
Fill it from the existing per-runtime integration tests where they already exist, and let the empty cells drive the backlog. This is the item with the highest long-term return; every other item in this document is one cell in it.
Prior art Four open issues ask for more test coverage, but none of them for a cross-runtime behavior matrix:
- 主要言語
- TypeScript
- スター
- 8.7k
- フォーク
- 1.9k
- 平均マージ
- 1日 18時間
- マージ済み PR(30日)
- 562
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
getsentry/sentry-javascript のほかの issue
-
Browser Waiting for: Product Owner
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100
getsentry/sentry-javascript#24577 · コメント 1 件 ·
-
Task
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
getsentry/sentry-javascript#24558 · コメント 1 件 ·
-
Task
難易度 1/5 1時間未満 初心者へのやさしさ 90/100
getsentry/sentry-javascript#24557 · コメント 1 件 ·
-
Task
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
getsentry/sentry-javascript#24556 · コメント 1 件 ·
-
Task
難易度 1/5 1〜3時間 初心者へのやさしさ 90/100
getsentry/sentry-javascript#24555 · コメント 1 件 ·
getsentry/sentry-javascript の issue をすべて見る
似ている issue
-
blocklist removal
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
MetaMask/eth-phishing-detect#296544 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
pastelsky/bundlephobia#1122 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
-
category/development priority/P2 scope/file-operations scope/testing type/enhancement
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
-
Enatega Customer and Rider app: Add-ons price is not visible to customer after order is placed. オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100