首页 / 知识
关于单元测试:PHP中的测试驱动开发
2023-04-14 08:32:00

Test Driven Development in PHP我是使用PHP的网络开发人员。 我在C#桌面应用程序中使用"测试驱动开发"的经验有限。 在这种情况下,我们将nUnit用于单元测试框架。 我想开始在新项目中使用TDD,但是我真的不确定从哪里开始。 您对基于PHP的单元测试框架有什么建议?对于TDD概念的新手,有哪些好的资源? 我同时使用了PHPUnit和SimpleTest,并且发现SimpleTest更易于使用。 就TDD而言,从最纯粹的意义上来说我还没有多大运气。我认为这主要是时间/纪律问题。 在事实之后添加测试是很有用的,但是我最喜欢做的事情是使用编写SimpleTest测试来测试必须修复的特定错误。这使得验证事物是否确实固定并保持固定非常容易。 我强烈建议肯特·贝克(ISBN-10:0321146530)进行"测试驱动开发"。它不是专门为PHP编写的,但是概念已经存在,应该可以轻松地翻译成PHP。 PHPUnit是一个标准,但有时也会令人不知所措,因此,如果您发现它太复杂了,请查看phpt以开始使用。在其中编写测试非常非常容易。对于任何程序员来说,都是没有脑子的。 并回答您的TDD问题-我不确定TDD是否在PHP空间中使用了widley。我可以看到快速的应用程序开发和TDD有点冲突(严格来说是恕我直言)。 TDD要求您全面了解所构建的内容,并预先编写测试,然后实施代码以使测试通过。 因此,例如,我们要做的是在完成后编写大量测试。这并不总是最好的方法,因为您有时最终会通过虚假测试,但并不是真正有用,但至少可以扩展。在内部,我们继续进行测试,并基本上针对发现的每个错误编写测试。这就是它变得更牢固的方式。 我个人更喜欢SimpleTest。有一个命令行测试运行程序和基于Web的测试运行程序,甚至还有一个Eclipse插件,可让您从IDE本身运行单元测试。我发现Zend与PHPUnit的连接更难工作,尤其是在调试器中。 我们内部使用SimpleTest的方式是使用我们自己编写的连续集成脚本。每次我们向SVN签入功能时,我们都会包含单元测试。 CI脚本大约每隔一个小时运行一次,并调用运行我们所有单元测试的命令行PHP脚本。如果有任何休息,我会收到一封电子邮件。这是减少系统错误的好方法。 但是,您可以轻松地使用Phing之类的工具在cron作业上或通过SVN检入挂钩自动运行测试。 实际上,如果您想直接与我联系以寻求进一步的帮助,可以通过SO上的个人资料与我联系。我很乐意为您提供帮助。 SimpleTest是一个很棒的系统。我大约5个月前开始使用它,从未听说过TDD,SimpleTest易于学习,但功能仍然很强大。至于资源,我目前正在阅读肯特·贝克(Kent Beck)的《 TDD示例》,这很好。 您应该看到的另一个现代工具是Codeception。它比PHPUnit简化得多,并包含了场景驱动的方法,这对于从测试生成文档非常有用。 您应该研究PHPUnit,它看起来很像nUnit。
测试驱动开发是一种始终在代码之前编写测试的方法。 永远记住如果测试是在开发之后编写的,那么它们是无用的。因此,如果您想编写单元测试,则必须使用TDD |
最新内容
相关内容
linux重置网络命令?
linux重置网络命令?,网络,地址,工作,环境,系统,信息,标准,设备,命令,工具,linux配置网卡后,单独关掉网卡和重启网卡的命令是什么?首先用CRT工linux高级网络命令?
linux高级网络命令?,网络,地址,系统,工作,信息,管理,设备,电脑,命令,目录,Linux系统中traceroute命令使用详解1、使用traceroute命令非常简单,linux网络参数命令?
linux网络参数命令?,网络,地址,系统,工作,信息,工具,情况,服务,状态,命令,Linux配置网络参数之IP地址、子网掩码、网关地址,DNSlinux一般使用ilinux下创建网络命令?
linux下创建网络命令?,网络,地址,工作,系统,管理,命令,名字,最新,项目,设备,linux笔记本怎么建立wifi啊?首先,查看对应的PCI设备,可以看出,我的无linux命令行链接网络?
linux命令行链接网络?,网络,系统,地址,工作,工具,最新,网址,数据,信息,环境,linux怎么配置网络连接Linux 系统中,可以通过以下几种方法配置网络linux网络速度命令?
linux网络速度命令?,网络,工作,地址,系统,电脑,命令,网卡,信息,通讯,设备,Linux下必须知道的11个网络命令1、netstat -r:打印路由表。路由表保linux网络开启命令行?
linux网络开启命令行?,网络,地址,系统,环境,设备,工作,通用,服务,数据,网址,如何在Linux系统下开启无线网络?然后您就可以用如下命令来检查是linux的配置网络命令?
linux的配置网络命令?,地址,系统,网络,代码,服务,管理,密码,信息,基础,命令,linux系统中修改IP和DNS的命令通过配置文件配置LINUX的IP命令:vimlinux下查网络命令?
linux下查网络命令?,网络,系统,地址,工具,状态,管理,基础,服务,中心,信息,linux系统下查看网关命令。linux查看网关命令,为您提供linux查看网关linux网络命令查询?
linux网络命令查询?,信息,网络,系统,地址,工作,状态,技术,电脑,命令,设备,linux查看系统网卡信息命令?方法一:ethtool eth0 采用此命令可以查看linux网络延时命令?
linux网络延时命令?,网络,时间,检测,地址,电脑,系统,设备,工具,基础,管理,linux计划任务如何实现延时执行脚本,求简洁实例首先,连接相应linux主linux网络联通命令?
linux网络联通命令?,网络,地址,工作,系统,信息,联通,电脑,命令,检测,管理,Linux下必须知道的11个网络命令netstat -r:打印路由表。路由表保存在