话说,使用phpunit还是处于好奇之心,为什么以前一直没使用呢?主要是嫌麻烦,小项目,前后端都是自己写,几个人就完成的工作,没必要弄的那么麻烦。好了,废话不多说,让我们一起来感受下phpunit吧!

假设,我们有一个项目Demo,Demo是使用Composer做的依赖管理。那么我们只需要以下几步就可完成phpunit的安装和使用:

一、phpunit安装:

  1、下载phpunit:wget https://phar.phpunit.de/phpunit.phar

  2、修改下载文件的权限:chmod +x phpunit.phar

  3、将phpunit设置为全局变量:mv phpunit.phar /usr/local/bin/phpunit

  4、查看phpunit版本:phpunit -V

二、项目Demo中引入phpunit组件:

  1、打开composer.json文件,添加"require-dev": {"phpunit/phpunit": "5.7.*"},然后composer install (等同于 composer require "phpunit/phpunit:5.7.*")

  2、执行完步骤1以后,phpunit组件将会存在于vendor/phpunit/phpunit

  3、phpunit的文件目录:

├── phpunit.xml
├── src
│ ├── autoload.php
│ └── PhpUnitClass.php
└── tests
└── PhpUnitClassTest.php

  4、phpunit.xml 为核心配置文件,暂不介绍,默认即可

  5、src中存放真实的服务类,当然一般我们都会把项目的服务类放到其他目录

  6、tests存放所有的测试类,所有测试类必须继承PHPUnit\Framework\TestCase;所有测试类命名最好为*Test.php;测试类中的所有方法必须为test*

  7、一个简单的phpunit例子:

  服务类,PhpUnitClass:

namespace AppService;

class PhpUnitClass
{
private $att;
public function __construct($at)
{
echo "phpunitclass init";
$this->att=$at;
} public function say(){
return "say";
} }

  单元测试类,PhpUnitClassTest:

class PhpUnitClassTest extends \PHPUnit\Framework\TestCase
{
public function testPhpUnitClassInit(){
$unit=new \AppService\PhpUnitClass("init");
$this->assertAttributeEquals("init","att",$unit);
}
public function testPhpUnitClassSay(){
$unit=new \AppService\PhpUnitClass("init");
$this->assertEquals("say",$unit->say());
}
}

  8、cd进入目录tests,在终端执行:phpunit PhpUnitClassTest 即可执行单元测试

以上,便是一个phpunit简单的入门总结,方便以后查阅。

laravel项目自带phpunit,所有的测试类在根目录tests/ 下存放。

phpunit 入门的更多相关文章

  1. PHPUnit入门

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

  2. 用phpUnit入门TDD

    用phpunit实战TDD系列 从一个银行账户开始 假设你已经 安装了phpunit. 我们从一个简单的银行账户的例子开始了解TDD(Test-Driven-Development)的思想. 在工程目 ...

  3. PHP Unit资料收集

    ThinkPHP Unit https://github.com/gaoermai/ThinkPHPUnit PHPUnit入门http://blog.csdn.net/fly_heart_yuan/ ...

  4. phpunit测试学习 1:一点简单的扼要有用的东西的总结 一点入门认识

    16:45 2015/12/8phpunit测试学习 1:一点简单的扼要有用的东西的总结  一点入门认识 具体的入门安装和入门实践请参照文中的推荐博客或网上其他博客推荐博客,我感觉这几篇博客写得很不错 ...

  5. php单元测试入门教程phpunit详解

    本文档提供了一些phpunit官方教程没有提到的信息,帮助初学者快速了解php单元测试,在phpunit官网提供了详细的中文教程,可选多种格式下载 phpunit官网地址:https://phpuni ...

  6. 【技术博客】 Laravel 5.1单元测试(PHPUnit)入门

    目录 Laravel 5.1单元测试(PHPUnit)入门 简介 安装与配置 1. 安装 2. 配置 编写测试样例 1. 新建测试样例 2. 编写函数的测试 3. 编写Web功能测试 运行测试与查看结 ...

  7. phpunit学习 3:

    16:17 2015/12/11phpunit学习 3:单元测试的大概步骤是:编写待测试类,编写测试用例类,编写测试类,测试.1.如果你有多个类,多个测试类的test类,那么可以编写一个AllTest ...

  8. zend studio使用入门

    使用zend studio8建立项目 使用PHP开发工具zend studio8进行PHP网站开发,就需要建立(导入)相应的项目,方法如下:右键左侧Workspace,选择New | PHP Proj ...

  9. PHPUnit简介及使用

    一.PHPUnit是什么? 1.它是一款轻量级的PHP测试框架,地址:http://www.phpunit.cn 2.手册:http://www.phpunit.cn/manual/5.7/zh_cn ...

随机推荐

  1. leetcode第一刷_Word Search

    这道题之前一直没敢做,没想到前天用递归一遍过了. . 当时为什么想着用递归,而不是dp呢.由于我想到达某个位置的情况有非常多,即使从当前位置開始的搜索是已知的,但之前的状态是如何的也无从得知啊,实话实 ...

  2. HBase中Region, store, storefile和列簇的关系

    转自:http://zhb-mccoy.iteye.com/blog/1543492 The HRegionServer opens the region and creates a correspo ...

  3. 回到顶部totop

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  4. Android Activity间动画跳转

    本博文主要介绍activity间动画跳转的问题,在这里讲一下怎么设置全部activity的动画跳转和退出跳转.事实上有些软件已经这样做了.比方我们都比較熟悉的大众点评网. 以下我们通过一个实例来看一下 ...

  5. 某个时间段关闭API

    def bet(): if 000000 < int(time.strftime("%H%M%S", time.localtime())) < 90000: print ...

  6. C市现在要转移一批罪犯到D市,C市有n名罪犯,按照入狱时间有顺序,另外每个罪犯有一个罪行值,值越大罪越重。现在为了方便管理,市长决定转移入狱时间连续的c名犯人,同时要求转移犯人的罪行值之和不超过t,问有多少种选择的方式?

    // ConsoleApplication12.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" // ConsoleApplication1 ...

  7. Docker入门系列5:常见问题小结

    重启容器 再次运行容器: docker start container_id 然后 docker attach container_id 就可以继续下命令了. [编辑]命名 --name [编辑]端口 ...

  8. 【转】soapUI和Jmeter的接口测试结构区别

    使用SoapUI和Jmeter都可以进行自动化接口测试,但是每个工具都有自身的特点,所以他们的结构也有一定的区别 SoapUI 项目名称 -Rest服务.Rest资源 在使用SoapUI进行接口测试时 ...

  9. loadrunner动态从mysql取值 [需要下载跟数据库服务器一致的dll,32位或64位]

    loadrunner中有参数化从数据库中取值,但是只是静态的,对于一些要实时取值的数据就game over了,比如取短信验证码,因为MySQL中有一个libmysql.dll,里面提供了可以操作数据库 ...

  10. python知识点导图(搜集)

    第一章 基本环境 第二章 内置类型 第三章 表达式 第四章 函数 第五章 迭代器 第六章 模块 第七章 类 第八章 异常 第九章 装饰器 第十章 描述符 第十一章 元类 第十二章 标准库 Re模块 附 ...