আপনার রচনা লেআউট পরীক্ষা করুন

আপনার কম্পোজ কোডের আচরণ সঠিক কিনা তা যাচাই করতে আপনার অ্যাপের UI পরীক্ষা করুন। এটি আপনাকে আগেভাগেই ত্রুটিগুলি ধরতে এবং আপনার অ্যাপের মান উন্নত করতে দেয়।

কম্পোজ উপাদানগুলি খুঁজে বের করতে, তাদের বৈশিষ্ট্যগুলি যাচাই করতে এবং ব্যবহারকারীর ক্রিয়া সম্পাদন করতে পরীক্ষার APIগুলির একটি সেট সরবরাহ করে। APIগুলিতে সময় ম্যানিপুলেশনের মতো উন্নত বৈশিষ্ট্যও অন্তর্ভুক্ত থাকে। আপনার অ্যাপের আচরণ যাচাই করার জন্য শক্তিশালী পরীক্ষা তৈরি করতে এই APIগুলি ব্যবহার করুন।

প্রকার

যদি আপনি কম্পোজের পরিবর্তে ভিউ নিয়ে কাজ করেন, তাহলে "অ্যান্ড্রয়েডে সাধারণ টেস্ট অ্যাপস" বিভাগটি দেখুন।

বিশেষ করে, শুরু করার জন্য একটি ভালো জায়গা হল Automate UI পরীক্ষা নির্দেশিকা। এটি বর্ণনা করে যে কীভাবে আপনি ডিভাইসে চলমান পরীক্ষাগুলিকে স্বয়ংক্রিয় করতে পারেন, ভিউ ব্যবহার করার সময়ও।

মূল ধারণা

আপনার কম্পোজ কোড পরীক্ষা করার জন্য কিছু মূল ধারণা নিচে দেওয়া হল:

  • শব্দার্থবিজ্ঞান : শব্দার্থবিজ্ঞান আপনার UI-কে অর্থ প্রদান করে, পরীক্ষাগুলিকে নির্দিষ্ট উপাদানগুলির সাথে ইন্টারঅ্যাক্ট করার অনুমতি দেয়।
  • টেস্টিং এপিআই : টেস্টিং এপিআই আপনাকে উপাদানগুলি খুঁজে পেতে, তাদের বৈশিষ্ট্যগুলি যাচাই করতে এবং ব্যবহারকারীর ক্রিয়া সম্পাদন করতে দেয়।
  • সিঙ্ক্রোনাইজেশন : সিঙ্ক্রোনাইজেশন যাচাই করে যে পরীক্ষাগুলি ক্রিয়া সম্পাদন বা দাবি করার আগে UI নিষ্ক্রিয় থাকা পর্যন্ত অপেক্ষা করে।
  • আন্তঃকার্যক্ষমতা : আন্তঃকার্যক্ষমতা পরীক্ষাগুলিকে একই অ্যাপে কম্পোজ এবং ভিউ-ভিত্তিক উভয় উপাদানের সাথে কাজ করতে সক্ষম করে।

চিটশিট পরীক্ষা করা হচ্ছে

কম্পোজে পরীক্ষা সম্পর্কে আপনার যে সমস্ত গুরুত্বপূর্ণ বিষয়গুলি শেখা উচিত তার একটি সারসংক্ষেপের জন্য পরীক্ষার চিটশিটটি দেখুন।

সেটআপ

আপনার অ্যাপ সেট আপ করুন যাতে আপনি কোড কম্পোজ পরীক্ষা করতে পারেন।

প্রথমে, আপনার UI পরীক্ষা ধারণকারী মডিউলের build.gradle ফাইলে নিম্নলিখিত নির্ভরতাগুলি যোগ করুন:

// Test rules and transitive dependencies:
androidTestImplementation("androidx.compose.ui:ui-test-junit4:$compose_version")
// Needed for createComposeRule(), but not for createAndroidComposeRule<YourActivity>():
debugImplementation("androidx.compose.ui:ui-test-manifest:$compose_version")

এই মডিউলটিতে একটি ComposeTestRule এবং Android এর জন্য AndroidComposeTestRule নামক একটি বাস্তবায়ন অন্তর্ভুক্ত রয়েছে। এই নিয়মের মাধ্যমে আপনি Compose কন্টেন্ট সেট করতে পারেন অথবা কার্যকলাপ অ্যাক্সেস করতে পারেন। আপনি ফ্যাক্টরি ফাংশন ব্যবহার করে নিয়মগুলি তৈরি করতে পারেন, হয় createComposeRule অথবা, যদি আপনার কোনও কার্যকলাপে অ্যাক্সেসের প্রয়োজন হয়, createAndroidComposeRule । Compose এর জন্য একটি সাধারণ UI পরীক্ষা এইরকম দেখায়:

// file: app/src/androidTest/java/com/package/MyComposeTest.kt

class MyComposeTest {

    @get:Rule val composeTestRule = createComposeRule()
    // use createAndroidComposeRule<YourActivity>() if you need access to
    // an activity

    @Test
    fun myTest() {
        // Start the app
        composeTestRule.setContent {
            MyAppTheme {
                MainScreen(uiState = fakeUiState, /*...*/)
            }
        }

        composeTestRule.onNodeWithText("Continue").performClick()

        composeTestRule.onNodeWithText("Welcome").assertIsDisplayed()
    }
}

অতিরিক্ত সম্পদ

  • অ্যান্ড্রয়েডে অ্যাপ পরীক্ষা করুন : মূল অ্যান্ড্রয়েড টেস্টিং ল্যান্ডিং পৃষ্ঠাটি পরীক্ষার মৌলিক বিষয় এবং কৌশলগুলির একটি বিস্তৃত দৃষ্টিভঙ্গি প্রদান করে।
  • পরীক্ষার মৌলিক বিষয় : একটি অ্যান্ড্রয়েড অ্যাপ পরীক্ষা করার পিছনে মূল ধারণাগুলি সম্পর্কে আরও জানুন।
  • স্থানীয় পরীক্ষা : আপনি আপনার নিজস্ব ওয়ার্কস্টেশনে স্থানীয়ভাবে কিছু পরীক্ষা চালাতে পারেন।
  • যন্ত্রচালিত পরীক্ষা : যন্ত্রচালিত পরীক্ষা চালানোও ভালো অভ্যাস। অর্থাৎ, এমন পরীক্ষা যা সরাসরি ডিভাইসে চলে।
  • ক্রমাগত ইন্টিগ্রেশন : ক্রমাগত ইন্টিগ্রেশন আপনাকে আপনার পরীক্ষাগুলিকে আপনার স্থাপনার পাইপলাইনে একীভূত করতে দেয়।
  • বিভিন্ন স্ক্রিন মাপ পরীক্ষা করুন : ব্যবহারকারীদের জন্য অনেক ডিভাইস উপলব্ধ থাকায়, আপনার বিভিন্ন স্ক্রিন মাপের জন্য পরীক্ষা করা উচিত।
  • এসপ্রেসো : ভিউ-ভিত্তিক UI-এর জন্য তৈরি হলেও, এসপ্রেসো জ্ঞান কম্পোজ পরীক্ষার কিছু দিকের জন্য সহায়ক হতে পারে।

কোডল্যাব

আরও জানতে, Jetpack Compose Testing codelab ব্যবহার করে দেখুন।

নমুনা

{% অক্ষরে অক্ষরে %} {% এন্ডভারব্যাটিম %} {% অক্ষরে অক্ষরে %} {% এন্ডভারব্যাটিম %}