チーム管理
Pest を使用すると、チームとタスクや ToDo をコンソールから直接管理できます。タスクを作成、割り当て、追跡したり、各タスクのステータスを表示したりできます。
プロジェクトのセットアップ
Pest でチーム管理を開始するには、Pest.php
設定ファイルでプロジェクトの URL を指定する必要があります。この URL は、ToDo を対応するプロジェクト管理システムにリンクするために使用されます。
1pest()->project()->github('my-organization/my-repository');
別のバージョン管理システムを使用している場合は、代わりに gitlab
、bitbucket
、jira
、または custom
メソッドを使用できます。
ToDo の作成
通常、ToDo は、合格する必要がある 1 つ以上のテストにリンクされています。そのため、テストを使用して ToDo / タスクの進捗状況を追跡できます。Pest は、todo()
メソッドを使用することで、ToDo を簡単に作成する方法を提供します。
1it('has a contact page', function () {2 //3})->todo();
テストを実行すると、Pest は、忘れないように、テスト結果に表示されている ToDo であるすべてのテストについて通知します。

1 つ以上の ToDo がある場合は、テストスイートの残りの部分とは別に表示したい場合があります。Pest を実行するときに --todos
オプションを含めることで、これを行うことができます。
1./vendor/bin/pest --todos
ToDo の割り当て
場合によっては、特定のチームメンバーに ToDo を割り当てる必要がある場合があります。Pest では、todo()
メソッドの assignee
引数に名前を指定することで、ToDo を特定のチームメンバーに割り当てることができます。
1it('has a contact page', function () {2 //3})->todo(assignee: 'nunomaduro');
assignee
引数に名前の配列を指定することで、複数の担当者を割り当てることができます。また、Pest を実行するときに --assignee
オプションに名前を指定することで、担当者ごとに ToDo をフィルター処理することもできます。
1./vendor/bin/pest --todos --assignee=nunomaduro
対応する Issue の設定
ToDo がプロジェクト管理システムの Issue にリンクされている場合があります。Pest では、todo()
メソッドの issue
引数に Issue 番号を指定することで、ToDo に対応する Issue を設定できます。
1it('has a contact page', function () {2 //3})->todo(issue: 123);
担当者と同様に、issue
引数に Issue 番号の配列を指定することで、複数の Issue を設定できます。また、Pest を実行するときに --issue
オプションに Issue 番号を指定することで、Issue ごとに ToDo をフィルター処理することもできます。
1./vendor/bin/pest --todos --issue=123
対応する PR の設定
ToDo がバージョン管理システムのプルリクエストにリンクされている場合があります。Pest では、todo()
メソッドの pr
引数にプルリクエスト番号を指定することで、ToDo に対応するプルリクエストを設定できます。
1it('has a contact page', function () {2 //3})->todo(pr: 123);
担当者と同様に、pr
引数にプルリクエスト番号の配列を指定することで、複数のプルリクエストを設定できます。また、Pest を実行するときに --pr
オプションにプルリクエスト番号を指定することで、プルリクエストごとに ToDo をフィルター処理することもできます。
1./vendor/bin/pest --todos --pr=123
ToDo のメモの記述
ToDo に追加のコンテキストを提供すると役立つことがよくあります。Pest では、todo()
メソッドの note
引数に文字列を指定することで、ToDo のメモを記述できます。
1it('has a contact page', function () {2 //3})->todo(note: <<<NOTE4 Given I am a user5 When I visit the contact page6 Then I should see a contact form7NOTE);
メモは、テスト結果の ToDo の下に表示されます。
ToDo を作業中としてマーク
ToDo が完了したら、wip()
メソッドを使用して作業中としてマークできます。このメソッドは、テストから ToDo ステータスを削除し、担当者、Issue などすべてのコンテキストを保持しながら、通常のテストとしてマークします。
1it('has a contact page', function () {2 //3})->wip(assignee: 'nunomaduro', issue: 123);
ToDo を完了としてマーク
ToDo が完了したら、done()
メソッドを使用して完了としてマークできます。このメソッドは、テストから ToDo ステータスを削除し、担当者、Issue などすべてのコンテキストを保持しながら、通常のテストとしてマークします。
1it('has a contact page', function () {2 //3})->done(assignee: 'nunomaduro', issue: 123);
ToDo と担当者、Issue、PR の組み合わせ
ToDo を担当者、Issue、PR と組み合わせることで、追加のコンテキストを提供し、ToDo の進捗状況を追跡できます。これは、describe
グループと todo
、assignee
、issue
、pr
メソッドを使用して行うことができます。
1describe('contacts', function () {2 it('has a contact page', function () {3 //4 }))->issue(123); // or ->pr(123) etc5 6 it('has a contact form', function () {7 //8 })->done(pr: 567);9})->wip(assignee: 'nunomaduro');
次に、アーキテクチャテストと、それが開発プロセスにどのように役立つかについて説明します。アーキテクチャテストを実行することで、アプリケーションの全体的な設計を評価し、重大な問題になる前に潜在的な欠陥を特定できます: アーキテクチャテスト