'AndroidJUnit4' প্রতীকটি সমাধান করা যায় না


139

স্পষ্টতই এই সমস্যাটি সমাধান করার জন্য আমার সঠিক আমদানির স্ট্যাটমেন্ট দরকার। দস্তাবেজেরAndroidJUnit4 মতে এটি হওয়া উচিত

import android.support.test.runner.AndroidJUnit4;

যখন আমি এটি করি, অ্যান্ড্রয়েড স্টুডিওগুলি runnerলাল রঙে হাইলাইট করে এবং অভিযোগ করে "প্রতীক 'রানার' সমাধান করতে পারে না"।

পটভূমি

ইউআই অটোমেটর ব্যবহার করে পরীক্ষা নিরীক্ষণের জন্য অ্যান্ড্রয়েড বিকাশকারী সাইটের টিউটোরিয়ালগুলি অনুসরণ করে আমি এই স্থানে পৌঁছেছি । প্রথম সমস্যার মুখোমুখি হ'ল এটি com.android.support:support-v4:22.2.0এবং এর com.android.support.test:runner:0.2বিভিন্ন সংস্করণের উপর নির্ভর করে com.android.support:support-annotations। আমি এই অ্যান্ড্রয়েড বাগ রিপোর্ট থেকে দেওয়া পরামর্শগুলি অনুসরণ করেছি allprojectsএবং আমার প্রকল্পের ক্ষেত্রে নিম্নলিখিতগুলি যুক্ত করেছি build.gradle:

configurations.all {
    resolutionStrategy.force 'com.android.support:support-annotations:22.1.0'
}

এটি তাত্ক্ষণিক ত্রুটিটি সমাধান করেছে, তবে আমি সন্দেহ করি এটি আমার বর্তমান সমস্যার দিকে নিয়ে যায়। কীভাবে এটি ঠিক করবেন সে সম্পর্কে কারও কি কোনও পরামর্শ আছে?

`./Gradlew: অ্যাপ্লিকেশন: নির্ভরতা থেকে রিলেভেন্ট বিভাগগুলি

androidTestCompile - Classpath for compiling the androidTest sources.
+--- com.jayway.android.robotium:robotium-solo:5.2.1
+--- com.squareup:fest-android:1.0.8
|    \--- org.easytesting:fest-assert-core:2.0M10
|         \--- org.easytesting:fest-util:1.2.5
+--- com.android.support.test:runner:0.2
|    +--- junit:junit-dep:4.10
|    |    \--- org.hamcrest:hamcrest-core:1.1
|    +--- com.android.support.test:exposed-instrumentation-api-publish:0.2
|    \--- com.android.support:support-annotations:22.0.0 -> 22.2.0
+--- com.android.support.test:rules:0.2
|    \--- com.android.support.test:runner:0.2 (*)
\--- com.android.support.test.uiautomator:uiautomator-v18:2.1.0

compile - Classpath for compiling the main sources.
+--- com.android.support:appcompat-v7:22.2.0
|    \--- com.android.support:support-v4:22.2.0
|         \--- com.android.support:support-annotations:22.2.0
+--- com.android.support:support-v4:22.2.0 (*)
+--- com.google.android.gms:play-services:6.1.71
|    \--- com.android.support:support-v4:20.0.0 -> 22.2.0 (*)
+--- com.crashlytics.android:crashlytics:1.+ -> 1.1.13
\--- com.jakewharton:butterknife:5.1.2

এটি পরামর্শ দেয় যে আপনার বিল্ডটি পুরোপুরি অনুপস্থিত com.android.support.test:runner। আপনি কি এইটির মাধ্যমে নিশ্চিত করতে পারবেন gradle dependenciesযে আপনি এখনও resolutionStrategyপরিবর্তনটির পরে এটিকে টানছেন ?
কমন্সওয়্যার

@ কমন্সওয়্যার আমার প্রশ্নের সাথে নির্ভরতা আউটপুট যুক্ত করেছে। আমি জানি না এর (*)পরে কী আছে com.android.support.test:runner:0.2
কোড-শিক্ষানবিশ

গ্র্যাডল লোকদের মতে , অস্ট্রিস্টক "এর অর্থ হ'ল নির্ভরতা গ্রাফের গাছের ভিউটি এই সময়ে সংক্ষিপ্তভাবে কাটা হয়েছে কারণ গ্রাফের সেই অংশটি ইতিমধ্যে তালিকাভুক্ত ছিল।" কেন এটি আপনার পক্ষে কাজ করছে না তা নিয়ে আমি স্ট্যাম্পড।
CommonsWare

1
নোট করুন যে 2018 টি থেকে স্টেমেডসেনের উত্তর অন্যদের চেয়ে সম্ভাব্য বেশি প্রাসঙ্গিক। কেউ একবার একটি পরীক্ষা সম্পর্কে লিখেছিলেন যা প্রশ্নগুলি একই বছরের পর বছর রেখেছিল, তবে উত্তরগুলি পাল্টে গেছে ...
রায় ফালক

উত্তর:


199

আপনার অ্যাপটি ডিবাগ বিল্ড ভেরিয়েন্টে নিশ্চিত করুন। বিল্ড এ যান > নির্বাচন করুন বৈকল্পিক নির্বাচন করুন ... এবং নিম্নলিখিতটি প্রদর্শিত হবে:

এখানে চিত্র বর্ণনা লিখুন


5
ধন্যবাদ, আপনি আমাকে বাঁচিয়েছেন
সোফা

10
তোমার মঙ্গল হোক. ডকুমেন্টেশনে কখনও বলা হয় না "এই স্টাফগুলি কেবলমাত্র ডিবাগে কাজ করবে"। খুবই হতাশাজনক.
চ্যান্টেল ওসেজো

27
কি দারুন. আপ-ভোট x 1 মিলিয়ন এই উত্তরটি আমি বেশ কয়েকদিন ধরে সন্ধান করছি। এটি এটিও পেয়েছে যাতে এটির জন্য আপনি কোন বিল্ড টাইপটি পরিবর্তন করতে পারেন। android { testBuildType "staging"}
WIllJBD

5
আমি এগুলির জন্য একটি অ্যান্ড্রয়েড স্টুডিও সরঞ্জাম দলটির সাথে একটি বাগ রিপোর্ট দায়ের করতে যাচ্ছি। এমনকি এমন ধরনের বিল্ডগুলি তৈরি করুন যা উত্তরাধিকার সূত্রে debug"ডিবাগ" এ সেট না করে কাজ করে না
গৌতম সি

1
বাহ, আমি আরম্ভের সাথে বিল্টটাইপ (বিল্ডটাইপস.দেবগ) ব্যবহার করছি এবং এখনও ব্যর্থ। কেবলমাত্র এবং যদি আমি ডিবাগটি সরাসরি ব্যবহার করি তবে!
করলি

120

আমি এসসিআর / পরীক্ষায় পরীক্ষার ক্লাস স্থাপনের ভুল করেছিলাম । এগুলিকে src / androidTest / java / এ স্থানান্তরিত করার পরে নির্ভরতা সমাধান করা হয়েছিল।


আমার ক্ষেত্রে আমার পরীক্ষার ফোল্ডারের src / পরীক্ষা কিছু কারণে আমি src তা নামান্তর করতে / androidTest ছিল, তারপর এবং এটি 3 ঘন্টা পর আমার সমস্যার সমাধান, ...
Teo Inke

69

ঠিক আছে তাই এখানে আপনার ভুল এবং আমার!

আমরা যদি স্থানীয় ইউনিট পরীক্ষার জন্য একটি পাইস কোড লিখতে @RunWith(AndroidJUnit4.class)যাই তবে আমাদের কারণ ব্যবহার করা উচিত নয় আমরা AndroidJUnit4 ব্যবহার করি না তবে আমাদের জুনিট ৪ প্রয়োজন। সুতরাং আমাদের লেখা উচিত @RunWith(JUnit4.class)। এবং অবশ্যই আপনার জাভা পরীক্ষা ফাইল app/src/test/java/your.package.nameডিরেক্টরি অধীনে ।

অন্যথায় যদি (!!) আমরা কিছু অ্যান্ড্রয়েড ইনস্ট্রুমেন্টেড ইউনিট টেস্ট লিখতে চাই আমাদের app/src/androidTest/java/your.package.nameডিরেক্টরিটি আমাদের জাভা ফাইলগুলিকে ডিরেক্টরিতে রাখা উচিত এবং টীকাগুলি ব্যবহার করা উচিত@RunWith(AndroidJUnit4.class)


আমি মাভেন ব্যবহার করছি, তাহলে কী?
জনিটেক্স

2
@ জোনিটেক্স মাভেন ব্যবহার করে আমার উত্তরকে প্রভাবিত করে না। এটি কেবল আপনার প্রকল্পের ফাইলের কাঠামোর উপর নির্ভর করে।
সেপহর বেহরোজি

34

হালনাগাদ

অ্যান্ড্রয়েড টেস্ট লাইব্রেরি এখন অ্যান্ড্রয়েডএক্সের অংশ। অফিসিয়াল ডকুমেন্টেশনে সঠিক গ্রেডল নির্ভরতা ব্যবহার করতে ভুলবেন না ।

আসল উত্তর

আমি এখানে দেখতে পেয়েছি যে আমি ব্যবহার করছি তার চেয়ে টেস্টিং সমর্থন লাইব্রেরির আরও নতুন সংস্করণ রয়েছে:

dependencies {
    androidTestCompile 'com.android.support.test:runner:0.5'
    androidTestCompile 'com.android.support.test:rules:0.5'
    androidTestCompile 'com.android.support.test.uiautomator:uiautomator-v18:2.1.2'
}

দ্রষ্টব্য: এই লাইব্রেরির সাম্প্রতিকতম সংস্করণগুলি ব্যবহার করার বিষয়ে নিশ্চিত হন। এই প্রশ্নটি এমন সময় থেকে যখন অ্যান্ড্রয়েড টেস্ট সমর্থন লাইব্রেরিটি নতুন ছিল এবং এখানে সংস্করণ সংখ্যাগুলি খুব পুরানো।


3
আমি অবাক হয়েছি কেন ডকুমেন্টেশন এ সম্পর্কে কিছুই উল্লেখ করে না , যদি না আমি এটি মিস না করি। আমাকে কিছুটা দুঃখ বাঁচিয়ে দিতেন।
Nom1fan

@ কারোলি আমার এখনও সমস্যা আছে। আপনি কি কোনও সমাধান খুঁজে পেয়েছেন?
মাহদি

26

আমি অ্যাপ্লিকেশনটির বিল্ড.gradle ফাইলটিতে একটি ছোট পরিবর্তন করে সমস্যার সমাধান করেছি। ইন dependencies { ... }অধ্যায়, নিম্নলিখিত লাইন অন্তর্ভুক্ত করার বিষয়ে নিশ্চিত করুন:

debugImplementation 'com.android.support.test:runner:1.0.1'

বা যে সংস্করণটি সেই মুহুর্তে সর্বশেষতম (হ্রাস ...Compileকরা হয়েছে এবং প্রতিস্থাপন করা হয়েছে ...Implementation)। এর ব্যবহারটি নোট করুন debugImplementation। অ্যান্ড্রয়েড স্টুডিও এটিকে স্বয়ংক্রিয়ভাবে অন্তর্ভুক্ত করার পরামর্শ দিয়েছিল androidTestImplementation, যা কার্যকর হয়নি।

আমি অ্যাপ্লিকেশন মডিউলের নির্ভরশীলতাগুলির অধীনে প্রজেক্ট কাঠামোটি দেখে পরীক্ষা থেকে ডিবাগে কীভাবে এটি পরিবর্তন করতে হবে তা জানতে পেরেছি, যেখানে আপনি প্রতিটি নির্ভরতার সুযোগ পরিবর্তন করতে পারেন নীচে দেখুন।

প্রকল্প কাঠামো


নোট করুন যে এটি পরীক্ষামূলক সহায়তা লাইব্রেরিটি APK এ সংকলন করবে।
কোড-শিক্ষানবিস

টেস্টআইম্পিমুলেশন "com.android.support.test: বিধিগুলি: 1.0.2"
প্রট

10

লক্ষ্য করুন যে এই ওপিটি এখন 2019 সালে, 4 বছর বয়সী তাই আপনি যদি অ্যান্ড্রয়েড এক্স ব্যবহার করে থাকেন তবে AndroidJUnit4.classঅবনতি হয়, আপনার সেখানে একটি ত্রুটি রয়েছে এবং এর সাথে আরও একটি রয়েছে androidx.test.ext.junit.runners.AndroidJUnit4। সমস্যাটি সমাধান করার জন্য আমি এই লিঙ্কগুলি পড়ার পরামর্শ দিই।

AndroidJUnit4.class অবমূল্যায়ন করা হয়েছে: androidx.test.ext. জুনit.runners.AndroidJUnit4 কীভাবে ব্যবহার করবেন?

জুনিট 4 টেস্টগুলি অ্যান্ড্রয়েডএক্সে স্থানান্তরিত করা: কী কারণে 'ডেলিগেট রানার লোড করা যায়নি'? আমার জন্য অ্যান্ড্রয়েড স্টুডিও প্রতিস্থাপনের পরামর্শ দিয়েছে

@RunWith(AndroidJUnit4.class)

যা দিয়ে অবচয় করা হয়েছিল

@RunWith(AndroidJUnit4ClassRunner.class)

এবং এই

androidx.test.ext.junit.runners.AndroidJUnit4

এর সাথে

import androidx.test.internal.runner.junit4.AndroidJUnit4ClassRunner;

তারপরে ত্রুটি চলে গেছে তবে আমি জানি না ভবিষ্যতে টেস্ট চালানোর সময় ঠিক আছে কিনা ?!


@ কোড-শিক্ষানবিস - সম্পাদনার জন্য আপনাকে অনেক ধন্যবাদ, এটি এখন খুব সুন্দর
লেওনিদা

8

আমার ক্ষেত্রে এটি প্রকাশের বৈকল্পিকের জন্য সহায়তা করেছে:

android {
    ...
    testBuildType "release" 
}

আপনি আরও একটি সম্পূর্ণ সমাধান দিতে পারেন। আপনি কি করেছিলেন সে প্রসঙ্গে আমি বুঝতে পারি না।
কোড-শিক্ষানবিস

যখন আমি বিল্ড ভেরিয়েন্টটি "রিলিজ" এ পরিবর্তন করেছি তখন আমি আমার এস্প্রেসো পরীক্ষায় "AndroidJUnit4" প্রতীকটি সমাধান করতে পারছি না encountered আমি এই বিবৃতিটি (টেস্টবিল্ডটাইপ "রিলিজ") অ্যাপ্লিকেশন স্তরের বিল্ড.gradle এ যুক্ত করার সাথে সাথে ( ডেভেলপার.অ্যান্ড্রয়েড / স্টুডিও / টেস্ট / ইন্ডেক্স এইচটিএমএল# অ্যাড_এ_নেউ_স্টেস্ট থেকে নেওয়া ) এই সমস্যাটি অদৃশ্য হয়ে গেল।
অ্যান্ড্রু গ্লুখফ

আমি আপনার উত্তরে আপনার উত্তর কোডটি ফর্ম্যাট করেছি। আপনার আরও বিবরণ যুক্ত করা উচিত, যেমন আপনার মন্তব্য থেকে লিঙ্ক এবং আপনার প্রকল্পে এই ব্লকটি কোথায় যায় তা বর্ণনা করা উচিত।
কোড-শিক্ষানবিস

7

এই সমস্যার সাধারণ কারণ হ'ল নীচে নির্ভরতা যুক্ত করার সময়:

androidTestImplementation 'androidx.test.ext:junit:1.1.1'

যদি আপনি চালিত পরীক্ষা ( androidTestজাভা প্যাকেজের পরীক্ষাগুলি ) ব্যবহার করতে যাচ্ছেন তবে এটি একটি সঠিক নির্ভরতা is

তবে স্থানীয় ইউনিট পরীক্ষাগুলি প্রয়োগ করার জন্য ( testজাভা প্যাকেজের পরীক্ষাগুলি ) উপরে উল্লিখিত নির্ভরতা ব্যবহার করার সময়; তাহলে আপনি মুখোমুখি হবেনCannot resolve symbol 'AndroidJUnit4'

এর কারণ হ'ল androidTestImplementationনির্দেশিকাটি চালিত পরীক্ষায় লাইব্রেরি আমদানি করতে ব্যবহৃত হয়, তবে স্থানীয় জেভিএম / ইউনিট পরীক্ষায় নয় not

আপনি যদি AndroidJUnit4কোনও স্থানীয় জেভিএম / ইউনিট পরীক্ষায় ব্যবহার করতে চান তবে তার পরিবর্তে নীচে নির্ভরতা ব্যবহার করুন

testImplementation 'androidx.test.ext:junit:1.1.1'

একই জিনিসটি প্রযোজ্য যদি আপনি AndroidJUnit4চালিত পরীক্ষায় ব্যবহারের সময় পরবর্তী নির্ভরতা যুক্ত করেন তবে আপনিও পাবেন Cannot resolve symbol 'AndroidJUnit4'; কারণ আপনি ভুল নির্দেশনাটি ব্যবহার করছেন।


1
আমার আসল প্রশ্নে দৃশ্যে, আমি চালিত পরীক্ষা চালিয়ে যাচ্ছিলাম। তবে এটি তৈরি করার জন্য এটি একটি দুর্দান্ত পার্থক্য এবং আশা করি ভবিষ্যতে এই প্রশ্নের দর্শনার্থীদের সহায়তা করবে।
কোড-শিক্ষানবিশ

5

এখনও যদি কারও কাছে এই সমস্যা থাকে:

'AndroidJUnit4' প্রতীকটি সমাধান করা যায় না

এবং build.gradleঅ্যাপ্লিকেশন মডিউলে থাকা এপিআই 27 ব্যবহার করে নিম্নলিখিত লাইনগুলি যুক্ত করুন:

testImplementation 'junit:junit:4.12'

// AndroidJUnitRunner and JUnit Rules
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test:rules:1.0.2'

// Espresso dependencies
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'

3

আপনার নির্ভরতাগুলিতে এই কোডটি রাখুন

compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
    exclude group: 'com.android.support', module: 'support-annotations'
})

1
যখন আমি এই প্রশ্নটি লিখেছি, আমি এখনও ইউনিট পরীক্ষার জন্য নির্ভরতা হিসাবে এস্প্রেসো যুক্ত করিনি।
কোড-শিক্ষানবিশ

আমি এটি দেখার আগে +1 আমি আসলে এটি আবিষ্কার করেছি তবে হ্যাঁ, আমি এটিই করেছি এবং এটি আমার সমস্যার সমাধান করেছে।
টনি ডি

2
নীচে দুটি উত্তর অনুসরণ করুন @ এসপিহর থেকে। অ্যান্ড্রয়েডজুনিট 4 শ্রেণিটি এস্প্রেসো প্যাকেজে নেই অ্যান্ড্রয়েড.সুপুরপোর্ট.টাস্ট.রুনার প্যাকেজে এটি উপস্থিত রয়েছে। এবং আপনাকে যা করতে হবে তা হ'ল @ রুনভিথ (অ্যান্ড্রয়েডজুনিট 4 সিগ্লাস) এসসিআর / অ্যান্ড্রয়েড / জাভাতে উপস্থিত পরীক্ষার ক্ষেত্রে উপরিউক্ত / এসসিআর / টেস্ট / জাভা এর অধীন লিখিত পরীক্ষার ক্ষেত্রে অন্তর্ভুক্ত রয়েছে is
খায়

2

আপনি যদি একাধিক বিল্ড-টাইপযুক্ত প্রকল্পটি ব্যবহার করছেন তবে বিল্ড-বৈকল্পিক উইন্ডোতে নির্বাচিত বিল্ড-টাইপটি অবশ্যই মডিউলের বিল্ড.gradle ফাইলে টেস্টবিল্ড টাইপ ট্যাগ সহ উল্লেখ করতে হবে।

উদাহরণস্বরূপ: আপনি যদি বিল্ড টাইপ ডিবাগ ব্যবহার করছেন তবে আপনার যদি যোগ করা উচিত তবে স্টেজandroid{testBuildType "debug" } ব্যবহার করে অ্যান্ড্রয়েড ট্যাগে বিবৃতি যুক্ত করুন ।android{testBuildType "stage"}


আপনি যদি ভেরিয়েন্টটি পরীক্ষা করে দেখতে চান তবে বিল্ড ফাইল সম্পাদনা করার পরামর্শ দিচ্ছেন?
nasch


1

শাস্ত্রীয় অবৈধ ক্যাশে / পুনঃসূচনাটি আমাকে সহায়তা করেছে! :)


1

আপনার build.gradle ফাইলটিতে এই নির্ভরতা যুক্ত করুন:

androidTestImplementation 'androidx.test.ext:junit:1.1.1'

1.1.1প্রকাশিত সর্বশেষ সংস্করণ সহ শেষ সংস্করণ ( ) আপডেট করুন ।


0

যোগ করার পদ্ধতি

compile com.android.support.test:runner:0.5'

আমার জন্য এই সঠিক সমস্যাটি সমাধান করুন।


এটি ইতিমধ্যে গৃহীত উত্তরে বলা হয়েছে। আপনার আরও সাম্প্রতিক সংস্করণ রয়েছে কিনা তাও দেখতে হবে এবং পরিবর্তে এটি ব্যবহার করা উচিত।
কোড-শিক্ষানবিশ

অ্যান্ড্রয়েড টেস্টকম্পাইল কি সংকলনের মতো?
donlys

compileমূল অ্যাপ্লিকেশনে androidTestComipleব্যবহৃত নাম নির্ভরতাগুলি যখন পরীক্ষার জন্য নাম নির্ভরতা ব্যবহার করা হয়। সুতরাং সঠিক উত্তরটি ব্যবহার করা উচিত androidTestCompile, না compile
কোড-শিক্ষানবিশ

0

উত্তরের তালিকায় যেমন প্রদর্শিত হয়, এটি কয়েকটি জিনিসের কারণে ঘটতে পারে। তালিকার জন্য আরও একটি:

আমি একটি অত্যধিক উদ্যোগী লিনটি চালিয়েছি যা সমস্ত অব্যবহৃত আমদানি সরিয়ে দিয়েছে। এটি একই ত্রুটিগুলি উত্পন্ন করবে এবং সহজেই মিস করা যায় যে এই সমস্যাটি।

অ্যান্ড্রয়েড-স্টুডিওগুলি রেফারেন্সগুলি হাইলাইট করবে যা পরীক্ষার কোডটিতে অনুপস্থিত রয়েছে - এবং ALT-ENTER পপআপ উপস্থিত হবে (এটি হ'ল সহজেই মিস করা যায়)।

এর পরে, আমাকে লিন্ট থেকে পরীক্ষাগুলি সরিয়ে ফেলতে হবে - বা কমপক্ষে এই সতর্কতাটি অক্ষম করতে হবে।

সম্পাদনা করুন: @ কোড-শিক্ষানবিস, যে লাইনগুলি অনুপস্থিত ছিল সেগুলি হ'ল:

import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;


import static junit.framework.Assert.assertNotNull;
import static junit.framework.Assert.assertNull;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;

সুতরাং ফাইলটিতে প্রথম ত্রুটিটি ছিল @RunWith(AndroidJUnit4.class)আমার পরীক্ষার ক্লাসের শুরুতে।


আপনি কি উদাহরণস্বরূপ পরীক্ষাটি দেখাতে পারেন যেখানে এটি আপনার জন্য হয়েছিল?
কোড-শিক্ষানবিশ

0

ছোট গল্পের সংস্করণ:

আপনার গ্রেডলকে সর্বশেষতম সংস্করণে আপগ্রেড করুন

আমি এই প্রশ্ন পোস্টটি ফেব্রুয়ারি, 15, 2020-এ উত্তর দিচ্ছি Unfortunately দুর্ভাগ্যক্রমে, আমি এখানে এবং অন্য কোথাও উল্লিখিত প্রতিটি সম্ভাব্য সমাধানগুলি শেষ করে দিয়েছি।

হ্যাঁ, এগুলির মধ্যে কোনওটিই কাজ করে না। আমি অন্তর্নির্মিত ফাংশনটি "অ্যান্ডরিডেক্সে মাইগ্রেট" ব্যবহার করি, এটি আমাকে স্মরণ করিয়ে দিতে পারে যে আমাকে আমার লক্ষ্য এসডিকে এবং আমার গ্রেড সংস্করণটি আপগ্রেড করতে হবে। আমি আমার গ্রেডেল সংস্করণটি ২.০.২ থেকে ৩.৩.৩ এ আপগ্রেড করার পরে। তারা কেবল কাজ করে, এমনকি পুরানো আমদানির বিবৃতিও কাজ করে।


হাই, এটি একটি পুরানো প্রশ্ন ইতিমধ্যে একটি স্বীকৃত উত্তর আছে এবং আমি আপনার উত্তর কীভাবে প্রশ্নের নতুন কিছু যুক্ত করে তা দেখতে ব্যর্থ। আপনার উত্তরটি বিদ্যমান উত্তরের সাথে নতুন কিছু যোগ না করে দয়া করে উত্তর এড়াতে দয়া করে। ধন্যবাদ
হিপ্পোশিপোস

গৃহীত উত্তরটি AndroidX টেস্টিং লাইব্রেরিতে পরীক্ষার নির্ভরতা আপডেট করার জন্য একটি লিঙ্ক দেয়। এটি সম্ভবত এমন জিনিস যা আপনার চেষ্টা করা সমস্ত ক্ষেত্রে এটি স্থির করে।
কোড-শিক্ষানবিস

0

আমি যখন গুগল আইওএসচ অ্যাপ্লিকেশন অনুসরণ করি এবং তিনটি বিল্ড প্রকার [ডিবাগ, রিলিজ, স্টেজিং] সহ আমার প্রকল্প সেট আপ করি তখন একই ত্রুটি আমার কাছে ঘটেছিল যেখানে ডিবাগ এবং রিলিজ একই উত্স ডিরেক্টরিটি ভাগ করে

sourceSets {
    debug.java.srcDir 'src/debugRelease/java'
    release.java.srcDir 'src/debugRelease/java'
}

এই ক্ষেত্রে, testBuildTypeআপনার মডিউল-স্তরের বিল্ড.gradle ফাইলটিতে সুনির্দিষ্ট করুন এবং প্রকল্পটি এখন 'AndroidJUnit4' প্রতীকটি সমাধান করতে সক্ষম হওয়া উচিত।

...
sourceSets {
    debug.java.srcDir 'src/debugRelease/java'
    release.java.srcDir 'src/debugRelease/java'
}

testBuildType "staging"
...

তথ্যসূত্র: https://github.com/google/iosched/blob/master/mobile/build.gradle

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.