建立專案資料夾,設定 git
mkdir php-unit-example
cd php-unit-example
git init
git remote add origin [email protected]:littlebookboy/php-unit-example.git
mkdir src
mkdir tests
composer.json
composer init
Welcome to the Composer config generator
This command will guide you through creating your composer.json config.
Package name (<vendor>/<name>) [gene/php-unit-example]:
Description []:
Author [gene <[email protected]>, n to skip]:
Minimum Stability []:
Package Type (e.g. library, project, metapackage, composer-plugin) []: project
License []: MIT
Define your dependencies.
Would you like to define your dependencies (require) interactively [yes]? no
Would you like to define your dev dependencies (require-dev) interactively [yes]? no
{
"name": "gene/php-unit-example",
"type": "project",
"license": "MIT",
"authors": [
{
"name": "gene",
"email": "[email protected]"
}
]
}
Do you confirm generation [yes]?
Would you like the vendor directory added to your .gitignore [yes]?
update composer.json
{
"name": "gene/php-unit-example",
"type": "project",
"require": {
"php": ">=7.0"
},
"require-dev": {
"phpunit/phpunit": "^7.1"
},
"license": "MIT",
"authors": [
{
"name": "gene",
"email": "[email protected]"
}
],
"autoload": {
"psr-4": {
"PHPUnit\\Example\\Tests\\": "src/"
}
},
"autoload-dev": {
"psr-4": {
"PHPUnit\\Example\\Tests\\": "tests/"
}
}
}
composer package install
composer install
php storm set directories
make a test case
BaseTestCase.php
<?php
namespace PHPUnit\Example\Tests;
use PHPUnit\Framework\TestCase;
class BaseTestCase extends TestCase
{
/**
* 建構式
*/
public function setUp()
{
parent::setUp();
}
/**
* 解構式
*/
protected function tearDown()
{
parent::tearDown();
}
}
ExampleTest.php
<?php
namespace PHPUnit\Example\Tests;
class ExampleTest extends BaseTestCase
{
/**
* 建構式
*/
public function setUp()
{
parent::setUp();
}
/**
* 解構式
*/
protected function tearDown()
{
parent::tearDown();
}
/**
* A basic test example.
*
* @return void
*/
public function testBasicTest()
{
$this->assertTrue(true);
}
}