2015-12-08 8 views
6

मैं स्थानीय फाइलों का उपयोग करके गोलांग के साथ परीक्षण करने के लिए सबसे अच्छा अभ्यास करना चाहता हूं।स्थानीय फाइलों का उपयोग कर गोलांग परीक्षण

स्थानीय फ़ाइलों का उपयोग करके, मेरा मतलब है कि कार्यक्षमता का परीक्षण करने के लिए, एप्लिकेशन को कुछ स्थानीय फाइलों की आवश्यकता होती है, क्योंकि एप्लिकेशन इन फ़ाइलों से अक्सर पढ़ता है।

मुझे यकीन नहीं है कि मुझे ioutil पैकेज tempdir और tempfile फ़ंक्शंस का उपयोग करके परीक्षण चलाने से पहले अस्थायी फ़ाइलों को लिखना चाहिए, या ऐसा परीक्षण फ़ोल्डर बनाना;

testing/...test_files_here 
main.go 
main_test.go 

और फिर अंदर

testing/... 

धन्यवाद

+11

नामित 'testdata' आमतौर पर इस उद्देश्य के लिए प्रयोग किया जाता है के रूप में यह जाने उपकरण के द्वारा नजरअंदाज कर दिया है एक फ़ोल्डर (देखें' मदद संकुल जाना ') – Volker

+0

आह हाँ मैं इसे देखता हूं। "निर्देशिका और फ़ाइल नाम के साथ शुरू"। "या" _ " जाने उपकरण के द्वारा अनदेखी कर रहे हैं, के रूप में निर्देशिका नाम हैं" testdata " कि स्पॉट नहीं था। धन्यवाद – Miller

+2

वैसे, यह आलसी दृष्टिकोण है , लेकिन मैंने अपने testdata को '* _test.go' फ़ाइलों के बगल में रखा है: एक्सेस करने में आसान, ढूंढना आसान है और मुझे उन्हें चारों ओर रखने की कोई बात नहीं है। एक और विकल्प '// go: gener' और [ go-bindata] (https://github.com/jteeuwen/go-bindata) एक डिस्ट बनाने से पहले। –

उत्तर

2

यह मेरा वर्तमान परीक्षण सेटअप है:

app/ 
    main.go 
    main_test.go 
    main_testdata 

    package1/ 
    package1.go 
    package1_test.go 
    package1_testdata1 

    package2/ 
    package2.go 
    package2_test.go 
    package2_testdata1 

सभी परीक्षण डाटा है कि एक ही पैकेज के लिए विशिष्ट है, कि पैकेज की निर्देशिका भीतर रखा जाता है। सामान्य परीक्षण डेटा जो एकाधिक संकुलों द्वारा उपयोग किया जाएगा या तो अनुप्रयोग रूट में या $HOME में रखा गया है।

यह सेट अप मेरे लिए काम करता है। इसका आसान अतिरिक्त टाइपिंग करने के लिए बिना, डेटा और परीक्षण को बदलने के लिए:

vim package1_test_data1; go test app/package1

1

एक फ़ोल्डर नामित testdata आमतौर पर इस उद्देश्य के रूप में यह जाने उपकरण के द्वारा नजरअंदाज कर दिया है के लिए प्रयोग किया जाता है (सहायता पैकेज जाना देखें) सामग्री से पढ़ ।

संबंधित मुद्दे