为测试 target/unit 测试文件禁用一些 SwiftLint 规则

Disable some SwiftLint rules for test target/unit tests files

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

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

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

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

将此添加到您的 .swiftlint.yml:

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

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

//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

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

disabled_rules:
    - weak_delegate
    - cyclomatic_complexity
    - force_unwrapping
    - function_body_length