Phpunit 如何为所有流行的CMS编写通用单元测试代码

Phpunit 如何为所有流行的CMS编写通用单元测试代码,phpunit,Phpunit,我有一个为WP、Drupal、SMF、WP等制作的插件,现在我想为它们编写单元测试。那么,有没有办法为它们编写通用的单元测试代码,或者仅仅是基本代码,我不想分别为每个插件编写单元测试。如果不知道插件的实际功能,答案可能有点元 你应使用: 创建一个包含用于测试功能的所有方法原型的插件(即,如果您的插件格式化一篇文章,您将在该接口中有一个名为format\u post())的方法) 对于每个CRM,创建一个将实现该接口的类 在执行测试的文件中,为每个CRM测试类(实现定义format\u post

我有一个为WP、Drupal、SMF、WP等制作的插件,现在我想为它们编写单元测试。那么,有没有办法为它们编写通用的单元测试代码,或者仅仅是基本代码,我不想分别为每个插件编写单元测试。

如果不知道插件的实际功能,答案可能有点元

你应使用:

  • 创建一个包含用于测试功能的所有方法原型的插件(即,如果您的插件格式化一篇文章,您将在该接口中有一个名为
    format\u post()
    )的方法)
  • 对于每个CRM,创建一个将实现该接口的类
  • 在执行测试的文件中,为每个CRM测试类(实现定义
    format\u post()
    )的接口)创建一个实例,并对其调用
    format\u post()

我的插件是一个基本的聊天工具。我只想测试设置数组和服务器对auth的响应,这在所有插件中都很常见。然后,您可以使用
基类
来包含公共功能,而不是
接口
,并使用子类来扩展该功能。想法是一样的-父类将保证子类包含您以多态方式调用的代码(在我的示例中是
format\u post()
,在您的特定情况下是
test\u settings\u array()
)好的。还有什么方法可以创建phpunit类的对象并在我的代码中使用它,比如我有一个函数saveSettings(),其中settings[]被生成并通过post发送到服务器,所以它可以像这样
$settings=['setting1'=>'a','setting2'=>'b']$o->testsetingsarray($settings);savesetingsonserver($settings)其中$o是phpunit类的对象。