2 回答
qq_笑_17
TA贡献1818条经验 获得超7个赞
单元测试能做,首先依赖于编写的代码,写的随意的代码,是很难做单测的,所以,第一项工作就是要编写可以测试的代码,所以开发的时候就要考虑怎么测试,如果能遵循测试驱动开发,敲码前先写单测,那更好;
第二项工作,就是单测的编写了。往往打桩是比较麻烦的,但是越大的系统,依赖的外部组件和系统越多,不打桩根本无法测试。目前phpunit有支持打桩。
第三,如果是旧项目,代码写的随意,缺少封装,过程式的,甚至是面包屑代码,如何测试?我能想到的,要么重构代码,要么就得做大量的打桩工作;即使如此,也不能保证真的就能对这些代码进行单测。
慕尼黑8549860
TA贡献1818条经验 获得超11个赞
主要还是看框架是如何指导测试的。
codeigniter 用自己的写的类库进行简单的断言测试,测试结果直接输出到页面或者保存到文件。比较原始手工化。
Yii framework 用PHPUnit作为测试类库,另外还用了Selenium来模拟正式操作场景测试具体浏览器下面的操作结果。(Selenium的使用是比较虐心的一件事,相当于用代码模拟用户在浏览器上的每个操作后断言预期的结果)
Laravel 同样是采用PHPUnit作为测试类库,以测试后面业务逻辑为主,但是在针对前端的测试上主要是针对生成的Html页面的内容来进行一些简单的断言。
我知道测试类库除了PHPUnit之外还有SimpleTest,不过没有使用与了解过。
代码测试覆盖率达到80%左右应该也就差不多了,没有追求100%的必要。毕竟,需求是动态的。
- 2 回答
- 0 关注
- 788 浏览
添加回答
举报
0/150
提交
取消