Home >Backend Development >PHP Tutorial >PHP测试很有必要,大家都是如何做的呢?

PHP测试很有必要,大家都是如何做的呢?

WBOY
WBOYOriginal
2016-06-06 20:46:561163browse

如题 ~~PHP测试很有必要,大家都是如何做的呢?
怎么规范自己的测试及其测试应注意什么?

回复内容:

如题 ~~PHP测试很有必要,大家都是如何做的呢?
怎么规范自己的测试及其测试应注意什么?

主要还是看框架是如何指导测试的。

codeigniter 用自己的写的类库进行简单的断言测试,测试结果直接输出到页面或者保存到文件。比较原始手工化。

Yii framework 用PHPUnit作为测试类库,另外还用了Selenium来模拟正式操作场景测试具体浏览器下面的操作结果。(Selenium的使用是比较虐心的一件事,相当于用代码模拟用户在浏览器上的每个操作后断言预期的结果)

Laravel 同样是采用PHPUnit作为测试类库,以测试后面业务逻辑为主,但是在针对前端的测试上主要是针对生成的Html页面的内容来进行一些简单的断言。

我知道测试类库除了PHPUnit之外还有SimpleTest,不过没有使用与了解过。

代码测试覆盖率达到80%左右应该也就差不多了,没有追求100%的必要。毕竟,需求是动态的。

单元测试能做,首先依赖于编写的代码,写的随意的代码,是很难做单测的,所以,第一项工作就是要编写可以测试的代码,所以开发的时候就要考虑怎么测试,如果能遵循测试驱动开发,敲码前先写单测,那更好;

第二项工作,就是单测的编写了。往往打桩是比较麻烦的,但是越大的系统,依赖的外部组件和系统越多,不打桩根本无法测试。目前phpunit有支持打桩。

第三,如果是旧项目,代码写的随意,缺少封装,过程式的,甚至是面包屑代码,如何测试?我能想到的,要么重构代码,要么就得做大量的打桩工作;即使如此,也不能保证真的就能对这些代码进行单测。

以前我用thinkphp写程序,然后想做一下单元测试,然后就没有然后了。

一般基本的流程走一遍,测试下。一般的框架都有调试模式,开启了多调试调试~

在工作不忙的时候,是单元测试和restTest一起做的。忙的时候就做restTest就行了。
但愿测试就不细说了。
restTest就是用php写一个和项目中联系紧密的rest客户端,然后用php自带的httpServer做服务器启动项目(注意选择测试库),然后用unittest跑脚本一个个的访问rest接口。判断错误等等。

单元测试,PHPUnit

做一个hook 然后手写测试代码然后看结果

很少去做测试,一般情况都是编译下,没有问题就可以了。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn