অ্যান্ড্রয়েড ইকোসিস্টেমের জন্য ইতিবাচক প্রতিক্রিয়া বজায় রাখার মূল চালক হল Android সামঞ্জস্যতা প্রোগ্রাম । স্কেলে সামঞ্জস্যের গুণমান নিশ্চিত করার জন্য CTS হল মূল হাতিয়ার। অ্যান্ড্রয়েড টিম CTS টুল এবং পরীক্ষার কভারেজ উন্নত করতে চলেছে৷ টেস্ট কেসগুলির নিয়মিত সংযোজন সামঞ্জস্যপূর্ণ ডিভাইসগুলির মানের উপর উল্লেখযোগ্য উন্নতি করেছে।
সাধারণ প্রশ্ন
এই বিভাগটি সাধারণ CTS FAQ প্রদান করে।
CTS কি ধরনের জিনিস পরীক্ষা করে?
CTS পরীক্ষা করে যে সমস্ত সমর্থিত অ্যান্ড্রয়েড শক্তিশালী-টাইপ করা API উপস্থিত রয়েছে এবং সঠিকভাবে আচরণ করে। CTS অন্যান্য নন-এপিআই সিস্টেম আচরণ যেমন অ্যাপের জীবনচক্র এবং কর্মক্ষমতা পরীক্ষা করে।
কিভাবে CTS লাইসেন্স করা হয়?
CTS একই Apache সফ্টওয়্যার লাইসেন্স 2.0 এর অধীনে লাইসেন্সপ্রাপ্ত যা বেশিরভাগ Android ব্যবহার করে।
কোডেক কি CTS দ্বারা যাচাই করা হয়?
হ্যাঁ। সমস্ত বাধ্যতামূলক কোডেক CTS দ্বারা যাচাই করা হয়।
পরীক্ষা-নির্দিষ্ট প্রশ্ন
এই বিভাগটি প্রায়শই জিজ্ঞাসিত প্রশ্নাবলী সরবরাহ করে যা CTS পরীক্ষাগুলিকে আরও দক্ষতার সাথে চালাতে সহায়তা করে।
CTS Sharding এবং TF Sharding এর মধ্যে পার্থক্য কি?
CTS Sharding এবং TF Sharding সম্পূর্ণ ভিন্ন টেস্ট প্ল্যান যা বিভিন্ন টেস্ট ইনফ্রাস্ট্রাকচার কোডবেস দ্বারা চালিত হয়। রান কমান্ড বিভিন্ন সংস্করণ জুড়ে একই, শার্ডিং ফলাফল ভিন্নভাবে আচরণ করে। CTS Sharding স্থিতিশীলভাবে ডিভাইসের অধীনে টেস্ট (DUTs)-কে নিম্নরূপ পরীক্ষার ক্ষেত্রে বরাদ্দ করে:
- কমান্ড: cts চালান
- অ্যান্ড্রয়েড 8.1 এবং নিম্ন সংস্করণের জন্য কনফিগারেশন: /tools/cts-tradefed/res/config/cts.xml
TF Sharding ডায়নামিকভাবে উপলভ্য DUT-কে নিম্নরূপ পরীক্ষার ক্ষেত্রে বরাদ্দ করে:
- কমান্ড: cts চালান
- Android 9 এর জন্য কনফিগারেশন: /platform/test/suite_harness/+/pie-cts-dev/tools/cts-tradefed/res/config/cts-suite.xml
একাধিক ABI সমর্থনকারী একটি ডিভাইস থেকে কি আশা করা যায়?
ডিভাইসটিকে প্রতিটি ABI মোডের জন্য সমস্ত CTS এবং CTS যাচাইকারী পরীক্ষায় উত্তীর্ণ হতে হবে যা এটি সমর্থন করার দাবি করে। অতএব, নির্দিষ্ট ABI-এর জন্য একটি অ্যাপ চালানো প্রয়োজন। একাধিক ABI-এর নির্দেশিকা নিম্নরূপ:
- CTS এবং CTS যাচাইকারীর জন্য, প্রতিটি আর্কিটেকচারের জন্য ARM এবং x86 রিলিজ রয়েছে। তাদের প্রত্যেকটি 32- বা 64-বিট মোডে সমর্থন করতে পারে।
- CTS পরীক্ষার জন্য, যদি একটি ডিভাইস ARM এবং x86 উভয়ই সমর্থন করে, তাহলে এটিকে যথাক্রমে ARM এবং x86 CTS উভয় পরীক্ষাই চালাতে হবে এবং পাস করতে হবে।
CDD 3.3.1 দেখুন। ABI-তে CDD প্রয়োজনীয়তার জন্য অ্যাপ্লিকেশন বাইনারি ইন্টারফেস ।
শুধুমাত্র প্রাথমিক ABI (উদাহরণস্বরূপ, 64 বিট) পরীক্ষা সম্পাদনের সময় কমাতে পরীক্ষা চালানো কি যথেষ্ট?
না। একটি Android অ্যাপ তার নিজস্ব 32-বিট বা 64-বিট রানটাইমে চলে। প্রকৃত মেশিন কোড, কোড পাথ এবং স্টেট 32 এবং 64 এর মধ্যে আলাদা। আপনি যদি একটি মোড এড়িয়ে যান, তাহলে আপনি ABI ডিভাইসের 50% কভার করছেন।
নট এক্সিকিউটেড হিসেবে এতগুলো টেস্ট কেস কেন রিপোর্ট করা হয়েছে?
নট এক্সিকিউটেড নম্বরের পরিবর্তে আপনার মডিউল ডন নম্বরটি পরীক্ষা করা উচিত।
পূর্ববর্তী সংস্করণগুলিতে, CTS মডিউলগুলি সম্পূর্ণ হওয়ার আগে খুব আক্রমণাত্মকভাবে সম্পন্ন মডিউল হিসাবে রিপোর্ট করা হয়েছিল। তাই, কিছু ডিভাইসে সমস্যা থাকলেও সমস্ত টেস্ট কেস সম্পূর্ণ না করে একটি মডিউল সম্পন্ন নম্বর রিপোর্ট করা হয়েছে। নতুন পরীক্ষার জোতা আরো রক্ষণশীল এবং একটি সমস্যা দেখা দিলে উচ্চ সংখ্যক নট এক্সিকিউটেড পরীক্ষার রিপোর্ট করে।
একটি মডিউল রন টু কমপ্লিশন রিপোর্ট করে যে মডিউলটি করা হয়নি সবচেয়ে সাম্প্রতিক আহ্বানে (done="false") রিপোর্টে নিম্নোক্ত সময়ে:
- একটি ডিভাইস সংযোগ সমস্যা দ্বারা মডিউলের জন্য একটি পরীক্ষা চালানো বাধাপ্রাপ্ত হয়েছে.
- মডিউলটির জন্য সমস্ত প্রত্যাশিত টেস্ট রান সঞ্চালিত হয়নি।
অতিরিক্ত ফিল্টারিং বিকল্পগুলির সাথে পুনরায় চেষ্টা করা হয়েছে (বিকল্প
-r/--retry
ব্যবহার করে), যেমন:- --ইনক্লুড-ফিল্টার
- --বাদ-ফিল্টার
- -t/--পরীক্ষা (পুনরায় চেষ্টা করার ক্ষেত্রে বিকল্পটি এখনও সমর্থিত নয়)
- --পুনরায় চেষ্টা-টাইপ ব্যর্থ হয়েছে
- --সাবপ্ল্যান
এই মডিউলগুলির জন্য মডিউল ডন (done="true") এর একটি স্ট্যাটাস পেতে, সাম্প্রতিক আহ্বানের জন্য নিম্নলিখিতগুলি পুনরায় চেষ্টা করুন:
run retry --retry <session_id> for Android 9 and later versions
run cts --retry <session_id> for Android 8.1 and previous versions
পূর্বে উল্লিখিত কোনো সমস্যা ছাড়াই কার্যকর করা একটি মডিউল (এমনকি 0টি অবশিষ্ট পরীক্ষা সহ) নতুন প্রতিবেদনে মডিউল সম্পন্ন হিসেবে চিহ্নিত করা হয়েছে।
ব্যতিক্রম
- linux/OS args এর সীমাবদ্ধতার কারণে CtsNNAPITestCases-এর একটি পরিচিত সমস্যা রয়েছে। সরাসরি
run cts -m CtsNNAPITestCases
মাধ্যমে মডিউলটি বিচ্ছিন্নভাবে পুনরায় চালানো যেতে পারে।
আমি কিভাবে কর্পোরেট ফায়ারওয়ালের পিছনে পরীক্ষার প্রস্তুতি ব্যর্থ হওয়া এড়াতে পারি?
সমস্ত স্বয়ংক্রিয় পরীক্ষা স্যুট রানটাইমের সময় CTS মিডিয়া ফাইল বা ব্যবসায়িক লজিক ফাইল ডাউনলোড করার চেষ্টা করে। অনেক কর্পোরেট পরিবেশে, একটি ফায়ারওয়াল এবং প্রক্সি সাধারণ, যা পরীক্ষার প্রস্তুতিকে ব্যর্থ করে তোলে। নিম্নলিখিত লাইনটি চালান বা এটিকে .profile এ যোগ করুন (উবুন্টুতে)।
export JAVA_TOOL_OPTIONS='-Djava.net.useSystemProxies=true'
সিকিউর এলিমেন্টের জন্য CTS-এর জন্য আমার কি সিম কার্ড দরকার?
পরীক্ষার জন্য একটি সিম কার্ডের প্রয়োজন কিনা তা বোঝার উপর নির্ভর করে যে বৈশিষ্ট্যটি পরীক্ষা ডিভাইসে সমর্থিত কিনা।
- যদি আপনার ডিভাইসের সুরক্ষিত উপাদানগুলি অ্যাক্সেস করার জন্য Android অ্যাপগুলিকে সমর্থন করার প্রয়োজন না হয় — হয় মোবাইল নেটওয়ার্ক অপারেটর (ক্যারিয়ার) দ্বারা বিতরণ করা UICC (যেমন, একটি সিম কার্ড) বা ডিভাইসে এমবেড করা — আপনি অন্তর্ভুক্ত না করার জন্য HIDL ম্যানিফেস্ট কনফিগার করতে পারেন
android.hardware.secure_element
HAL উপাদান। এই ক্ষেত্রে, android.se.omapi.SEService.getReaders() API একটি খালি তালিকা রিপোর্ট করে এবং CTS পরীক্ষা স্বয়ংক্রিয়ভাবে পাস করে এবং CTS-এর জন্য একটি পাস রিপোর্ট করে। - যদি আপনার ডিভাইসটিকে নিরাপদ উপাদানগুলি অ্যাক্সেস করার জন্য Android অ্যাপ্লিকেশানগুলিকে সমর্থন করার প্রয়োজন হয় - হয় মোবাইল নেটওয়ার্ক অপারেটর (ক্যারিয়ার) দ্বারা বিতরণ করা UICC (যেমন, একটি সিম কার্ড) বা ডিভাইসে এমবেড করা - আপনাকে নিরাপদ উপাদানটি সঠিকভাবে প্রয়োগ করতে হবে এবং এটি পরীক্ষা করতে হবে বাড়িতে সিকিউর এলিমেন্টের জন্য সিটিএস টেস্ট কিভাবে সিটিএস পরীক্ষা চালানোর জন্য প্রস্তুত করা যায় তার রূপরেখা দেয় যা নিশ্চিত করে যে android.se.omapi API প্যাকেজ অ্যান্ড্রয়েড 9 এ যোগ করা কার্যকরী। CTS পরীক্ষার কভারেজ ন্যূনতম হওয়ায় আমরা নিজে থেকেই অতিরিক্ত পরীক্ষা করার পরামর্শ দিই।
সিকিউর এলিমেন্টের জন্য CTS-এর সিম কার্ড কোথায় পাব?
আপনি আপনার পছন্দের সিম বিক্রেতার সাথে যোগাযোগ করতে পারেন।
কেন টোকেন শার্ডিং সহ CTS এক্সিকিউশনের সময় লক স্ক্রিনে কমলা সিম থাকে?
টেস্ট কেস শুরু হয় না কারণ সিম কার্ডটি লক করা আছে। টোকেন শার্ডিং সহ CTS কার্যকর করার আগে **সিম কার্ড লক সেটিংসে লক সিম কার্ডটি নিষ্ক্রিয় করুন।