更多课程 选择中心

软件测试培训
达内IT学院

400-111-8989

PhpUnit基础:如何跑通一个单元测试?


思路

单元测试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

预约申请免费试听课

填写下面表单即可预约申请免费试听! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:测试人员一直在背锅?写给一直在背锅的你!
下一篇:我不开玩笑,2018年你还需要学习JavaScript

软件测试工程师有哪些岗位?

软件测试工程师要求?

软件测试项目去哪里找?

软件测试这个岗位今年如何?

  • 扫码领取资料

    回复关键字:视频资料

    免费领取 达内课程视频学习资料

Copyright © 2023 Tedu.cn All Rights Reserved 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有

选择城市和中心
黑龙江省

吉林省

河北省

陕西省

湖南省

贵州省

云南省

广西省

海南省