10 个最好的 PHP 自动化测试框架

作者: Admin 分类: 网站程序 发布时间: 2015-11-01 13:10 ė 6 没有评论

  你是否曾经花费很长时间来调试你的代码呢?对于大多数程序员来说,这可能是最让人头疼的环节,现在有一个解决方案可以帮助我们缩短这项繁琐任务所要花费的时间。自动化测试通过预先编写测试驱动开发流程,能够显著提升 PHP 开发的工作效率。看了这篇翻译自国外科技博客 Hongkiat 文章中,大家会明白为什么自动化测试如此酷炫,它是如何工作的,以及你可以用到的最好的 PHP 自动化测试框架。

  为什么测试如此重要?

  PHP 开发新手往往不会测试自己编写的代码,我们中的大多数通过不断测试我们刚刚所编写浏览器窗口的新特性和功能来进行检测,但是当事情出现错误的时候我们往往不知道应该做些什么。

  为我们的代码进行测试可以节省宝贵的调试时间,当未测试的代码应用到产品中,回顾那些可能做得不是很好的地方,我们能做些什么?也许最好的办法就是建立一个产品测试流程,编写自己的测试代码来检测我们的应用程序代码是否正常工作。关键在于测试代码需要在应用代码之前编写,这样我们可以确保一开始,我们写的代码正确之后,测试代码进入单独的文件中。如果我们以后碰到 PHP 应用程序汇总的任何错误,我们不需要做任何事情,只要运行我们的测试代码,就能够得到关于这些问题的提示信息。

  除了节省时间和适当为准备我们的产品应用程序,测试还有其他许多的优点:
  更易于代码的维护
  促进重构
  更少的安全问题
  代码更加简洁
  更好的性能

  什么是自动化测试?

  当然,我们可以手动编写我们的测试,但一段时间过后,在许重复的任务中,它会变得繁琐和耗时。通过使用特定的软件,手工测试可以被自动化测试所取代,我们就可以花费更多的时间到代码测试逻辑。

  1、PHPUnit

  PHPUnit 是编写 PHP 应用程序的单元测试中最有名的测试框架。单元测试提取的一小部分代码我们称之为单元,然后一个个地测试它们。有了 PHPUnit 我们能进行测试驱动开发。
  它能够通过命令行使用,并且为我们提供了一个 TestCase 类,我们能够根据需要进行扩展。PHPUnit 允许开发者使用预先编写的声明方法来声明应用程序具有的特有模式。

  2、Codeception

  Codeception 不仅能够让我们编写单元测试,也能够编写功能测试和验收测试。后面这两种 PHP 应用程序的测试作为一个整体,所有的功能都绑在一起,不作为一个单元。Codeception 允许我们根据开发需求启用和配置不同的模块。
  它集成了许多的 PHP 开发框架例如 Symfony2, Laravel4, Yii, Phalcon, 和 the Zend Framework。这也就意味着我们能够使用一个 PHP 自动化测试框架和一个 PHP 开发框架去建立一个高效的开发流程。

  3、Behat

  Behat 是一个比较流行的行为驱动 PHP 测试框架。我们使用 Behat 编写的测试更像是一个故事而不是代码。 Behat 使用测试驱动开发中 StoryBDD 的子类型。
  该框架的灵感来自于 Cucumber 项目,它是一个专门为 Ruby 语言开发的测试框架。

  4、PHPSpec
  PHPSpec 也遵循下面的行为驱动的测试方法,但是它的其它子类型被称为 SpecBDD。使用 PHPSpec 我们需要写应用程序代码的首要规范。这是受到了 Ruby 测试框架 RSpec 的启发而来。

  5、SimpleTest
  SimpleTest 是一个易于使用的 PHP 单元测试框架,应用于测试驱动开发方式中,它可以看做 PHPUnit 的替代。SimpleTest 支持 SSL,forms,proxies,frames 和基本身份验证,它还允许我们测试基本的 PHP 任务。

  6、Storyplayer
  Storyplayer 是一个全栈测试框架,能为整个平台写端到端的测试。Storyplayer 已经支持创建和销毁测试环境。它遵循 TDD 测试方法,允许我们编写可以检查应用程序的功能测试。

  7、Peridot
  Peridot 是一个轻量级的 PHP 扩展测试框架。它采用了一个事件驱动的结构,允许开发者通过插件自定义框架。

  8、Atoum
  Atoum 是一个直观并且现代的 PHP 测试框架,允许我们运行单元测试。它简化了测试开发,并且由于它是一个新兴的框架,充分利用了 PHP 5.3 中介绍的一些新功能,给我们提供了一个快速和易于理解的测试过程。

  9、Kahlan

  Kahlan 是一个功能齐全的 BDD 测试框架,可以使用描述它的语法编写单元测试。它包含了 KISS 的设计原则。
  它有一个小的代码库,据说比 PHPUnit 小 10 倍,它为我们提供了一个可扩展、可自定义的测试流程。

  10、Selenium

  Selenium 是一个复杂的自动化测试框架。这意味着它可能被用于编写用户接受测试来检测整个应用程序。
  Selenium 是一个强大的工具,自身拥有的拥有 WebDriver API,能够驱动浏览器本身就像一个真实的用户在本地或远程连接到计算机上。Selenium 在测试成熟的 Web 应用程序中是一个非常优秀的工具。

  原文:10 Best Automated Testing Frameworks For PHP
  翻译:慧都控件网

本文出自微歌,转载时请注明出处及相应链接。

本文永久链接: http://wego2.com/10-ge-zui-hao-de-PHP-zi-dong-hua-ce-shi-kuang-jia.html

0

发表评论

电子邮件地址不会被公开。 必填项已用*标注

Ɣ回顶部