Go में नेस्टेड उपनिर्देशिकाओं में पैकेजों के लिए टेस्ट को सही तरीके से कैसे व्यवस्थित और चलाएं?
सभी को नमस्कार! मैं Go सीख रहा हूँ और उपनिर्देशिकाओं वाली संरचना वाले प्रोजेक्ट के लिए टेस्ट लिखते समय एक समस्या का सामना करना पड़ा। मेरा प्रोजेक्ट इस प्रकार दिखता है:
```
myapp/
├── main.go
├── handlers/
│ ├── user.go
│ └── user_test.go
├── models/
│ ├── user.go
│ └── user_test.go
└── utils/
└── helpers.go
```
`handlers/user_test.go` फ़ाइल में, मैं `utils/helpers.go` से फ़ंक्शन import करने का प्रयास कर रहा हूँ, लेकिन प्रोजेक्ट की जड़ से `go test ./...` चलाने पर, टेस्ट "undefined: SomeFunction" या "package myapp/utils is not in GOROOT" जैसी त्रुटि के साथ विफल हो जाते हैं।
यदि मैं `handlers/` फ़ोल्डर के अंदर से `go test` चलाता हूँ, तो टेस्ट काम करते हैं, लेकिन केवल तभी जब उनमें मेरे अन्य पैकेजों से imports न हों। मैंने पढ़ा है कि Go स्वयं टेस्ट ढूंढ लेता है, लेकिन मैं समझ नहीं पा रहा हूँ कि उपनिर्देशिकाओं में टेस्ट को प्रोजेक्ट के अन्य भागों से सही तरीके से कैसे जोड़ा जाए।
कृपया बताएं कि उपनिर्देशिकाओं में टेस्ट को सही तरीके से कैसे व्यवस्थित करें? क्या go.mod या import पथों को विशेष रूप से कॉन्फ़िगर करने की आवश्यकता है? और सभी टेस्ट को एक साथ कैसे चलाएं ताकि वे सही ढंग से काम करें?