প্রথমে, নিশ্চিত করুন যে আপনি Tradefed-এ অপশন হ্যান্ডলিং বুঝতে পেরেছেন।
স্যুট সেটআপ স্যুট কাঠামোতে বিদ্যমান দুটি স্তরের বর্ণনা করে:
- শীর্ষ স্তরের স্যুট
- মডিউল
একটি নন-স্যুট ট্রেডফেড প্রসঙ্গে, এটি সম্পর্কে চিন্তা করার দরকার নেই; প্রতিটি বিকল্প সম্পূর্ণ আহ্বানে যায়। একটি স্যুট প্রসঙ্গে, মডিউলগুলি স্যুট থেকে বিচ্ছিন্ন রাখা হয়; তাই তাদের লেভেলে সব অপশন পাওয়া যায় না।
শীর্ষ-স্তরের স্যুটে বিকল্পগুলি পাস করুন
টপ-লেভেল স্যুট স্ট্যান্ডার্ড ট্রেডফেড কনফিগারেশনের মতো আচরণ করে: স্যুট রানার সহ সম্পূর্ণ কনফিগারেশন একটি নন-স্যুট ট্রেডফেড কনফিগারেশনের মতো সমস্ত বিকল্প গ্রহণ করে।
মডিউলগুলিতে বিকল্পগুলি পাস করুন
ডিফল্টরূপে মডিউল কমান্ডে পাস করা বিকল্পগুলির কোনোটি পায় না । module-arg
বিকল্পের মাধ্যমে বিকল্পগুলি পেতে তাদের স্পষ্টভাবে লক্ষ্যবস্তু করা দরকার। মডিউল বিকল্পগুলির এই বিচ্ছিন্নতা ডিবাগিংকে সহজ করে তোলে।
উদাহরণ:
cts-tradefed run cts --module-arg <module-name>:<option-name>:<option-value>
cts-tradefed run cts --module-arg CtsGestureTestCases:collect-tests-only:true
সিনট্যাক্স নিশ্চিত করে যে লক্ষ্যযুক্ত মডিউল প্রদত্ত বিকল্পটি পাবে।
test-arg
মতো মডিউলগুলিতে বিকল্পগুলি পাস করার অতিরিক্ত উপায় রয়েছে, যা আপনাকে রানার প্রকার বা শ্রেণির উপর ভিত্তি করে প্রতিটি মডিউলের পরীক্ষা রানারকে বিকল্পগুলি পাস করতে দেয়।
উদাহরণ:
cts-tradefed run cts --test-arg <test-class>:<option-name>:<option-value>
cts-tradefed run cts --test-arg com.android.tradefed.testtype.JarHosttest:collect-tests-only:true
সিনট্যাক্স একটি নির্দিষ্ট মডিউলকে লক্ষ্য করে না বরং প্রদত্ত শ্রেণীর সমস্ত পরীক্ষার্থীকে লক্ষ্য করে। test-arg
বিকল্পগুলির সম্ভাব্য রিসিভার হিসাবে শুধুমাত্র IRemoteTest এর বাস্তবায়নকে বিবেচনা করে।
একটি java_test_host-এ জাভা পরীক্ষার ক্লাসে বিকল্প পাস করুন
আপনি যদি java_test_host বিল্ড টার্গেটের অংশ হিসাবে আপনার জাভা টেস্ট ক্লাসে একটি @Option
যোগ করেন তবে আপনাকে সেই বিকল্পটি ইনজেক্ট করতে নিম্নলিখিত ব্যবহার করতে হবে:
cts-tradefed run cts --module-arg <module-name>:set-option:<option-name>:<option-value>
এই প্রেক্ষাপটে সেট-অপশন হল টেস্ট হার্নেস থেকে হোস্টটেস্ট রানারের বিকল্প যা আপনার জাভা ক্লাসগুলি চালানোর জন্য মোড়ানো হয়।
যদি বিকল্পগুলির জন্য আপনার জার ফাইল টার্গেটে একাধিক পরীক্ষার ক্লাস থাকে, ডিফল্টরূপে, তাদের সকলেই @অপশন নির্দিষ্ট করা বা একটি একক শ্রেণীকে লক্ষ্য করার জন্য নিম্নলিখিত সিনট্যাক্স ব্যবহার করার আশা করা হয়:
cts-tradefed run cts --module-arg <module-name>:set-option:<class-name>:<option-name>:<option-value>
স্যুটে ফিল্টার দিন
একটি স্যুট থেকে কিছু পরীক্ষা ফিল্টার করতে, আমরা একটি নির্দিষ্ট পরীক্ষা বা মডিউল অন্তর্ভুক্ত বা বাদ দিতে যথাক্রমে --include-filter
এবং --exclude-filter
ব্যবহার করি। বর্জন অগ্রাধিকার আছে.
তারা এই বিন্যাসটি ব্যবহার করে: [abi] <module-name> [test name]
উদাহরণ:
--include-filter CtsGestureTestCases
--include-filter armeabi-v7a CtsGestureTestCases
--include-filter armeabi-v7a CtsGestureTestCases android.gesture.cts.GestureTest#testGetStrokes