একটি ফলাফল রিপোর্টার তৈরি করুন

এই পৃষ্ঠাটি কীভাবে একটি নতুন ফলাফল রিপোর্টারকে বাস্তবায়ন করতে হয় এবং একটি পরীক্ষার জন্য এটি কনফিগার করতে হয় তার মূল বিষয়গুলি বর্ণনা করে৷

মূল ইন্টারফেস

Tradefed-এ একটি নতুন ফলাফল প্রতিবেদককে সংজ্ঞায়িত করার জন্য, একটি ক্লাসকে ITestInvocationListener ইন্টারফেস প্রয়োগ করতে হবে যা আহ্বানের বিভিন্ন ধাপ গ্রহণ এবং পরিচালনা করতে দেয়:

  • invocationStarted
  • invocationEnded
  • invocationFailed

ফলাফল রিপোর্টাররা প্রতিটি পরীক্ষার রানের বিভিন্ন ধাপও পরিচালনা করে:

  • testRunStarted
  • testStarted
  • testFailed বা testIgnored
  • testEnded
  • testRunFailed
  • testRunEnded

এই সমস্ত ইভেন্টের পরিপ্রেক্ষিতে, দুটি প্রধান ধরণের ফলাফল রিপোর্টার রয়েছে, যেগুলি:

  • শুধুমাত্র চূড়ান্ত সম্পূর্ণ ফলাফল রিপোর্ট সম্পর্কে যত্ন.
  • আংশিক ফলাফলের বিষয়ে ব্যবস্থা নিন।

ফলাফল রিপোর্টার যে চূড়ান্ত সম্পূর্ণ ফলাফল রিপোর্ট

ফলাফল প্রাপ্ত একটি বহিরাগত পরিষেবার সাথে ইন্টারঅ্যাক্ট করার ক্ষেত্রে এই প্রকারটি সবচেয়ে সাধারণ ঘটনা। প্রতিবেদক কেবল ফলাফলগুলি গ্রহণ করে এবং জমা করে এবং তারপরে সেগুলিকে শেষ বিন্দুতে invocationEnded পাঠায়।

আমরা সুপারিশ করি যে সেই রিপোর্টাররা বেস ইন্টারফেসের পরিবর্তে CollectingTestListener প্রসারিত করুন যাতে invocationEnded না হওয়া পর্যন্ত ফলাফলগুলি সংরক্ষণ এবং সংরক্ষণ করা পুনরায় প্রয়োগ করা এড়ানো যায়।

ফলাফল রিপোর্টার যে আংশিক ফলাফল রিপোর্ট

এই প্রকারটি সাধারণত ফলাফলের স্ট্রিমিং পদ্ধতির জন্য ব্যবহৃত হয়, যখন ফলাফলগুলি প্রাপ্ত হয় এবং সাথে সাথে অন্য কিছু জায়গায় ঠেলে দেওয়া হয়। উদাহরণস্বরূপ, কনসোলে ফলাফল লগ করা একজন রিপোর্টার এই ধরনের হবে।

ইভেন্টগুলিতে কোন ধরনের হ্যান্ডলিং প্রয়োজন তা এই প্রকারটি নির্দিষ্ট, তাই বেস ইন্টারফেস প্রয়োগ করা সাধারণত প্রস্তাবিত উপায়।

XML কনফিগারেশন

অবজেক্ট ট্যাগ হল result_reporter । যেমন:

<result_reporter class="com.android.tradefed.result.ConsoleResultReporter">
    <option name="suppress-passed-tests" value="true"/>
</result_reporter>