Eclipse ব্যবহার করে Tradefed সেট আপ করতে এই ধাপগুলো অনুসরণ করুন।
ট্রেড ফেডারেশন তৈরির জন্য একটি আলাদা ওয়ার্কস্পেস তৈরি করুন, অ্যান্ড্রয়েড ডিভাইস তৈরির কাজে ব্যবহৃত কোনো ওয়ার্কস্পেস পুনরায় ব্যবহার করবেন না।
প্রয়োজনে, আপনি জাভা ডেভেলপারদের জন্য Eclipse IDE ডাউনলোড করতে পারেন এখান থেকে: eclipse.org/downloads
প্রকল্প তৈরি করুন
- কমান্ড লাইন থেকে একবার `make` চালান। এটি নিচের প্রজেক্টগুলোর জন্য প্রয়োজনীয় এক্সটার্নাল লাইব্রেরিগুলো বিল্ড করবে।
-
Window > Preferences > Java > Build Path> Classpath Variablesএ TRADEFED_ROOT ক্লাসপাথ ভেরিয়েবলটি সেট করুন এবং এটিকে আপনার ট্রেডফেড সোর্স রুটের দিকে নির্দেশ করুন। -
Window > Preferences > General > Workspace > Linked Resourcesএ TRADEFED_ROOT পাথ ভেরিয়েবলটি সেট করুন এবং এটিকে আপনার ট্রেডফেড সোর্স রুটের দিকে নির্দেশ করুন। নিম্নলিখিত পাথগুলির অধীনে এই ওপেন সোর্স জাভা প্রজেক্টগুলি আনার জন্য
File > Import...-> General > Existing Projects into workspace"উইজার্ডটি ব্যবহার করুন:prebuilts/misc/common/ddmlib\* tools/loganalysis tools/loganalysis/tests tools/tradefederation/core tools/tradefederation/core/tests tools/tradefederation/contrib tools/tradefederation/core/remote platform_testing/libraries/health/runners/longevity/host platform_testing/libraries/annotations platform_testing/libraries/health/composers/hostঐচ্ছিকভাবে, আপনি যদি
ddmlibসোর্স কোড দেখতে চান, তাহলে একটি আনবান্ডেলড টুলস ব্রাঞ্চ থেকে সোর্স কোডটি অ্যাটাচ করুন, যেমন /platform/tools/base/tools_r22/ddmlib/src/main/java/com/android/ddmlib/IDevice.java ।ঐচ্ছিকভাবে, আপনি যদি CTS হারনেস প্রজেক্টগুলোও লোড করতে চান, তাহলে ইম্পোর্ট করুন:
test/suite_harness/common/util test/suite_harness/common/host-side/util test/suite_harness/common/host-side/tradefed
স্বয়ংক্রিয় ফরম্যাট
দ্রষ্টব্য: প্রয়োজনীয় ফাইলগুলো সম্পূর্ণ প্ল্যাটফর্ম সোর্স ট্রি-এর মধ্যে development/ide/eclipse এ থাকে। তাই এই ফাইলগুলো পেতে আপনাকে android-latest-release এর মতো একটি প্ল্যাটফর্ম ব্রাঞ্চ চেক আউট করতে হবে: /development/android17-release/ide/eclipse/
Eclipse-এর প্রেফারেন্স ফাইল ব্যবহার করে ফরম্যাটারকে স্বয়ংক্রিয়ভাবে অ্যান্ড্রয়েড স্টাইল গাইডে সেট করুন। Studio-তে এটি করতে:
- উইন্ডো > প্রেফারেন্সেস > জাভা > কোড স্টাইল- এ যান।
- Formatter-এর অধীনে
android-formatting.xmlফাইলটি ইম্পোর্ট করুন। - Organize > Imports এর অধীনে
android.importorderফাইলটি ইম্পোর্ট করুন।
শেষের অতিরিক্ত স্পেসগুলো মুছে ফেলুন
Eclipse-কে শেষের সমস্ত অতিরিক্ত স্পেস মুছে ফেলতে বাধ্য করতে:
- Window > Preferences -> Java -> Editor -> Save Actions- এ যান।
- তারপর অতিরিক্ত অ্যাকশন -> কনফিগার -> কোড > অর্গানাইজিং ট্যাব -> ফরম্যাটার ।
- শেষের অতিরিক্ত স্পেস মুছে ফেলার অপশনটি চেক করুন।
- প্রয়োগ করুন এবং বন্ধ করুন- এ ক্লিক করুন।
কোড স্টাইল পরীক্ষা করুন
চেঞ্জলিস্ট জমা দেওয়ার সময়, আপনার কোডের ফরম্যাট ( google-java-format যাচাই করার জন্য একটি স্বয়ংক্রিয় প্রি-আপলোড হুক চালু হবে।
এটি আপনার কোডকে প্রচলিত মান অনুযায়ী বিন্যাস করতে সাহায্য করে।
ডিবাগ এক্লিপ্স
আপনি যদি Eclipse-এ ডিবাগারের মাধ্যমে TF কোড চালাতে চান, তবে প্রথমে উক্ত কোডটির জন্য একটি ইউনিট টেস্ট তৈরি করার পরামর্শ দেওয়া হচ্ছে, কারণ এটিই হবে কার্যকারিতাটি যাচাই করার সবচেয়ে সহজ এবং দ্রুততম উপায়।
একটি TF ইউনিট টেস্ট ডিবাগ করতে, সেটির উপর রাইট-ক্লিক করে Debug As > JUnit test নির্বাচন করুন।
একটি TF ফাংশনাল টেস্ট ডিবাগ করতে, ফাংশনাল টেস্ট চালানোর জন্য পূর্ববর্তী বিভাগের নির্দেশাবলী অনুসরণ করুন, তবে Run > Debug configurations মেনুটি ব্যবহার করুন।
যেকোনো কনফিগারেশন চালানোর সময় TF প্রোগ্রামটি ডিবাগ করার জন্য, ফাংশনাল টেস্ট চালানোর জন্য পূর্ববর্তী বিভাগের নির্দেশাবলী অনুসরণ করুন, তবে ধাপ ৪-এ আপনি যে কনফিগারেশনটি চালাতে চান তার জন্য কমান্ড লাইন আর্গুমেন্ট প্রদান করুন। সুতরাং 'instrument' কনফিগারেশনটি ডিবাগ করতে, Run > Debug configuration মেনুতে যান এবং Eclipse ডিবাগ কনফিগারেশনের Arguments ট্যাবটি -- package <package to run> instrument সেট করুন।
Eclipse দিয়ে রিমোট ডিবাগ
tradefed.sh কমান্ড লাইন থেকে শুরু করা একটি tradefed সেশন দূর থেকে ডিবাগ করতে এই ধাপগুলো অনুসরণ করুন:
- ডিবাগ ফ্ল্যাগ সহ tradefed.sh চালু করুন:
TF_DEBUG=1 tradefed.sh - JVM থেকে এই প্রম্পটটি না দেখা পর্যন্ত অপেক্ষা করুন:
Listening for transport dt_socket at address: 10088এর মানে হলো, JVM10088পোর্টে ডিবাগার সংযুক্ত হওয়ার জন্য অপেক্ষা করছে। - প্রধান মেনু থেকে Eclipse-এর রিমোট ডিবাগিং সংযুক্ত করতে: Run > Debug Configurations... নির্বাচন করুন।
- পপ-আপ ডায়ালগে, বাম দিকের মেনু থেকে রিমোট জাভা অ্যাপ্লিকেশন নির্বাচন করুন।
- অ্যাকশন বারে থাকা নতুন লঞ্চ কনফিগারেশন আইকনটিতে ক্লিক করুন।
- কনফিগারেশনটির আপনার ইচ্ছামতো নাম দিন এবং প্রজেক্ট হিসেবে ট্রেডফেডারেশন নির্বাচন করুন।
- পূর্বে প্রদত্ত ঠিকানা ব্যবহার করে পোর্টটি পূরণ করুন।
- সোর্স ট্যাবে যান এবং tradefederation ও google-tradefed প্রজেক্ট দুটিকে সোর্স লুকআপ পাথ- এ যোগ করুন।
- ডিবাগিং সেশন শুরু করতে ডিবাগ-এ ক্লিক করুন।
ডিবাগারটি লিসেনিং JVM প্রসেসের সাথে সংযুক্ত হয় এবং tradefed.sh চালিত টার্মিনালে tf> প্রম্পটটি দেখা যায়।
ডিবাগ মোডে আপনার কোড ধাপে ধাপে পরীক্ষা করার জন্য, Eclipse-এ একটি ব্রেকপয়েন্ট সেট করুন এবং টার্মিনালে আপনার Tradefed কমান্ডটি (যেমন run <test> ) চালান। TF চালু হওয়ার সময় যেকোনো কিছু ডিবাগ করতে, আপনি প্রথমে ব্রেকপয়েন্ট সেট করে তারপর Eclipse ডিবাগারটি সংযুক্ত করতে পারেন।
পরামর্শ: একটি বিকল্প পোর্ট ব্যবহার করতে, উপরের ধাপ ১-এর কমান্ডে TF_DEBUG_PORT=nnn যোগ করুন। আপনার যদি তদন্ত করার মতো কোনো রহস্যময় হ্যাং বাগ থাকে, তবে আপনি প্রোডাকশন এনভায়রনমেন্টেও এটি ব্যবহার করতে পারেন: tradefed.sh এ suspend=y কে suspend=n এ পরিবর্তন করুন এবং ডিবাগ ফ্ল্যাগ দিয়ে শুরু করুন। JVM ডিবাগার সংযুক্ত হওয়ার জন্য অপেক্ষা করবে না, কিন্তু প্রসেসটি চালু থাকা অবস্থায় আপনি যেকোনো সময় তা করতে পারেন।
JDB ব্যবহার করে রিমোট ডিবাগ
Java Debugger JDB ব্যবহার করতে, Eclipse-এর অনুরূপ ধাপগুলি অনুসরণ করুন:
- ডিবাগ ফ্ল্যাগ সহ
tradefed.shচালু করুন:TF_DEBUG=1 tradefed.sh - JVM থেকে এই প্রম্পটটি না দেখা পর্যন্ত অপেক্ষা করুন:
Listening for transport dt_socket at address: 10088. jdbসংযোগ করুন। উদাহরণস্বরূপ, croot থেকে চালান:jdb -attach 10088 \ -sourcepath tools/tradefederation/core/src:vendor/google_tradefederation/core/srcসংযোগের জন্য অপেক্ষা করুন এবং ডিবাগ করতে থাকুন! আরও সাহায্যের জন্য
man jdbচালান।
কোড কভারেজ পরীক্ষা করুন
- একলেমা প্লাগইনটি ইনস্টল করুন।
- Help > Install New Software- এ যান এবং উইজার্ডটিকে http://update.eclemma.org/ -এ নির্দেশ করুন।
- ইনস্টল হয়ে গেলে, কোড কভারেজ রান চালানোর জন্য Coverage As > JUnit test অপশনটি নির্বাচন করুন।