শার্ডলিসেনার

public class ShardListener
extends CollectingTestListener implements ISupportGranularResults

java.lang.Object
com.android.tradefed.result.CollectingTestListener
com.android.tradefed.invoker.ShardListener


একটি ITestInvocationListener যা একটি ইনভোকেশন শার্ড (অর্থাৎ, একাধিক রিসোর্সে সমান্তরালভাবে চালানোর জন্য বিভক্ত একটি ইনভোকেশন) থেকে ফলাফল সংগ্রহ করে এবং সেগুলোকে অন্য একটি লিসেনারের কাছে পাঠিয়ে দেয়।

সারসংক্ষেপ

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

ShardListener ( ITestInvocationListener main)

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

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

List< ITestInvocationListener > getUnderlyingResultReporter ()
void invocationEnded (long elapsedTime)

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

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 setSupportGranularResults (boolean enableGranularResults)
boolean supportGranularResults ()

রিপোর্টারটি সূক্ষ্ম ফলাফল সমর্থন করলে True, অন্যথায় False রিটার্ন করে।

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

টেস্ট আহ্বানের সাথে সম্পর্কিত লগ বা ডিবাগ ডেটা প্রদান করে।

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

void testModuleEnded ()

একটি মডিউল চালনার সমাপ্তি ঘোষণা করে।

void testModuleStarted ( IInvocationContext moduleContext)

একটি মডিউল চালু হওয়ার প্রতিবেদন দেয়।

void testRunEnded (long elapsedTime, HashMap<String, MetricMeasurement.Metric> runMetrics)

পরীক্ষামূলক কার্যক্রমের সমাপ্তির প্রতিবেদন।

void testRunFailed ( FailureDescription failure)

FailureDescription দ্বারা বর্ণিত একটি ত্রুটির কারণে রিপোর্ট টেস্ট রান সম্পন্ন হতে পারেনি।

void testRunFailed (String failureMessage)

একটি মারাত্মক ত্রুটির কারণে রিপোর্ট টেস্ট রান সম্পন্ন হতে পারেনি।

void testRunStarted (String name, int numTests, int attemptNumber, long startTime)

একটি পরীক্ষামূলক চালনা শুরুর ঘোষণা দেয়।

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

শার্ডলিসেনার

public ShardListener (ITestInvocationListener main)

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

প্যারামিটার
main ITestInvocationListener : এটি সেই ITestInvocationListener যেখানে ফলাফল পাঠানো হবে। অন্যান্য ShardListener এর সাথে সংঘর্ষ এড়ানোর জন্য, ফলাফল পাঠানোর সময় এই অবজেক্টটি main এ সিনক্রোনাইজ করবে। এবং ইনভোকেশন শার্ডটি সম্পূর্ণ হলেই কেবল ফলাফল পাঠানো হবে।

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

getUnderlyingResultReporter

public List<ITestInvocationListener> getUnderlyingResultReporter ()

ফেরত
List< ITestInvocationListener >

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

public void invocationEnded (long elapsedTime)

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

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

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

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

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 , যা টেস্ট কেসের সাথে যুক্ত থাকা উচিত।

setSupportGranularResults

public void setSupportGranularResults (boolean enableGranularResults)

প্যারামিটার
enableGranularResults boolean

দানাদার ফলাফল সমর্থন করুন

public boolean supportGranularResults ()

রিপোর্টারটি সূক্ষ্ম ফলাফল সমর্থন করলে True, অন্যথায় False রিটার্ন করে।

ফেরত
boolean

টেস্টলগ

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

টেস্ট আহ্বানের সাথে সম্পর্কিত লগ বা ডিবাগ ডেটা প্রদান করে।

ERROR(ITestInvocationListener.invocationFailed(Throwable)/ITestInvocationListener#invocationFailed(java.lang.Throwable) ITestInvocationListener.invocationFailed(Throwable)) অথবা ERROR(/ITestInvocationListener#invocationEnded(long)) এর আগে অবশ্যই কল করতে হবে।

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

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

dataType LogDataType : ডেটার LogDataType

dataStream InputStreamSource : ডেটার InputStreamSource । বাস্তবায়নকারীদের ডেটা পড়া শুরু করার জন্য createInputStream কল করতে হবে এবং কাজ শেষ হলে প্রাপ্ত InputStream-টি বন্ধ করা নিশ্চিত করতে হবে। কলারদের নিশ্চিত করতে হবে যে testLog মেথডটি সম্পূর্ণ না হওয়া পর্যন্ত ডেটার উৎসটি উপস্থিত এবং অ্যাক্সেসযোগ্য থাকে।

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

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

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

dataType LogDataType

dataStream InputStreamSource

logFile LogFile

টেস্টমডিউল শেষ হয়েছে

public void testModuleEnded ()

একটি মডিউল চালনার সমাপ্তি ঘোষণা করে।

টেস্টমডিউলশুরু হয়েছে

public void testModuleStarted (IInvocationContext moduleContext)

একটি মডিউলের চলমান অবস্থা রিপোর্ট করে। এই কলব্যাকটি testModuleEnded() এর সাথে যুক্ত এবং সিকোয়েন্সে এটি ঐচ্ছিক। এটি শুধুমাত্র সেইসব রানের সময় ব্যবহৃত হয় যেগুলো মডিউল ব্যবহার করে: স্যুট ভিত্তিক রানার।

প্যারামিটার
moduleContext IInvocationContext : মডিউলটির IInvocationContext

পরীক্ষা শেষ হয়েছে

public void testRunEnded (long elapsedTime, 
                HashMap<String, MetricMeasurement.Metric> runMetrics)

টেস্ট রান শেষ হওয়ার রিপোর্ট। সংশোধন: আমরা ভিন্ন টাইপের দুটি Map<> ইন্টারফেস ব্যবহার করতে পারি না, তাই এখানে HashMap ব্যবহার করতে হবে।

প্যারামিটার
elapsedTime long : ডিভাইস দ্বারা রিপোর্ট করা অতিবাহিত সময়, মিলিসেকেন্ডে

runMetrics HashMap : Metric ব্যবহার করে একটি পরীক্ষা চালানোর শেষে রিপোর্ট করা কী-ভ্যালু পেয়ারসমূহ।

পরীক্ষা ব্যর্থ হয়েছে

public void testRunFailed (FailureDescription failure)

FailureDescription দ্বারা বর্ণিত একটি ত্রুটির কারণে রিপোর্ট টেস্ট রান সম্পন্ন হতে পারেনি।

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

পরীক্ষা ব্যর্থ হয়েছে

public void testRunFailed (String failureMessage)

একটি মারাত্মক ত্রুটির কারণে রিপোর্ট টেস্ট রান সম্পন্ন হতে পারেনি।

প্যারামিটার
failureMessage String : রান ব্যর্থ হওয়ার কারণ বর্ণনাকারী String

পরীক্ষা শুরু হয়েছে

public void testRunStarted (String name, 
                int numTests, 
                int attemptNumber, 
                long startTime)

একটি পরীক্ষামূলক চালনা শুরুর ঘোষণা দেয়।

প্যারামিটার
name String : টেস্ট রানের নাম

numTests int : টেস্ট রানে মোট পরীক্ষার সংখ্যা

attemptNumber int : ক্রমিক সংখ্যা, যা একই runName-এর একাধিকবার চালিত হওয়া বিভিন্ন প্রচেষ্টাকে শনাক্ত করে। attemptNumber-টি ০-ভিত্তিক এবং প্রতিবার নতুন করে রান হওয়ার সাথে সাথে এর মান বাড়া উচিত। যেমন, একটি টেস্টকে যদি ৩ বার সুনির্দিষ্টভাবে পুনরায় চালানো হয়, তাহলে একই runName-এর অধীনে মোট ৪টি রান হবে এবং attemptNumber-এর মান ০ থেকে ৩-এর মধ্যে হবে।

startTime long : রান শুরু হওয়ার সময়, যা System.currentTimeMillis() এর মাধ্যমে পরিমাপ করা হয়।