WordPress中正确的单元测试


8

WordPress中有不同的线程可用于单元测试。就关心而言,对于在WordPress中完成的每项自定义操作,都应该进行适当的单元测试。

我已经检查了几个插件和关于它的文章。这是几个。

  1. http://codex.wordpress.org/Theme_Unit_Test
  2. http://wptest.io/
  3. https://make.wordpress.org/core/handbook/testing/automated-testing/phpunit/

现在,使用PHP单元,我们可以根据需要编写测试用例。可以为核心功能和定制编写测试用例。

如何使用带有大量插件和自定义功能的主题进行自动单元测试,例如Mega Menu,Visual composer,Woo Commerce中的自定义。

如何做到这一点?使用高级主题和具有高定制水平的插件开发的站点的单元测试标准吗?


不知道这里是什么问题。单元测试就是单元测试,如果将代码用作插件,为什么测试代码应该有所不同?
Mark Kaplun

1
我们正在尝试找到一种适用于自动单元测试的标准方法,该方法可与Wordpress中的任何开发一起使用。无论?
Trimantra软件解决方案

标准是什么?phpunit是标准工具,但是您知道这一点。根据特定单元的要求,每个单元测试显然都不同
Mark Kaplun

编写高质量的高效代码和网站的标准。
Trimantra软件解决方案

单元测试用于在代码更改时发现回归,它们实际上在没有太多更改的“一次性”站点开发中没有太大的优势,或者在有更改时将没有太大的优势,因此它将成为所有测试的主要内容会破裂。单独进行单元测试并不能以任何方式使您的代码变得更好,要使其变得更好,您需要使用更好的软件设计实践。
马克·卡普伦

Answers:


8

我认为您实际上要寻找的是功能测试集成测试验收测试。这听起来像你要测试的行为,你的网站的前端(或插件或主题的前端行为),而不是代码本身的每个单元。您可能会使用PHPUnit之类的工具来测试您的PHP代码,而使用QUnit之类的工具来测试您的JS代码,但是您将需要一个不同的工具来测试网站(或插件/主题功能)作为一个整体的实际行为。 。

不幸的是,验收测试在WordPress领域还很年轻。有一些插件或主题可以做到这一点,但没有“核心”方法(但请参见跟踪票据#34693)。同样,也不一定有共识的“最佳实践”工具出现。因此,就WordPress专用工具而言,这是一个仍在探索中的领域。(我本人还是刚刚开始探索对WordPress插件进行测试的验收。)

但是,有许多用于验收测试的工具,它们并不是专门针对WordPress构建的。没关系。因为当您测试站点的前端行为时,为后端提供动力实际上并不重要。因此,可以在临时站点上运行测试的工具也可能对WordPress站点或任何其他站点非常有效。

因为WordPress是用PHP编写的,并且倾向于使用PHPUnit进行测试,所以Codeception是这样做的自然选择。它是一个框架,允许您创建单元测试(使用PHPUnit),功能测试和验收测试,您可以使用单个命令来运行它们。我认为这也许只是您正在寻找的那种东西。如果是这样,您可能还想看看WP浏览器,这是一组特定于WordPress的Codeception扩展。

如果有一种新兴的用于接受WordPress插件测试的工具,我会说它可能是Codeception。但是据我所知,这在大多数WordPress开发人员中仍然是年轻的事情,因此我们必须拭目以待,以后会发生什么。无论如何,不​​要犹豫,立即开始使用它-也许它将成为一种趋势!


更新2017-12-12

我一直在使用WP浏览器来测试WordPoints插件对此我感到很满意。我还设置了一个仓库来演示如何在Travis CI上运行WP浏览器验收测试。WordPress生态系统中仍然没有事实上的标准,但是Codeception + WP Browser仍然是最突出的选择之一。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.