![](/img/trans.png)
[英]How can I filter by "ends with" using PHPUnit's --filter option?
[英]PHPUnit: exclude two or more namespaces using the --filter option
我需要從我的本地單元測試執行中排除幾個命名空間。 這是因為我的本地環境中沒有 CI 管道中可用的某些服務。 我可以通過運行以下命令來包含命名空間:
phpunit --filter 'MyApp\\Providers\\Provider1'
我知道filter
選項接受正則表達式,如https://phpunit.readthedocs.io/en/9.5/textui.html#command-line-options中所述。 但是,我無法找到一個有效的名稱來排除兩個或更多名稱空間。
嘗試了不同的組合,例如:
phpunit --filter '(?!(MyApp\\Providers\\Provider1)|(MyApp\\Services\\Service1)).*'
這可能是錯誤的。
您沒有指定從 position 開始的前瞻。因此它將占用從 0 到行內容長度的整行。
例如,如果有 3 行帶有a1
、 a2
、 a3
並使用了(?.(a1|a2)).*
,結果將為1
、 2
、 a3
。
因為您只跳過兩行的 0 position (在a1
和b1
之前)。
如果您指定開始 position 像^(?.(a1|a2)).*
,結果將僅為a3
。
因為僅從行首 ( ^
) 和.*
開始申請,所以會占用整行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.