何もない作業項目に「テスト」タスクを追加する

このフローの目標は、各ストーリーにタイプtestのタスクが少なくとも1つ割り当てられていることを確認し、必要に応じてタスクを追加することです。

エリア: 作業項目、タスク、リストノード

エンティティ関連図

このフローでは、次のエンティティにアクセスし、これらのエンティティ間の関係を理解する必要があります。

エンティティ このフローの関係 関係の説明 参照 /関係フィールド
作業項目 エピック、フィーチャー、不具合、ユーザーストーリー、品質ストーリー この集約リソースコレクションは、エピック、フィーチャー、不具合、ユーザーストーリー、品質ストーリーなど、作業項目のタイプを表します。 subtype
タスク 作業項目はタスクに関連付けることができます。 child_task
リリース 作業項目はリリースに関連付けることができます。 release
タスク 作業項目

タスクは、1つの品質ストーリー、ユーザーストーリー、または不具合に関連付ける必要があります。

タスクは、エピックやフィーチャーなどの他の作業項目に関連付けることはできません。

ユーザーストーリー、品質ストーリー、および不具合は、複数のタスクに関連付けることができます。

story

defect

フェーズ タスクはフェーズに関連付ける必要があります。 phase
ユーザー タスクには1人の所有者が必要です。 owner
リストノード 各タスクのタイプは、list_nodeリソースコレクションを照会することで参照できます。 item_type
エピック 作業項目

エピックはwork_itemsのサブタイプです。

集約リソースコレクションwork_itemsに関連するフィールドはありません。

 
フィーチャー

エピックはフィーチャーに関連付けることができます。

 
フィーチャー 作業項目

フィーチャーはwork_itemsのサブタイプです。

集約リソースコレクションwork_itemsに関連するフィールドはありません。

 

エピック

フィーチャーはエピックに関連付けることができます。

parent

ストーリーと不具合

フィーチャーは、ユーザーストーリー、品質ストーリー、および不具合に関連付けることができます。

 
ユーザーストーリー 作業項目

ユーザーストーリーは、work_itemsのサブタイプです。

集約リソースコレクションwork_itemsに関連するフィールドはありません。

 
フィーチャー

ユーザーストーリーはフィーチャーに関連付けることができます。

parent
不具合

ユーザーストーリーは不具合に関連している可能性があります。

 
品質ストーリー 作業項目

品質ストーリーは、work_itemsのサブタイプです。

集約リソースコレクションwork_itemsに関連するフィールドはありません。

 
フィーチャー

品質ストーリーはフィーチャーに関連付けることができます。

parent
不具合

品質ストーリーは不具合と関連している可能性があります。

 
不具合 作業項目

不具合はwork_itemsのサブタイプです。

集約リソースコレクションwork_itemsに関連するフィールドはありません。

 
フィーチャー

不具合はフィーチャーに関連付けることができます。

parent
ストーリー

不具合はストーリーに関連付けることができます。

 
フェーズ フィーチャー、品質ストーリー、ユーザーストーリー、および不具合 フィーチャー、品質ストーリー、ユーザーストーリー、および不具合は、フェーズに関連付ける必要があります。 phase
ユーザー すべての作業項目 エピック、フィーチャー、品質ストーリー、ユーザーストーリー、および不具合は、所有者に関連付けることができます。 owner
リリース すべての作業項目 エピック、フィーチャー、品質ストーリー、ユーザーストーリー、および不具合は、所有者に関連付けることができます。 release
スプリント スプリントはリリースに関連付けられています。 release

トップに戻る

フロー

このフローの目標は、各ストーリーに、タイプtestのタスクが少なくとも1つ割り当てられていることを確認することです。

ステップバイステップでREST API呼び出しを作成しましょう。

  1. すべてのストーリーにタスクを設定してもらいたい。したがって、最初のステップとして、ユーザーストーリーであるすべての作業項目を一覧表示します。

    これを行うには、subtypestoryである作業項目のみを一覧表示するクエリ句を入力します。

    GET .../api/shared_spaces/<space_id>/workspaces/<workspace_id>/work_items&query="(subtype EQ ^story^)"

  2. タスクリソースコレクションを見ると、item_typeフィールドがタスクタイプをリストしていることがわかります。これは、list_nodeリソースを指す参照フィールドです。

    GET .../api/shared_spaces/<space_id>/workspaces/<workspace_id>/tasks

    以下の応答では、item_typeは、list_node.task_item_type.documentidが、このタスクがたまたまdocumentであることを示しています。タイプ。

  3. ストーリーのタスクを表示する方法と、list_nodesでタイプを検索するために使用するフィールドがわかったので、使用可能なタスクタイプをどのように知ることができますか? 

    これは、*ワイルドカードを使用してlogical_namelist_node.task_item_typeで始まるリストノードについて、list_nodeリソースにクエリを実行することで確認できます。

    5つのタイプが返されます。1つは、タスク項目のリストノードのルートです。他の4つは、使用可能なさまざまなタスクタイプです。調査開発ドキュメントテスト

    GET .../api/shared_spaces/<space_id>/workspaces/<workspace_id>/list_nodes?query="logical_name EQ ^list_node.task_item_type*^"

  4. これで、テストタスクが欠落しているすべてのストーリーのリストを取得するために必要なすべての情報が得られました。

    テスト以外のタスクのみを取得するには、Not演算子!を使用していることに注意してください。

    GET .../api/shared_spaces/<space_id>/workspaces/<workspace_id>/work_items?fields=name,id&order_by=id&query="(subtype EQ ^story^;!(child_tasks EQ {item_type EQ {id EQ ^list_node.task_item_type.test^}}))"

  5. 各ストーリーにテストタスクを持たせたい場合は、それぞれに新しいタスクを追加します。

    POST時に特定のフィールドに参照フィールド値を割り当てる方法に注意してください。

    また、このリクエストは、is_draftフィーチャーを使用してドラフトエンティティを作成する方法を示しています。ドラフトエンティティを使用すると、エンティティを作成するときに必須フィールドの値の指定をバイパスできます。後でエンティティ (PUT) を更新するときに、必須フィールドは必須になります。詳細については、ドラフトエンティティを参照してください。

    POST .../api/shared_spaces/<space_id>/workspaces/<workspace_id>/tasks

    ペイロード 

    {"data":
       [   
          {   "item_type":
                    {"type":"list_node",
                     "id":"list_node.task_item_type.test"},
              "phase":
                    {"type":"phase",
                    "id":"phase.task.new"},
              "story":
                    {"type":"work_item",
                    "id":"1220"},
              "owner":
                    {"type":"workspace_user",
                    "id":"1001"},
              "name":"Testing",
              "is_draft":true
          }
       ]
    }

トップに戻る

参照情報: