স্যুট এবং মডিউলগুলিতে বিকল্পগুলি এবং ফিল্টারগুলি পাস করুন, স্যুট এবং মডিউলগুলিতে বিকল্পগুলি এবং ফিল্টারগুলি পাস করুন

প্রথমে, নিশ্চিত করুন যে আপনি 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
,

প্রথমে, নিশ্চিত করুন যে আপনি 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