首页 / 知识
关于php:SimpleTest与PHPunit
2023-04-13 14:46:00

SimpleTest vs PHPunit我想知道是否有人在这两个方面都有经验,可以揭示出两者之间的显着差异(如果有)吗? 每个组件都有什么特定的强度,使其适合任何特定情况? 这个问题已经过时了,但是由于它仍然在增加流量,并且回答了我,尽管我在这里再次陈述了我的观点,所以我已经在其他一些(较新的)问题上做了。 我真的很困惑,SimpleTest仍然被认为是phpunit的替代品。也许我只是被误导了,但据我所知:
我还没有看到支持SimpleTest的任何论点。安装起来并不简单,因为可以通过pear获得PHPUnit:
和"第一次测试"看起来几乎一样。
从
或对于仅下载phar并运行的Windows:
或使用受支持的作曲家安装方式时
到您的composer.json。 对于您要测试的所有PHPUnit都有解决方案,您几乎可以在任何地方找到帮助(因此,freenode上的#phpunit irc频道,几乎每个php开发人员;)) 如果我说错了或忘记了一些,请指正我:) PHP测试工具概述 视频:http://conference.phpnw.org.uk/phpnw11/schedule/sebastian-bergmann/ 幻灯片:http://www.slideshare.net/sebastian_bergmann/the-php-testers-toolbox-osi-days-2011 它提到了像Atoum这样的东西,它称之为自我:"一个简单,现代且直观的PHP单元测试框架!" 全面披露 我最初是在2011年1月写这个答案的,当时我与任何PHP测试项目都不隶属。从那时起,我成为PHPUnit的贡献者。 我现在更喜欢PHPUnit,但是刚开始时我使用了SimpleTest,因为我并不总是可以访问命令行。 SimpleTest很不错,但是在我看来,PHPUnit真正拥有的唯一东西就是网络运行器。 我之所以喜欢PHPUnit,是因为它与其他PHP开发人员工具集成在一起,例如phing(SimpleTest也是如此),phpUnderControl和Xinc。从3.0版开始,它具有模拟支持,并且正在积极开发中,并且该文档非常出色。 真正为自己回答这个问题的唯一方法是同时尝试一下,然后看看哪种更适合您的风格。 编辑:Phing现在也与SimpleTest集成。
对于SimpleTest,只需下载它并从您的代码中指向它即可。 所以Simpletest为我赢了。 公认答案中提到的一半要点是不正确的: SimpleTest有
不足之处:
Baphled在SimpleTest vs PHPUnit3上有一篇不错的文章。 好吧,我制作了一个基于phpUnit Web的UI测试用例运行程序,并将其在sourceforge上可用。使用ajax并具有相当不错的界面,如果您想试一试,请在sourceforge上进行检查。项目名称为phpunitwebui,网站为http://phpunitwebui.sourceforge.net/ 我发现SimpleTest甚至比PHPUnit更容易设置。只需提取它,您就可以开始了。这样的好处是,如果您在多台机器上工作,因为您可以以与源代码相同的方式存储整个测试框架,从而知道您使用的是相同的框架代码。特别是如果您以任何方式对其进行修改。 因此,我想说的是SimpleTest的优势在于它重量轻且可移植。 SimpleTest还附带了非常简单的HTML GUI,如果需要,可以很容易地对其进行扩展。据我所知,PHPUnit不包含HTML GUI,但是有可供下载的GUI :,例如Cool。 如前所述,这主要是一个优先选择,因为两者都将运行您为此编写的测试并报告结果。
最简单的Web用户界面非常有用,但有时也很麻烦。在我当前的项目中,我将不得不投入更多的工作来使我的应用程序(API)与Web界面(正确设置apache,将文件复制到public_html根目录等)一起使用。只需从Eclipse工作区运行phpunit。因此,我选择PHPUnit。另外,使用PEAR也是一大优势,因为您无需手动跟踪更新。只需偶尔运行 这是从一个非常随意的PHP开发人员的角度来看的: 我花了两天的时间掌握了PHPUnit,大部分时间是我试图放弃的Eclipse调试。 我花了两个小时来设置Simpletest,包括在Eclipse下进行调试。 也许将来我会发现Simpletest的不足之处,但到目前为止,它可以满足我的需求:TestClasses,Mock对象,测试代码调试和Web界面,可以快速了解情况。 再次:从非常随意的PHP用户(甚至不是开发人员:-)的角度来看 这个问题很老,但是我想补充一下我的经验:PHPUnit现在似乎是标准的,但是如果您使用的是使用大量全局变量的旧系统,则可能一开始就陷入困境。似乎没有很好的方法来对PHPUnit中的全局变量进行测试,您似乎必须通过$ GLOBALS设置变量,如果您有无数文件在各处设置全局变量,那就太麻烦了。好的,有些人可能会说问题出在旧系统中,但这并不意味着我们无法在这种系统上进行测试。使用SimpleTest,这件事很简单。我想,如果PHPUnit允许我们在全局范围内包括文件,而不是在任何类/函数范围之内,那么它也不是太大的问题。 另一个有希望的解决方案是http://www.enhance-php.com,看起来不错:)
我有一段时间没有检查简单测试了,上次它有一个eclipse插件,这对我来说是一个主要因素,但是很长一段时间都没有更新。 当有成千上万的功能需要一次测试时,phpunit是一种方法,简单的测试由于基于Web而无法实现。 我仍在使用简单的Web进行小规模测试。 但是两者都很好 |
最新内容
相关内容
linux命令测试流量?
linux命令测试流量?,工具,系统,实时,网址,网络,情况,地址,状态,时间,电脑,查看linux网络流量及带宽1、查看网卡实时流量命令: iftop -i eth1linux检查流量的命令?
linux检查流量的命令?,工具,系统,实时,状态,网络,信息,数据,密码,地址,流量,linux如何获得一个进程的网络流量在类Unix系统中可以使用top查看linux命令都有什么?
linux命令都有什么?,系统,工作,地址,信息,管理,命令,单位,标准,数据,目录,linux系统常用操作命令1、linux常用命令有pwd命令、cd命令、ls命令linux安装组件包命令?
linux安装组件包命令?,软件,官网,服务,系统,工具,发行,工作,信息,名称,命令,Linux安装软件的命令是什么?1、最后依次输入以下命令:./configurelinux看流量的命令?
linux看流量的命令?,系统,实时,工具,网络,信息,情况,状态,地址,数据,代码,linux打10m的流量本身无影响,会增加cpu占用,如果带宽不够可以加一块相linux运行特定命令?
linux运行特定命令?,系统,网络,管理,地址,信息,工作,命令,时间,目录,任务,linux的运行命令是什么?1、linux系统的命令是什么linux系统命令是对linux内存情况命令?
linux内存情况命令?,情况,系统,信息,工具,总量,内存,命令,发行,环境,数据,linux系统怎么查看内存和CPU占用情况呀?1、要查看CPU使用情况,可以使linux查看流量的命令?
linux查看流量的命令?,系统,实时,工具,信息,状态,网络,情况,密码,软件,灵活,怎么用putty查看linux实时流量使用 iptraf iptraf是一个实时查看靠谱的Python爬虫框架都有哪几个?
靠谱的Python爬虫框架都有哪几个?,官网,培训,爬虫,专文,框架,统计数据,辅助工具,网页,程序,以下内容,一些同学普遍认为仅剩Python才能够顺利实Python的应用领域都有哪些?
Python的应用领域都有哪些?,网络,系统,金融,工具,网站,数据,标准,策略,工程,分析,1、Python在系统编程中的应用Python语言在操作系统的内置接python如何导入模块的特定函数
python如何导入模块的特定函数,培训,名称,函数,模块,句点,逗号,语句,实例,数量,以上,python如何导入模块的特定函数1、可以导入模块中的特定pythonTKinter组件的使用
pythonTKinter组件的使用,培训,组件,布局,面板,附属,实例,属性,以上,案例,消息,python中TKinter组件的使用1、创建总面板。2、在面板上创建各