পরীক্ষার রানার হল আমন্ত্রণ প্রবাহের কার্যকরী ইউনিট। এখানে আসলে পরীক্ষা চালানো হয়।
ইন্টারফেস
টেস্ট রানারদের IRemoteTest ইন্টারফেসের মাধ্যমে সংজ্ঞায়িত করা হয়, যা বাস্তবায়নের জন্য একটি সহজ run
পদ্ধতি প্রদান করে যা পরীক্ষা চালানোর সময় বলা হবে।
এটি একটি পরীক্ষা চালানোর সহজতম সংজ্ঞা ঘটতে দেয়। কিন্তু অনুশীলনে, পরীক্ষা লেখকদের তাদের পরীক্ষা সঠিকভাবে লিখতে, সাধারণত নির্মাণ এবং ডিভাইস তথ্যের জন্য আরও তথ্যের প্রয়োজন হবে। এখানে নিচের ইন্টারফেসগুলো কাজে আসে।
মৌলিক
এই দুটি ইন্টারফেস আজ সবচেয়ে ব্যাপকভাবে ব্যবহৃত হয়, কারণ তারা বেশিরভাগ পরীক্ষার মৌলিক চাহিদাগুলিকে উপস্থাপন করে।
- IBuildReceiver পরীক্ষাটিকে বিল্ড প্রোভাইডার ধাপে তৈরি করা
IBuildInfo
অবজেক্ট পেতে দেয় যাতে পরীক্ষা সেটআপ সম্পর্কিত সমস্ত তথ্য এবং নিদর্শন থাকে। - IDeviceTest টিএফকে
ITestDevice
অবজেক্ট গ্রহণ করতে দেয় যা পরীক্ষার অধীনে ডিভাইসটিকে উপস্থাপন করে এবং এটির সাথে ইন্টারঅ্যাক্ট করার জন্য একটি API প্রদান করে।
উন্নত
অতিরিক্ত ইন্টারফেস রয়েছে যা পরীক্ষার জোতা এবং পরীক্ষার রানার মধ্যে আরও জটিল মিথস্ক্রিয়া করার অনুমতি দেয়:
- ITestFilterReceiver , যা পরীক্ষাকে শুধুমাত্র নির্দিষ্ট পরীক্ষা চালানোর জন্য ফিল্টারের একটি সেট পেতে দেয়। এটি পরীক্ষার একটি উপসেট চালানোর জন্য দরকারী।
- ITestCollector , যা একজন পরীক্ষার্থীকে প্রকৃতপক্ষে পরীক্ষা চালানোর পরিবর্তে শুধুমাত্র ড্রাই-রান করতে দেয়। এটি সমস্ত পরীক্ষার ক্ষেত্রে তালিকা সংগ্রহ করতে দরকারী।
বর্তমান টেস্ট রানার
বিভিন্ন ধরনের টেস্ট রানার ইতিমধ্যেই বিদ্যমান, কিছু বড় ধরনের পরীক্ষার জন্য:
- AndroidJUnitTest / InstrumentationTest (ডিভাইসের পাশে AJUR এর সাথে যুক্ত)
- googletest লাইব্রেরির সাথে GTest (ডিভাইস এবং হোস্ট সাইড)
- হোস্ট-চালিত পরীক্ষা (জাভা পরীক্ষা যা হোস্টে কার্যকর করে এবং সেখান থেকে ডিভাইসটিকে কল করে)
- বিশুদ্ধ জাভা ইউনিট পরীক্ষা (আমাদের রানার উভয়ই করে)
- পাইথন পরীক্ষা
- বেঞ্চমার্ক লাইব্রেরির সাথে গুগল বেঞ্চমার্ক পরীক্ষা করে
উপরোক্ত ছাড়াও প্রচুর সংখ্যক কাস্টম টেস্ট রানার বিদ্যমান; তারা কিছু কার্যকরী পরীক্ষার জন্য বিশেষ উদ্দেশ্যে পরিবেশন করে, উদাহরণস্বরূপ বুট টেস্ট।
একটি নতুন পরীক্ষা রানার লিখুন
নতুন পরীক্ষার রানার লেখার আরও নির্দেশিকা লেখার পরীক্ষা বিভাগে পাওয়া যায়।
,পরীক্ষার রানার হল আমন্ত্রণ প্রবাহের কার্যকরী ইউনিট। এখানে আসলে পরীক্ষা চালানো হয়।
ইন্টারফেস
টেস্ট রানারদের IRemoteTest ইন্টারফেসের মাধ্যমে সংজ্ঞায়িত করা হয়, যা বাস্তবায়নের জন্য একটি সহজ run
পদ্ধতি প্রদান করে যা পরীক্ষা চালানোর সময় বলা হবে।
এটি একটি পরীক্ষা চালানোর সহজতম সংজ্ঞা ঘটতে দেয়। কিন্তু অনুশীলনে, পরীক্ষা লেখকদের তাদের পরীক্ষা সঠিকভাবে লিখতে, সাধারণত নির্মাণ এবং ডিভাইস তথ্যের জন্য আরও তথ্যের প্রয়োজন হবে। এখানে নিচের ইন্টারফেসগুলো কাজে আসে।
মৌলিক
এই দুটি ইন্টারফেস আজ সবচেয়ে ব্যাপকভাবে ব্যবহৃত হয়, কারণ তারা বেশিরভাগ পরীক্ষার মৌলিক চাহিদাগুলিকে উপস্থাপন করে।
- IBuildReceiver পরীক্ষাটিকে বিল্ড প্রোভাইডার ধাপে তৈরি করা
IBuildInfo
অবজেক্ট পেতে দেয় যাতে পরীক্ষা সেটআপ সম্পর্কিত সমস্ত তথ্য এবং নিদর্শন থাকে। - IDeviceTest টিএফকে
ITestDevice
অবজেক্ট গ্রহণ করতে দেয় যা পরীক্ষার অধীনে ডিভাইসটিকে উপস্থাপন করে এবং এটির সাথে ইন্টারঅ্যাক্ট করার জন্য একটি API প্রদান করে।
উন্নত
অতিরিক্ত ইন্টারফেস রয়েছে যা পরীক্ষার জোতা এবং পরীক্ষার রানার মধ্যে আরও জটিল মিথস্ক্রিয়া করার অনুমতি দেয়:
- ITestFilterReceiver , যা পরীক্ষাকে শুধুমাত্র নির্দিষ্ট পরীক্ষা চালানোর জন্য ফিল্টারের একটি সেট পেতে দেয়। এটি পরীক্ষার একটি উপসেট চালানোর জন্য দরকারী।
- ITestCollector , যা একজন পরীক্ষার্থীকে প্রকৃতপক্ষে পরীক্ষা চালানোর পরিবর্তে শুধুমাত্র ড্রাই-রান করতে দেয়। এটি সমস্ত পরীক্ষার ক্ষেত্রে তালিকা সংগ্রহ করতে দরকারী।
বর্তমান টেস্ট রানার
বিভিন্ন ধরনের টেস্ট রানার ইতিমধ্যেই বিদ্যমান, কিছু বড় ধরনের পরীক্ষার জন্য:
- AndroidJUnitTest / InstrumentationTest (ডিভাইসের পাশে AJUR এর সাথে যুক্ত)
- googletest লাইব্রেরির সাথে GTest (ডিভাইস এবং হোস্ট সাইড)
- হোস্ট-চালিত পরীক্ষা (জাভা পরীক্ষা যা হোস্টে কার্যকর করে এবং সেখান থেকে ডিভাইসটিকে কল করে)
- বিশুদ্ধ জাভা ইউনিট পরীক্ষা (আমাদের রানার উভয়ই করে)
- পাইথন পরীক্ষা
- বেঞ্চমার্ক লাইব্রেরির সাথে গুগল বেঞ্চমার্ক পরীক্ষা করে
উপরোক্ত ছাড়াও প্রচুর সংখ্যক কাস্টম টেস্ট রানার বিদ্যমান; তারা কিছু কার্যকরী পরীক্ষার জন্য বিশেষ উদ্দেশ্যে পরিবেশন করে, উদাহরণস্বরূপ বুট টেস্ট।
একটি নতুন পরীক্ষা রানার লিখুন
নতুন পরীক্ষার রানার লেখার আরও নির্দেশিকা লেখার পরীক্ষা বিভাগে পাওয়া যায়।