前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >PHPUnit入门基础教程

PHPUnit入门基础教程

作者头像
星哥玩云
发布2022-07-11 08:33:34
1.4K0
发布2022-07-11 08:33:34
举报
文章被收录于专栏:开源部署开源部署

PHPUnit是PHP语言的单元测试框架、工具,xunit单元测试工具系列成员之一,可以单独运行在Linux或windows系统下面,也可以集成到zend studio等IDE工具中。

工具下载:https://phpunit.de/index.html

在线手册:https://phpunit.de/manual/4.6/zh_cn/index.html

工具安装参见在线手册文档 

在命令行下使用PHPUnit进行单元测试

1、配置好phpunit命令的path等环境变量,确保能在任意目录下执行phpunit命令。

2、直接使用phpunit命令来运行测类文件:

..    2个测试方法都运行成功

OK  包括2个测试方法,4个断言

  • .    当测试成功时输出。
  • F   当测试方法运行过程中一个断言失败时输出。
  • E   当测试方法运行过程中产生一个错误时输出。
  • R   当测试被标记为有风险时输出。
  • S   当测试被跳过时输出。
  • I   当测试被标记为不完整或未实现时输出。

在zend studio中使用PHPUnit框架

1.为需要进行单元测试的项目添加phpunit的Library。

右键点击项目->properties->PHP Include Path->Libraries选项卡

点击Add Library...,选择PHPUnit x.x->Next->Finish

点击OK,phpunit的Library就添加成功了 

2、编写测试类继承PHPUnit框架的PHPUnit_Framework_TestCase类)

待测试的Demo类:

右键点击项目->New->PHPUnit Test Case,新建测试用例类(也可以直接新建普通的PHP File):

可以选择要测的类或函数:

完成后,或自动生成PHPUnit框架代码:

<?php require_once 'Demo.php';  //包含被测试的类文件 require_once 'PHPUnit/Framework/TestCase.php';  //包含框架类库,当在命令行下使用phpunit命令运行单元测试时,无需此条语句

/** * Demo test case. */ class DemoTest extends PHPUnit_Framework_TestCase  //测试类名以被测试类名+Test命名,继承测试框架测试用例类 {

/**     *     * @var Demo */ private $Demo;

/**     * Prepares the environment before running a test. */ protected function setUp()        //测试前配置测试环境     {         parent::setUp(); // TODO Auto-generated DemoTest::setUp() $this->Demo = new Demo(/* parameters*/);     }

/**     * Cleans up the environment after running a test. */ protected function tearDown()  //测试后清理测试环境     { // TODO Auto-generated DemoTest::tearDown() $this->Demo = null;         parent::tearDown();     }

/**     * Constructs the test case. */ public function __construct()  //构造函数     { // TODO Auto-generated constructor     }

/**     * Tests Demo->sum() */ public function testSum()  //测试方法以test+被测试的方法命名     { // TODO Auto-generated DemoTest->testSum()         //$this->markTestIncomplete("sum test not implemented"); $this->assertEquals(4,$this->Demo->sum(2,2));    //断言 $this->assertEquals(0,$this->Demo->sum(0,0));     }

/**     * Tests Demo->subtract() */ public function testSubtract()     { // TODO Auto-generated DemoTest->testSubtract()         //$this->markTestIncomplete("subtract test not implemented"); $this->assertNotEquals(3,$this->Demo->subtract(1,1)); $this->assertEquals(0,$this->Demo->subtract(0,0));     } }

Xunit框架执行顺序:

3、运行单元测试

右键点击测试文件->Run as->PHPUnit Test就可以进行单元测试了:

单元测试运行成功状态(绿色):

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档