শার্ডমেইনরেজাল্টফরওয়ার্ডার

public class ShardMainResultForwarder
extends ResultForwarder implements ILogSaverListener

java.lang.Object
com.android.tradefed.result.ResultForwarder
com.android.tradefed.invoker.ShardMainResultForwarder


একটি ResultForwarder যা শার্ডেড টেস্ট ইনভোকেশনগুলোর ফলাফল একত্রিত করে। সমস্ত শার্ডেড ইনভোকেশন সম্পন্ন হলেই এটি লিসেনারদের কাছে ইনভোকেশনটির সমাপ্তির রিপোর্ট করে।

এই ক্লাসটি থ্রেড সেফ নয়। আশা করা হয় যে, ক্লায়েন্টরা পরীক্ষার ফলাফল পাঠানোর সময় এই ক্লাসটিকে লক করবে, যাতে ইনভোকেশন কলব্যাকগুলো এলোমেলোভাবে কল হওয়া প্রতিরোধ করা যায়।

সারসংক্ষেপ

সরকারি নির্মাণকারী

ShardMainResultForwarder (List< ITestInvocationListener > listeners, int expectedShards)

একটি ShardMainResultForwarder তৈরি করুন।

জনসাধারণের পদ্ধতি

List< ITestInvocationListener > getListeners ()

শ্রোতাদের তালিকাটি নিন।

void invocationEnded (long elapsedTime)

রিপোর্ট করছে যে আহ্বানটি সফলভাবে অথবা কোনো ত্রুটির কারণে সমাপ্ত হয়েছে।

void invocationEnded (long elapsedTime, IInvocationContext context)

কোন শার্ডটি শেষ হয়েছে তা আলাদা করার জন্য আরও বিস্তারিত কলব্যাক।

void invocationFailed ( FailureDescription failure)

কোনো ত্রুটির কারণে আহ্বানটি অসম্পূর্ণ রয়েছে বলে জানানো হয়েছে।

void invocationFailed (Throwable cause)

কোনো ত্রুটির কারণে আহ্বানটি অসম্পূর্ণ রয়েছে বলে জানানো হয়েছে।

void invocationSkipped ( SkipReason reason)

একটি আহ্বান এড়িয়ে যাওয়া হিসাবে রিপোর্ট করা হয়েছে।

void invocationStarted ( IInvocationContext context)

টেস্ট আহ্বানের সূচনা রিপোর্ট করে।

void logAssociation (String dataName, LogFile logFile)

কিছু ক্ষেত্রে, লগ অবশ্যই টেস্ট কেসের সাথে দৃঢ়ভাবে যুক্ত থাকতে হবে, কিন্তু সরাসরি testLogSaved(String,LogDataType,InputStreamSource,LogFile) কলব্যাকে তা করার সুযোগ নেই।

void testLogForward (String dataName, LogDataType dataType, InputStreamSource dataStream)

প্রথমে লগটি সংরক্ষণ না করে শুধু টেস্টলগটি ফরোয়ার্ড করুন।

void testLogSaved (String dataName, LogDataType dataType, InputStreamSource dataStream, LogFile logFile)

টেস্ট লগ সংরক্ষণ করা হলে এটি কল করা হয়।

সরকারি নির্মাণকারী

শার্ডমেইনরেজাল্টফরওয়ার্ডার

public ShardMainResultForwarder (List<ITestInvocationListener> listeners, 
                int expectedShards)

একটি ShardMainResultForwarder তৈরি করুন।

প্যারামিটার
listeners List : সমস্ত শার্ড সম্পূর্ণ হলে ফলাফল পাঠানোর জন্য ITestInvocationListener এর তালিকা।

expectedShards int : শার্ডের সংখ্যা

জনসাধারণের পদ্ধতি

শ্রোতাদের পান

public List<ITestInvocationListener> getListeners ()

শ্রোতাদের তালিকাটি নিন।

ফেরত
List< ITestInvocationListener > ITestInvocationListener গুলোর তালিকা।

আহ্বান শেষ হয়েছে

public void invocationEnded (long elapsedTime)

রিপোর্ট করছে যে আহ্বানটি সফলভাবে অথবা কোনো ত্রুটির কারণে সমাপ্ত হয়েছে।

ট্রেডফেডারেশন ফ্রেমওয়ার্ক দ্বারা স্বয়ংক্রিয়ভাবে কল করা হবে।

প্যারামিটার
elapsedTime long : আহ্বানের অতিবাহিত সময় (মিলিসেকেন্ডে)

আহ্বান শেষ হয়েছে

public void invocationEnded (long elapsedTime, 
                IInvocationContext context)

কোন শার্ডটি শেষ হয়েছে তা আলাদা করার জন্য আরও বিস্তারিত কলব্যাক।

প্যারামিটার
elapsedTime long

context IInvocationContext

আহ্বান ব্যর্থ হয়েছে

public void invocationFailed (FailureDescription failure)

কোনো ত্রুটির কারণে আহ্বানটি অসম্পূর্ণ রয়েছে বলে জানানো হয়েছে।

ট্রেডফেডারেশন ফ্রেমওয়ার্ক দ্বারা স্বয়ংক্রিয়ভাবে কল করা হবে।

প্যারামিটার
failure FailureDescription : ব্যর্থতার কারণ বর্ণনা করে এমন FailureDescription

আহ্বান ব্যর্থ হয়েছে

public void invocationFailed (Throwable cause)

কোনো ত্রুটির কারণে আহ্বানটি অসম্পূর্ণ রয়েছে বলে জানানো হয়েছে।

ট্রেডফেডারেশন ফ্রেমওয়ার্ক দ্বারা স্বয়ংক্রিয়ভাবে কল করা হবে।

প্যারামিটার
cause Throwable : ব্যর্থতার Throwable কারণ

আহ্বান এড়িয়ে যাওয়া হয়েছে

public void invocationSkipped (SkipReason reason)

একটি আহ্বান এড়িয়ে যাওয়া হিসাবে রিপোর্ট করা হয়েছে।

প্যারামিটার
reason SkipReason

আহ্বান শুরু হয়েছে

public void invocationStarted (IInvocationContext context)

টেস্ট আহ্বানের সূচনা রিপোর্ট করে।

ট্রেডফেডারেশন ফ্রেমওয়ার্ক দ্বারা এটি স্বয়ংক্রিয়ভাবে কল করা হবে। একাধিক ডিভাইস থেকে রিপোর্টিং সমর্থন করার জন্য রিপোর্টারদের এই মেথডটি ওভাররাইড করতে হবে।

প্যারামিটার
context IInvocationContext : আহ্বান সম্পর্কিত তথ্য

লগঅ্যাসোসিয়েশন

public void logAssociation (String dataName, 
                LogFile logFile)

কিছু ক্ষেত্রে, লগ-কে টেস্ট কেসের সাথে দৃঢ়ভাবে যুক্ত করতে হয়, কিন্তু সরাসরি testLogSaved(String,LogDataType,InputStreamSource,LogFile) কলব্যাকে তা করার সুযোগ থাকে না। তাই, এই কলব্যাকটি সুস্পষ্টভাবে একটি দৃঢ় সংযোগ প্রদানের সুযোগ করে দেয়।

প্যারামিটার
dataName String : ডেটার নাম

logFile LogFile : পূর্বে লগ করা LogFile , যা টেস্ট কেসের সাথে যুক্ত থাকা উচিত।

টেস্টলগফরোয়ার্ড

public void testLogForward (String dataName, 
                LogDataType dataType, 
                InputStreamSource dataStream)

প্রথমে লগটি সংরক্ষণ না করে শুধু টেস্টলগটি ফরোয়ার্ড করুন।

প্যারামিটার
dataName String

dataType LogDataType

dataStream InputStreamSource

টেস্টলগ সংরক্ষিত

public void testLogSaved (String dataName, 
                LogDataType dataType, 
                InputStreamSource dataStream, 
                LogFile logFile)

টেস্ট লগ সংরক্ষণ করা হলে এটি কল করা হয়।

ITestInvocationListener.testLog(String,LogDataType,InputStreamSource) এর পরিবর্তে এটি ব্যবহার করা উচিত।

প্যারামিটার
dataName String : ডেটার একটি বর্ণনামূলক String নাম। যেমন "device_logcat"। উল্লেখ্য যে, প্রতিবার ব্যবহারের ক্ষেত্রে dataName অনন্য নাও হতে পারে। অর্থাৎ, বাস্তবায়নকারীদের অবশ্যই একই dataName দিয়ে একাধিক কল পরিচালনা করতে সক্ষম হতে হবে।

dataType LogDataType : ডেটার LogDataType

dataStream InputStreamSource : ডেটার InputStreamSource । বাস্তবায়নকারীদের ডেটা পড়া শুরু করার জন্য createInputStream কল করতে হবে এবং কাজ শেষ হলে প্রাপ্ত InputStream-টি বন্ধ করা নিশ্চিত করতে হবে।

logFile LogFile : সংরক্ষিত ফাইলের মেটা ডেটা ধারণকারী LogFile