今天 2017-07-11
总体来说,写php程序,有测试代码好于无测试代码,不管用什么方式。
composer知识:require-dev使用
composer.json内一般用
"require": {
"zf1/zend-db":"1.12.11",
"zf1/zend-paginator":"1.12.11"
... ...
}
但也会像下面这样使用
"require": {
"zf1/zend-db":"1.12.11",
"zf1/zend-paginator":"1.12.11"
},
"require-dev": { //这个是开发需要安装的项目,相当于开发环境,可以通过-no-dev来取消安装这个项目里面的包
"phpspec/prophecy": "~1.0"
}
关于测试是在开发机还是生产服务器的情况,应该说都有,自己选吧。
假设我们是在开发机测试,不在生产服务器测试,则我们的composer安装和更新命令应该是:
开发机上只运行:
composer install
composer update
生产服务器只运行
composer install --no-dev
composer update --no-dev
php测试框架概览
本文的目的是查看当前所有的php测试框架,并且挑选出比较好的,并在之后的文章中予以介绍。
挑选依据依然很简单,composer下载量(单位:万),以及好评量(单位:百)。
Alice - An expressive fixture generation library. (271/13)
AspectMock - A mocking framework for PHPUnit/Codeception.(52/5)
Atoum - A simple testing library.(39/10)
Behat - A behaviour driven development (BDD) testing framework.(873/22)
Codeception - A full stack testing framework.(515/29)
DBUnit - A database testing library for PHPUnit.(379/1)
Faker - A fake data generator library.(2268/113)这是一个数据库数据填充工具,laravel内置有。
HTTP Mock - A library for mocking HTTP requests in unit tests.(0)
Kahlan - Full stack Unit/BDD testing framework with built-in stub, mock and code-coverage support.(2/7)
Mink - Web acceptance testing.(861/8)
Mockery - A mock object library for testing.(1980/23)
ParaTest - A parallel testing library for PHPUnit.(126/5)
Peridot - An event driven test framework.(5/2)
Phake - Another mock object library for testing.(110/4)
Pho - Another behaviour driven development testing framework.(1/2)
PHP-Mock - A mock library for built-in PHP functions (e.g. time()).(28/1)
PHPSpec - A design by specification unit testing library.(894/12)
PHPT - A test tool used by PHP itself.(没找到)
PHPUnit - A unit testing framework.(5063/65)
Prophecy - A highly opinionated mocking framework.(3799/9)mock类库,因为phpunit内置,所以下载量超高。
Samsui - Another fake data generator library.(没找到)
VFS Stream - A virtual filesystem stream wrapper for testing.(0)
VFS - Another virtual filesystem for testing.(9/2)
simpletest - 其实是一款很好用的测试框架,作者现在不怎么更新了。使用很简单是其特点,好上手。(7/1)
Selenium 一个java的web客户端模拟操作类库,有php接口类库与之对应,可以使用。
上面的测试类库中:
本人文档有:
Codeception:
codeception数据库中文支持
phpunit系列文章:
php单元测试进阶系列文章
faker:
Faker:php随机数据产生类库
phpunit官方中文文档
phpunit 4.8中文文档,支持php5.3-5.5,当然实际上以后也支持。
https://phpunit.de/manual/4.8/zh_cn/installation.html
"require-dev": {
"phpunit/phpunit":"^4.8.36"
}
phpunit 5.7中文文档,支持php5.6以后全部
https://phpunit.de/manual/5.7/zh_cn/installation.html
"require-dev": {
"phpunit/phpunit":"^5.7.21"
}
phpunit 6.2中文文档,支持php7以后
https://phpunit.de/manual/6.2/zh_cn/installation.html
"require-dev": {
"phpunit/phpunit":"^6.2.3"
}
mocking框架Prophecy使用
Prophecy 高度可定制化的mocking框架。
安装
"require-dev": {
"phpspec/prophecy": "1.7.0"
}
这个类库的特点就是类和函数的名字特别神棍,什么预言,先知,启示等等。
延伸阅读:
依赖注入学习:
http://xieye.iteye.com/blog/2384631
分享到:
相关推荐
scrapy框架概览.pdf
Openmica框架概览
1、Flex IOC 框架概览PDF完整版 2、Flex IOC 框架概览配套源码 3、IoC容器和Dependency Injection模式中文版
美术概论知识要点框架概览图.doc
NULL 博文链接:https://justsee.iteye.com/blog/2200234
控制反转(inversion of Control,IOC),也称为依赖注入(Dependency injection,DI),在过去几年中已经成为流行的软件设计模式,从而导致许多Flex开发者投入到此类框架的探索,其中就包括Spring ActionScript,Parsley...
PHPGD库函数概览 PHP开发的基本工具之一。
PHP5常用函数列表概览,php常用函数 了PHP5常用函数
接口平台代码概览,框架使用springmvc+mybatis
}1052次浏览 评价:好中差 android人机界面指南Android手机开发(一)Android手机开发(二)Android手机开发(三)Android手机开发(四)iPhone消息推送机制实现探讨手机软件测试用例设计实践手机客户端UI...
AWS 云采用框架概览.pdf AWS 运营检查清单.pdf AWS云采用框架-流程论点.pdf AWS云采用框架-平台论点.pdf AWS云采用框架-运营论点.pdf 基础设施即代码.pdf 使用 AWS Lambda 的无服务器架构.pdf 使用 PowerShell 将 ...
2022年中国酒店香氛行业概览.pdf 2022年中国酒店香氛行业概览.pdf 2022年中国酒店香氛行业概览.pdf 2022年中国酒店香氛行业概览.pdf 2022年中国酒店香氛行业概览.pdf 2022年中国酒店香氛行业概览.pdf 2022年中国酒店...
2022年中国城市度假酒店行业概览.pdf 2022年中国城市度假酒店行业概览.pdf 2022年中国城市度假酒店行业概览.pdf 2022年中国城市度假酒店行业概览.pdf 2022年中国城市度假酒店行业概览.pdf 2022年中国城市度假酒店...
2023年半导体测试设备行业概览高端产品进口垄断,国产企业加速突围.pptx
2021年中国网络文学行业概览.pdf
概览 以下你看到是这十款开发框架的一览表,列举了他们各自所提供的功能。 #1: 表示框架是否内建模型-视图-控制器。 #2: 表示框架是否无需修改即可支持多数据库。 #3: 表示框架是否支持对象记录映射器,通常这是...
21.1 模糊测试框架的概念 21.2 现有框架 21.2.1 ANTIPARSER 21.2.2 DFUZ 21.2.3 SPIKE 21.2.4 PEACH 21.2.5 通用模糊器(General Purpose Fuzzer) 21.2.6 AUTODAF? 21.3 定制模糊器的实例研究:SHOCKWAVE FLASH ...