wordpress-quality

star 6

WordPress品質チェック。PHPStan/WPCS/PHPUnit実行時に使用。「WordPressの品質チェック」「WP テスト」で起動。

morodomi By morodomi schedule Updated 1/22/2026

name: wordpress-quality description: WordPress品質チェック。PHPStan/WPCS/PHPUnit実行時に使用。「WordPressの品質チェック」「WP テスト」で起動。 allowed-tools: Bash, Read, Grep, Glob

WordPress Quality Check

WordPress/Bedrock プロジェクト固有の品質チェックツール。

汎用PHPツールは tdd-php 参照。

Commands

ツール コマンド 用途
PHPStan ./vendor/bin/phpstan analyse 静的解析(phpstan-wordpress)
WPCS ./vendor/bin/phpcs --standard=WordPress コーディング規約
PHPUnit ./vendor/bin/phpunit テスト実行

WP_UnitTestCase Helpers

ヘルパー 用途
$this->factory()->user->create() ユーザー作成
$this->factory()->post->create() 投稿作成
$this->go_to($url) URL遷移シミュレート
wp_set_current_user($id) 現在ユーザー設定

Test Categories

Unit vs Integration

カテゴリ 対象
Unit 単一クラス、フック不使用 Helper, Utility
Integration WordPress環境依存 Hook, REST API, CPT

テスト配置

tests/
├── unit/           # 単体テスト(WP不要)
│   └── HelperTest.php
└── integration/    # 統合テスト(WP必要)
    ├── HookTest.php
    └── RestApiTest.php

Hook Tests

class HookTest extends WP_UnitTestCase
{
    public function test_filter_modifies_content(): void
    {
        add_filter('the_content', 'my_content_filter');
        $result = apply_filters('the_content', 'Hello');
        $this->assertStringContainsString('Modified', $result);
    }
}

REST API Tests

class RestApiTest extends WP_UnitTestCase
{
    public function test_get_items(): void
    {
        $admin = $this->factory()->user->create(['role' => 'administrator']);
        wp_set_current_user($admin);
        $request = new WP_REST_Request('GET', '/wp/v2/posts');
        $response = rest_do_request($request);
        $this->assertEquals(200, $response->get_status());
    }
}

Quality Standards

項目 目標
PHPStan Level 6+(phpstan-wordpress)
カバレッジ 90%+
WPCS エラー0

Reference

Install via CLI
npx skills add https://github.com/morodomi/tdd-skills --skill wordpress-quality
Repository Details
star Stars 6
call_split Forks 2
navigation Branch main
article Path SKILL.md
More from Creator