10

我希望为我的应用程序中的单元测试禁用一些 SwiftLint 规则。

例如,我想weak_delegate为我的单元测试禁用规则。

看过 SwiftLint 文档后,我认为可以通过定义自定义的 weak_delegate 规则并排除单元测试的路径来实现。

https://github.com/realm/SwiftLint#defining-custom-rules

4

3 回答 3

9

您可以使用以下方法在本地级别禁用它们:

//swiftlint:disable weak_delegate
let someDelete: someDelegate?
//swiftlint:enable weak_delegate

或在目标级别,通过修改您的 .swiftlint.yml 文件(隐藏)

weak_delegate:
    excluded: ".*Test\\.swift" //regex path to your tests folder

或在项目级别,通过修改您的 .swiftlint.yml 文件(隐藏)

disabled_rules:
 - weak_delegate
于 2018-10-01T13:45:45.257 回答
5

排除测试目标某些规则的最佳方法是嵌套配置:您将第二个 .swiftlint.yml 添加到测试目录的根目录,并禁用规则。

disabled_rules:
    - weak_delegate
    - cyclomatic_complexity
    - force_unwrapping
    - function_body_length
于 2020-12-15T11:11:35.060 回答
4

将此添加到您的.swiftlint.yml

weak_delegate:
    excluded: ".*Test\\.swift" //regex path to your tests folder
于 2018-10-01T13:43:08.160 回答