PHP 配列ページング単体テスト ガイドには、エッジ ケースのテスト (空の配列、無効なページ番号)、ページングの結果が正しいかどうかのテスト (最初のページ、中間ページ、最後のページ)、合計ページ番号の計算が正しいかどうかのテストが含まれています。 (要素数はページあたりの要素数に等しい、要素数はページあたりの要素数より大きい)。
PHP 配列ページング ユニット テスト ガイド
序文
配列ページングは、これは、開発中によく遭遇する一般的な操作です。ページング機能の正確性を確認するには、単体テストを実行することが非常に重要です。この記事では、実践的な例を含め、PHP 配列ページングの単体テストの作成方法を説明します。
実践的なケース
配列 $items
があり、ページ分割して各ページに 10 個の要素を表示する必要があるとします。ページネーション関数 paginate()
は次のとおりです:
function paginate(array $items, int $page = 1, int $perPage = 10): array { $totalPages = ceil(count($items) / $perPage); if ($page < 1) { $page = 1; } elseif ($page > $totalPages) { $page = $totalPages; } $offset = ($page - 1) * $perPage; return array_slice($items, $offset, $perPage); }
単体テスト
$this->assertEquals([], paginate([]));
$this->assertEquals([], paginate([], -1)); $this->assertEquals([], paginate([], 11, 10));
$items = range(1, 100); $this->assertEquals([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], paginate($items));
$this->assertEquals([51, 52, 53, 54, 55, 56, 57, 58, 59, 60], paginate($items, 6));
$this->assertEquals([91, 92, 93, 94, 95, 96, 97, 98, 99, 100], paginate($items, 10));
$items = range(1, 10); $this->assertEquals(1, paginate($items, 1, 10));
以上がPHP配列のページネーションで単体テストを行うにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。