PHP配列のページネーションで単体テストを行うにはどうすればよいですか?
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));
- 総ページ数の計算が正しいかどうかをテストします
- 要素の数は次のとおりですページあたりの要素数: 要素数がページあたりの要素数と等しい場合、合計ページ番号は 1 になります。
$items = range(1, 10); $this->assertEquals(1, paginate($items, 1, 10));
- 要素の数がページあたりの要素の数より大きい: 要素の数がページあたりの要素の数より大きい場合、合計ページ番号は四捨五入する必要があります。
以上がPHP配列のページネーションで単体テストを行うにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、
