软件测试培训
达内IT学院
400-996-5531
思路
单元测试testCase一般是放在项目根目录的tests目录下,可以建子目录对应一个模块,每一个test文件对应一个具体功能的单元测试点,然后在项目根目录建个phpunit.xml.dist来编排测试套件,测试时只用在phpunit.xml.dist所在目录运行phpunit命令即可。这里用composer主要用它的autoload。
安装相关环境支持
主要是安装Composer和Phpunit,具体查看相应官方文档即可,这里不细说。
生成项目对应vendor
根目录创建composer.json文件
{
"require": {}
}
然后执行
composer update
根目录下会创建一个vendor目录,这里主要用到vendor/autoload.php
创建phpunit.xml.dist文件
在项目根目录创建phpunit.xml.dist
<phpunit bootstrap="vendor/autoload.php">
<testsuites>
<testsuite name="my Test">
<directory>tests</directory>
</testsuite>
</testsuites>
</phpunit>
创建一个简单测试用例
项目根目录创建tests目录,进入创建StatckTest.php文件,内容如下:
<?php
use PHPUnit\Framework\TestCase;
class StackTest extends TestCase
{
public function testPushAndPop()
{
$stack = [];
$this->assertEquals(0, count($stack));
array_push($stack, 'foo');
$this->assertEquals('foo', $stack[count($stack) -1]);
$this->assertEquals(1, count($stack));
$this->assertEquals('foo', array_pop($stack));
$this->assertEquals(0, count($stack));
}
}
进行单元测试
在根目录执行:
phpunit
就会看到测试情况:
[rootrl@jdu4e00u53f7 unit]$ phpunit
PHPUnit 6.2.4 by Sebastian Bergmann and contributors.
. 1 / 1 (100%)
Time: 70 ms, Memory: 8.00MB
OK (1 test, 5 assertions)
总结
这里只是简单实例如果跑通一个单元测试的流程,各种细节技巧还需自己去看官方文档,然后通过自己实践学习。
最后贴出我的项目目录以供参考:
unit
├── composer.json
├── phpunit.xml.dist
├── tests
│ └── StatckTest.php
└── vendor
├── autoload.php
└── composer
Share
填写下面表单即可预约申请免费试听! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!
Copyright © 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有
Tedu.cn All Rights Reserved