【发布时间】:2019-10-05 12:16:13
【问题描述】:
我想将我的测试分为单元测试和集成测试,并为每个测试提供一个抽象的 TestCase 类,例如UnitTestCase 和 IntegrationTestCase。
有没有一种好方法可以只运行那些扩展 UnitTestCase 的测试而不给每个测试类添加 @group unit 注释?
phpunit documentation 在描述子类化时非常稀疏。谷歌搜索也没有找到任何有用的结果。
【问题讨论】:
我想将我的测试分为单元测试和集成测试,并为每个测试提供一个抽象的 TestCase 类,例如UnitTestCase 和 IntegrationTestCase。
有没有一种好方法可以只运行那些扩展 UnitTestCase 的测试而不给每个测试类添加 @group unit 注释?
phpunit documentation 在描述子类化时非常稀疏。谷歌搜索也没有找到任何有用的结果。
【问题讨论】:
没有。要么为此使用@group 注释,或者更好的IMO,有一个用于单元测试的tests/unit 目录以及一个用于集成测试的tests/integration 目录,然后在phpunit.xml 中定义两个测试套件。默认情况下,两者都将运行。使用--testsuite,您可以根据测试套件名称进行过滤。
【讨论】: