溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

在PhpStorm中通過PHPUnit進行單元測試的簡單示例

發布時間:2021-09-13 18:09:37 來源:億速云 閱讀:172 作者:chen 欄目:大數據

在PhpStorm中通過PHPUnit進行單元測試的簡單示例

單元測試是軟件開發中不可或缺的一部分,它可以幫助開發者驗證代碼的正確性,確保代碼在修改后仍然能夠正常工作。PHPUnit 是 PHP 中最流行的單元測試框架之一,而 PhpStorm 是一個功能強大的 PHP 集成開發環境(IDE),它提供了對 PHPUnit 的全面支持。本文將介紹如何在 PhpStorm 中通過 PHPUnit 進行單元測試,并通過一個簡單的示例來演示整個過程。

1. 環境準備

在開始之前,確保你已經安裝了以下工具:

  • PHP:確保你的系統上已經安裝了 PHP,并且可以通過命令行訪問。
  • Composer:PHP 的依賴管理工具,用于安裝 PHPUnit。
  • PhpStorm:確保你已經安裝并配置好了 PhpStorm。

1.1 安裝 PHPUnit

首先,我們需要通過 Composer 安裝 PHPUnit。在你的項目根目錄下運行以下命令:

composer require --dev phpunit/phpunit

這將會在你的項目中安裝 PHPUnit,并將其添加到 composer.json 文件的 require-dev 部分。

1.2 配置 PhpStorm

接下來,我們需要在 PhpStorm 中配置 PHPUnit。

  1. 打開 PhpStorm,進入 File -> Settings(Windows/Linux)或 PhpStorm -> Preferences(macOS)。
  2. 在設置窗口中,導航到 Languages & Frameworks -> PHP -> Test Frameworks。
  3. 點擊 + 按鈕,選擇 PHPUnit Local。
  4. Path to phpunit.phar 字段中,選擇 Use Composer autoloader,并指定 vendor/autoload.php 文件的路徑。
  5. 點擊 ApplyOK 保存設置。

2. 創建測試類

現在,我們已經配置好了 PHPUnit,接下來我們將創建一個簡單的 PHP 類,并為其編寫單元測試。

2.1 創建被測試的類

首先,創建一個簡單的 PHP 類 Calculator.php,它將包含一些基本的數學運算方法。

<?php

class Calculator
{
    public function add($a, $b)
    {
        return $a + $b;
    }

    public function subtract($a, $b)
    {
        return $a - $b;
    }

    public function multiply($a, $b)
    {
        return $a * $b;
    }

    public function divide($a, $b)
    {
        if ($b == 0) {
            throw new InvalidArgumentException("Division by zero");
        }
        return $a / $b;
    }
}

2.2 創建測試類

接下來,我們為 Calculator 類創建一個測試類 CalculatorTest.php。在 PhpStorm 中,你可以通過右鍵點擊 Calculator 類,然后選擇 Go to -> Test -> Create New Test 來快速創建測試類。

<?php

use PHPUnit\Framework\TestCase;

class CalculatorTest extends TestCase
{
    private $calculator;

    protected function setUp(): void
    {
        $this->calculator = new Calculator();
    }

    public function testAdd()
    {
        $this->assertEquals(4, $this->calculator->add(2, 2));
    }

    public function testSubtract()
    {
        $this->assertEquals(2, $this->calculator->subtract(4, 2));
    }

    public function testMultiply()
    {
        $this->assertEquals(8, $this->calculator->multiply(2, 4));
    }

    public function testDivide()
    {
        $this->assertEquals(2, $this->calculator->divide(4, 2));
    }

    public function testDivideByZero()
    {
        $this->expectException(InvalidArgumentException::class);
        $this->calculator->divide(4, 0);
    }
}

2.3 運行測試

在 PhpStorm 中,你可以通過以下幾種方式運行測試:

  1. 右鍵點擊測試類:在 CalculatorTest.php 文件中,右鍵點擊類名或方法名,然后選擇 Run 'CalculatorTest'Run 'testAdd'。
  2. 使用快捷鍵:在測試類中按下 Ctrl+Shift+F10(Windows/Linux)或 Control+Shift+R(macOS)來運行當前測試。
  3. 通過測試窗口:在 PhpStorm 的底部面板中,打開 Run 窗口,選擇 CalculatorTest 并點擊運行按鈕。

運行測試后,你將在 Run 窗口中看到測試結果。如果所有測試都通過,你將看到綠色的成功提示;如果有測試失敗,PhpStorm 會顯示詳細的錯誤信息。

3. 測試覆蓋率

PHPUnit 還支持生成代碼覆蓋率報告,這可以幫助你了解測試覆蓋了多少代碼。要啟用代碼覆蓋率,你需要安裝 Xdebug 或 PCOV 擴展。

3.1 安裝 Xdebug

你可以通過以下命令安裝 Xdebug:

pecl install xdebug

安裝完成后,確保在 php.ini 文件中啟用了 Xdebug 擴展:

zend_extension=xdebug.so
xdebug.mode=coverage

3.2 配置 PhpStorm 以生成覆蓋率報告

  1. 打開 PhpStorm 的設置,導航到 Languages & Frameworks -> PHP -> Test Frameworks。
  2. 選擇你之前配置的 PHPUnit,然后在 Code Coverage 部分勾選 Enable code coverage。
  3. 點擊 ApplyOK 保存設置。

3.3 運行測試并查看覆蓋率

現在,當你運行測試時,PhpStorm 將生成代碼覆蓋率報告。你可以在 Run 窗口的 Coverage 選項卡中查看覆蓋率信息。覆蓋率報告將顯示每個文件的覆蓋率百分比,并高亮顯示未覆蓋的代碼行。

4. 結論

通過本文的介紹,你應該已經掌握了如何在 PhpStorm 中通過 PHPUnit 進行單元測試的基本流程。單元測試是確保代碼質量的重要手段,它可以幫助你在開發過程中及時發現和修復問題。PhpStorm 提供了強大的工具支持,使得編寫和運行單元測試變得更加便捷。希望本文能夠幫助你更好地利用 PhpStorm 和 PHPUnit 進行單元測試,提升你的開發效率和代碼質量。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女