【发布时间】:2011-02-16 04:49:24
【问题描述】:
我已经看到了Selenium 的强大功能,它可以为您提供不同语言的测试。
所以问题是,当像 Selenium 这样的解决方案可用时,我为什么要使用 PHPUnit 或 Lime(对于 Symfony)?
如果你可以使用Selenium,手动编写所有测试不是很耗时吗?
【问题讨论】:
我已经看到了Selenium 的强大功能,它可以为您提供不同语言的测试。
所以问题是,当像 Selenium 这样的解决方案可用时,我为什么要使用 PHPUnit 或 Lime(对于 Symfony)?
如果你可以使用Selenium,手动编写所有测试不是很耗时吗?
【问题讨论】:
phpunit 和 selenium 不测试相同的东西 phpunit 测试一个代码单元 selenium 是为一起测试几个模块的集成/功能测试而设计的。
我认为您需要两种类型的测试。 phpunit 用于单元测试和 selenium 用于接口测试。 phpunit 手册甚至解释了如何将两者结合起来。
http://www.phpunit.de/manual/3.6/en/selenium.html
本文还解释了两者的目的。 http://software-testing-zone.blogspot.com/2007/01/unit-testing-versus-functional-tests.html
我理解将 selenium 用于一切看起来如此简单的愿望,您只需单击并编写一个测试,但这确实是一个需要两者的情况。您可能需要一份“专家 PHP 5 工具”的副本
它很好地涵盖了不同类型的测试及其使用。
【讨论】:
在 sf+lime 的情况下,直接在框架中进行了一些很好的集成。 Lime 非常简单,以至于编写测试几乎不需要时间。我个人更喜欢 phpunit,但是当我使用 symfony 时,我只是坚持使用石灰,因为它是阻力最小的路径并且可以加快速度。有/曾经有一个用于 sf 的 php 单元插件,但我从未使用过它 - 我想为什么要打扰。现在对于其他非科幻项目,我在需要时使用 phpunit,因为它并不比连接石灰更难。
【讨论】: