Eclipse का इस्तेमाल करके ट्रेडेड सेट अप करने के लिए, यह तरीका अपनाएं.
Trade Federation को डेवलप करने के लिए, एक अलग वर्कस्पेस बनाएं. Android डिवाइस के डेवलपमेंट के लिए पहले से इस्तेमाल किए जा रहे वर्कस्पेस का फिर से इस्तेमाल न करें.
ज़रूरत पड़ने पर, Java डेवलपर के लिए Eclipse IDE को यहां से डाउनलोड किया जा सकता है: eclipse.org/downloads
प्रोजेक्ट बनाना
- कमांड लाइन से make को एक बार चलाएं. इससे, यहां दिए गए प्रोजेक्ट पर निर्भर बाहरी लाइब्रेरी बन जाएंगी.
Window > Preferences > Java > Build Path> Classpath Variables
में TRADEFED_ROOT क्लासपथ वैरिएबल सेट करें और उसे अपने tradefed सोर्स रूट पर ले जाएंWindow > Preferences > General > Workspace > Linked Resources
में TRADEFED_ROOT पाथ वैरिएबल सेट करें और उसे अपने tradefed सोर्स रूट पर ले जाएंइन ओपन सोर्स Java प्रोजेक्ट को इन पाथ में शामिल करने के लिए,
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
में मौजूद होती हैं. इसलिए, आपको इन फ़ाइलों को पाने के लिए, main
जैसी प्लैटफ़ॉर्म शाखा की जांच करनी होगी:
/development/main/ide/eclipse/
फ़ॉर्मैटर को Android स्टाइल गाइड पर अपने-आप सेट करने के लिए, Eclipse में प्राथमिकता फ़ाइलों का इस्तेमाल करें. Studio में ऐसा करने के लिए:
- विंडो > प्राथमिकताएं > Java > कोड स्टाइल पर जाएं.
- फ़ॉर्मैटर में जाकर, फ़ाइल
android-formatting.xml
इंपोर्ट करें. - व्यवस्थित करें > इंपोर्ट में जाकर, फ़ाइल
android.importorder
इंपोर्ट करें.
आखिर में मौजूद खाली सफ़ेद जगहों को हटाना
Eclipse को लाइन के आखिर में मौजूद सभी खाली जगहों को हटाने के लिए:
- विंडो > प्राथमिकताएं -> Java -> एडिटर -> कार्रवाइयां सेव करें पर जाएं.
- इसके बाद, अन्य कार्रवाइयां -> कॉन्फ़िगर करें -> कोड -> व्यवस्थित करने वाला टैब -> फ़ॉर्मैटर पर जाएं.
- टेंप्लेट के आखिर में मौजूद खाली जगह हटाएं को चुनें.
- लागू करें और बंद करें पर क्लिक करें.
कोड का स्टाइल देखें
बदलाव की सूची सबमिट करने पर, आपके कोड के फ़ॉर्मैट की जांच करने के लिए, अपने-आप पहले से
अपलोड होने वाला हुक चलेगा: google-java-format
इससे आपके कोड को सामान्य स्टैंडर्ड के हिसाब से फ़ॉर्मैट करने में मदद मिलती है.
Eclipse को डीबग करना
अगर आपको Eclipse में डीबगर के ज़रिए TF कोड चलाना है, तो हमारा सुझाव है कि पहले विचाराधीन कोड के लिए यूनिट टेस्ट बनाएं. यह फ़ंक्शनलिटी को इस्तेमाल करने का सबसे आसान और तेज़ तरीका होगा.
TF यूनिट टेस्ट को डीबग करने के लिए, उस पर राइट क्लिक करें और इस तरह डीबग करें > JUnit टेस्ट को चुनें.
TF फ़ंक्शन की जांच को डीबग करने के लिए, पिछले सेक्शन में दिए गए निर्देशों का पालन करें. इससे फ़ंक्शन की जांच करने में मदद मिलेगी. हालांकि, रन > डीबग कॉन्फ़िगरेशन मेन्यू का इस्तेमाल करें.
TF प्रोग्राम को खुद डीबग करने के लिए, किसी भी कॉन्फ़िगरेशन को चलाते समय, फ़ंक्शनल टेस्ट करने के लिए पिछले सेक्शन में दिए गए निर्देशों का पालन करें. हालांकि, उस कॉन्फ़िगरेशन के लिए कमांड लाइन आर्ग्युमेंट दें जिसे आपको चौथे चरण में चलाना है. इसलिए, 'इंस्ट्रूमेंट' कॉन्फ़िगरेशन को डीबग करने के लिए, रन > कॉन्फ़िगरेशन डीबग करें मेन्यू पर जाएं. इसके बाद, Eclipse डीबग कॉन्फ़िगरेशन में आर्ग्युमेंट टैब को -- package <package to run> instrument
पर सेट करें.
Eclipse की मदद से रिमोट डीबग करना
tradefed.sh
कमांड लाइन से शुरू किए गए, ट्रेडफ़ेड सेशन को रिमोट तौर पर डीबग करने के लिए, यह तरीका अपनाएं:
- डीबग फ़्लैग के साथ tradefed.sh शुरू करें:
TF_DEBUG=1 tradefed.sh
- JVM से यह प्रॉम्प्ट दिखने तक इंतज़ार करें:
Listening for transport dt_socket at address: 10088
इसका मतलब है कि JVM, डीबगर के10088
पोर्ट से अटैच होने का इंतज़ार कर रहा है. - मुख्य मेन्यू से, Eclipse के रिमोट डीबगिंग की मदद से अटैच करें: रन > डीबग कॉन्फ़िगरेशन... चुनें.
- पॉप-अप संवाद में, बाएं मेन्यू से रिमोट Java ऐप्लिकेशन चुनें.
- ऐक्शन बार में, नया लॉन्च कॉन्फ़िगरेशन आइकॉन पर क्लिक करें.
- कॉन्फ़िगरेशन को अपनी पसंद के मुताबिक नाम दें और प्रोजेक्ट के तौर पर tradefederation चुनें.
- पहले दिए गए पते का इस्तेमाल करके, पोर्ट की जानकारी अपने-आप भरने की सुविधा चालू करें.
- सोर्स टैब पर स्विच करें और सोर्स लुकअप पाथ में प्रोजेक्ट 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 डीबगर 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
चलाएं.
कोड कवरेज की जांच करना
- Eclemma प्लगिन इंस्टॉल करें.
- सहायता > नया सॉफ़्टवेयर इंस्टॉल करें पर जाएं और विज़र्ड को इस पते पर ले जाएं: http://update.eclemma.org/
- इंस्टॉल होने के बाद, कोड कवरेज चलाने के लिए, कवरेज के तौर पर > JUnit टेस्ट विकल्प चुनें.