স্যুট আবার চেষ্টা করা ব্যবহার করুন

সুইটে একাধিক টেস্ট মডিউল থাকে এবং এটি বেশ বড় টেস্ট কর্পাস সাইজ হতে পারে। যেমন, Android কম্প্যাটিবিলিটি টেস্ট স্যুট (CTS) এর মধ্যে শত শত মডিউল এবং শত শত হাজার টেস্ট কেস অন্তর্ভুক্ত।

খারাপ আইসোলেশন বা ডিভাইস খারাপ অবস্থায় চলে যাওয়ার কারণে প্রচুর পরিমাণে টেস্ট ব্যর্থ হতে পারে।

স্যুইট আবার চেষ্টা করার ফিচারটি সেইসব ক্ষেত্রে সমাধান করার জন্য তৈরি করা হয়েছে: এটি আপনাকে ফ্ল্যাকিনেস এবং খারাপ আইসোলেশন বাদ দেওয়ার জন্য সম্পূর্ণ স্যুইটের পরিবর্তে শুধুমাত্র ব্যর্থ হওয়াগুলি আবার চেষ্টা করতে দেয়। কোনও পরীক্ষা বারবার ব্যর্থ হলে, আবার চেষ্টা করেও ব্যর্থ হয় এবং আপনি আরও শক্তিশালী সিগন্যাল পান যে সত্যিই কোনও সমস্যা আছে।

স্যুট আবার চেষ্টা করার সুবিধা প্রয়োগ করুন

ফলাফল আবার চেষ্টা করার মধ্যে আগের ফলাফল পড়া এবং আগের ইনভোকেশন আবার চালানো অন্তর্ভুক্ত।

আবার চেষ্টা করার জন্য মূল ইন্টারফেস হল ITestSuiteResultLoader, যা আপনাকে আগের ফলাফল এবং আগের কমান্ড লাইন লোড করতে দেয়।

RetryRescheduler তারপর এই তথ্য ব্যবহার করে আগের কমান্ড আবার তৈরি করে এবং কিছু ফিল্টার পূরণ করে যাতে শুধুমাত্র আগের ব্যর্থ বা না চালানো টেস্ট আবার রান করা যায়।

স্যুট আবার চেষ্টা করার উদাহরণ: CTS

CTS-এ আবার চেষ্টা করার কনফিগারেশন হল:

<configuration description="Runs a retry of a previous CTS session.">
    <object type="previous_loader" class="com.android.compatibility.common.tradefed.result.suite.PreviousResultLoader" />
    <test class="com.android.tradefed.testtype.suite.retry.RetryRescheduler" />

    <logger class="com.android.tradefed.log.FileLogger">
        <option name="log-level-display" value="WARN" />
    </logger>
</configuration>

এটি বেশিরভাগ স্যুটের ক্ষেত্রে প্রযোজ্য যা এটিকে প্রসারিত করে, যেমন VTS।

এটি এগুলির মাধ্যমে আহ্বান করা হবে:

cts-tradefed run retry --retry <session>

CTS কনসোলে আগের ফলাফল তালিকাভুক্ত করে সেশনটি খুঁজে পাওয়া যাবে:

cts-tf > l r
Session  Pass  Fail  Modules Complete  Result Directory     Test Plan  Device serial(s)  Build ID   Product
0        2092  30    148 of 999        2018.10.29_14.12.57  cts        [serial]          P          Pixel

আসল কমান্ডটি আবার লোড করা হবে এবং অতিরিক্ত ফিল্টার সহ আবার চালানো হবে। এর অর্থ হল, আপনার আসল কমান্ডে কিছু বিকল্প থাকলে, সেগুলিও আবার চেষ্টা করার অংশ।

যেমন:

cts-tradefed run cts-dev -m CtsGestureTestCases

উপরের রিট্রাই সবসময় CtsGestureTestCases-এর সাথে যুক্ত থাকে কারণ আমরা এমন একটি কমান্ড রিট্রাই করছি যার মধ্যে শুধুমাত্র এটিই রয়েছে।

CTS-স্টাইল স্যুটের জন্য আবার চেষ্টা করার সুবিধা কনফিগার করা

আবার চেষ্টা করার সুবিধা কাজ করার জন্য, আগের ফলাফলকে proto ফর্ম্যাটে এক্সপোর্ট করতে হবে। নিম্নলিখিত বিষয়গুলি যোগ করতে হবে:

<result_reporter class="com.android.compatibility.common.tradefed.result.suite.CompatibilityProtoResultReporter" />

এটি মূল কমান্ডের XML কনফিগারেশনে যোগ করতে হবে এবং এর ফলে ফলাফল ফোল্ডারে একটি test-record.pb ফাইল তৈরি হবে।

তারপরে, CTS আবার চেষ্টা করার জন্য test-record.pb এবং আগে থেকে থাকা test_result.xml-এর ডেটা একত্রিত করে লোড করে।