2015-02-28 10 views
9

के लिए काम नहीं कर रहा है हम अपने प्रोजेक्ट में new Android Unit Testing Support पेश करने की कोशिश कर रहे हैं।एंड्रॉइड यूनिट परीक्षण एंड्रॉइड लाइब्रेरी प्रोजेक्ट

लाइब्रेरी प्रोजेक्ट के लिए, यह gradlew के साथ चलते समय src/main/java कक्षाओं को खोजने में विफल रहता है।

एंड्रॉइड स्टूडियो से परीक्षण चलाने की उम्मीद के अनुसार काम करता है। एक ऐप प्रोजेक्ट में ग्रेडल के साथ परीक्षण चलाना अपेक्षित काम करता है। लाइब्रेरी प्रोजेक्ट में ग्रेबल के साथ परीक्षण चलाना विफल रहता है।

मैंने github पर नमूना प्रोजेक्ट बनाया है, जो एक छोटी परियोजना में समस्या को पुन: उत्पन्न करता है।

ग्रेडल प्लगइन परिभाषा apply plugin: 'com.android.application' के साथ प्लगइन परिभाषा apply plugin: 'com.android.library' त्रुटि के साथ यह ठीक काम करता है।

त्रुटि है:

home/user/path/AndroidJvmJunitTestSpike/common/src/test/java/squins/com/common/SomeClassTest.java:11: error: cannot find symbol 
    assertEquals(2, new SomeClass().sum(1, 1)); 
         ^     
    symbol: class SomeClass      
    location: class SomeClassTest     
    /home/user/path/AndroidJvmJunitTestSpike/common/src/test/java/squins/com/common/SomeClassTest.java:16: error: cannot find symbol 
    new SomeClass().referenceDrawableFromR(); 
     ^         
    symbol: class SomeClass      
    location: class SomeClassTest     
    2 errors           
    :common:compileDebugUnitTestJava FAILED 

यह काम करने की अपेक्षा की है? क्या मुझे कुछ याद आया?

+0

आपको चारों ओर फ़्लिप करना चाहिए ताकि आपके पैकेज इस तरह दिखें: "squins.com.common" के बजाय "com.squins.common"। – Daverix

+0

इसे तलाशने के लिए धन्यवाद! यह वास्तव में गलत था, एंड्रॉइड स्टूडियो नए प्रोजेक्ट विज़ार्ड में 'कंपनी डोमेन' मांगता है, जिसे मैंने 'पैकेज नाम' के रूप में व्याख्या किया था। –

+0

@KeesvanDieren मुझे लगता है कि आपको इसे उत्तर के रूप में पोस्ट करना चाहिए। मेरे पास यही समस्या है। 'साफ़ इकट्ठा चेक इकट्ठा'। –

उत्तर

5

मुझे एक वर्कअराउंड मिला: मैन्युअल रूप से संकलन ट्रिगर करें। Gradle आदेश है कि सफल होता है:

./gradlew clean assembleDebug assembleRelease test

फिर भी एक बेहतर समाधान की तलाश में।

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