php中的behat,mink和selenium有什么区别

时间:2013-11-28 03:51:22

标签: php selenium phpunit behat mink

我是新手测试。我所知道的只是我们PHPunit用于测试课堂中的各种功能,然后我知道selenium用于浏览器测试。

我知道我们可以编写php来链接selenium web driver以进行浏览器的无头测试。

我无法了解behatmink是如何进入的。这些是否与硒分开,它们是硒的替代品。

我可以在没有beaht,mink和仅使用selenium和php的情况下进行aweb应用程序tetsing

1 个答案:

答案 0 :(得分:13)

PHPUnit和Behat 类似,都是测试框架。它们允许您使用不同的方法测试代码:

  • PHPUnit测试基于您编写的代码,以检查您的类在所需的环境下的行为方式。很多人使用这种类型的框架来练习TDD,但你可以在代码之后编写测试,或者很久以前写的代码。

  • Behat测试是以人类可读的方式编写的,它们应该允许参与项目的每个人阅读它们。这种类型的测试称为BDD。您可以编写测试来解释(几乎)普通英语系统应该如何表现。

IMO PHPUnit更通用,是编写大多数测试的首选方式。我使用Behat来测试我的系统一般行为,并使用PHPUnit对每个类和方法进行独立测试。

另一方面, Mink 是一个库,允许您以编程方式浏览,使用PHP并访问内容。它可以用于统一控制许多浏览系统,如Selenium,Zombie等,每个浏览系统都基于不同的技术。

您可以在Behat之外使用Mink,但它们通常一起使用,因为这样您可以编写测试来显示网站的行为:鉴于我在登录表单中输入我的凭据,然后按提交按钮,我应该看到我的个人资料页...

是的,你可以像docs中所解释的那样一起使用PHPUnit和Selenium ......