在哪里存储测试(项目结构 - 最佳实践)?
Where store Tests (project structure - best practice)?
我们有许多不同的方法来在 GO 中实现项目结构。
我的问题是 存储测试实施的最佳方式:
分别(作为Java
Maven/Gradle标准)
├── pkg
│ ├── colocator
│ │ ├── some_impl.go
│ │ └── ...
│ ├── common
│ │ └── ...
│ └── dashboard
│ └── ...
├── test
│ │ └── internal
│ │ └── some_test_utils.go
│ ├── pkg
│ │ ├── colocator
│ │ │ ├── mocks
│ │ │ │ └── some_mock.go
│ │ │ └── some_impl_test.go
│ │ ├── ...
到位
├── pkg
│ ├── colocator
│ │ ├── mocks
│ │ │ └── some_mock.go
│ │ ├── some_impl.go
│ │ └── some_impl_test.go
等...
?
你的第二个实现是'correct' go way。此外,您不必担心那些测试会占用 space 之类的东西。编译器会在您构建包时忽略。
我们有许多不同的方法来在 GO 中实现项目结构。
我的问题是 存储测试实施的最佳方式:
分别(作为
Java
Maven/Gradle标准)├── pkg │ ├── colocator │ │ ├── some_impl.go │ │ └── ... │ ├── common │ │ └── ... │ └── dashboard │ └── ... ├── test │ │ └── internal │ │ └── some_test_utils.go │ ├── pkg │ │ ├── colocator │ │ │ ├── mocks │ │ │ │ └── some_mock.go │ │ │ └── some_impl_test.go │ │ ├── ...
到位
├── pkg │ ├── colocator │ │ ├── mocks │ │ │ └── some_mock.go │ │ ├── some_impl.go │ │ └── some_impl_test.go
等...
?
你的第二个实现是'correct' go way。此外,您不必担心那些测试会占用 space 之类的东西。编译器会在您构建包时忽略。