এই উত্তরটি এমন লোকদের জন্য যারা সবেমাত্র অ্যান্ড্রয়েড পরীক্ষা দিয়ে শুরু করছেন। টেস্টিং কীভাবে কাজ করে তা দেখতে আপনাকে দুটি সহজ উদাহরণ প্রদান করব। আপনি যদি পরবর্তী 10 মিনিটের জন্য অনুসরণ করেন তবে আপনার নিজের অ্যাপ্লিকেশনে আপনার পরীক্ষাগুলি যুক্ত করা শুরু করার জন্য আপনাকে প্রস্তুত করা হবে। আমি মনে করি আপনি আশ্চর্য হবেন যে এটি কত সহজ easy আমি অবশ্যই ছিল।
অ্যান্ড্রয়েড টেস্টিংয়ের পরিচয়
দুটি ভিন্ন ধরণের পরীক্ষা আছে যা আপনি করবেন।
- স্থানীয় ইউনিট পরীক্ষা। এগুলি স্থানীয়ভাবে JVM (জাভা ভার্চুয়াল মেশিন) এ চালিত হয়। যেহেতু তারা স্থানীয়, তারা দ্রুত। আপনি এগুলি আপনার কোডের সেই অংশগুলি পরীক্ষা করতে ব্যবহার করতে পারেন যা কেবল জাভা প্রয়োজন এবং অ্যান্ড্রয়েড এপিআইগুলি নয়। (কখনও কখনও আপনি স্থানীয়ভাবে আরও জিনিস পরীক্ষার জন্য একটি নকল এপিআই আইটেম তৈরি করতে পারেন This এটি একটি মশকাহ বলে । একটি উপহাস
Context
উদাহরণ))
- যন্ত্র পরীক্ষা। এই পরীক্ষাগুলি একটি আসল ডিভাইসে বা এমুলেটরটিতে চালিত হয়। এটি তাদের স্থানীয় পরীক্ষার চেয়ে ধীর করে তোলে। তবে এগুলি আরও নমনীয় কারণ আপনার কাছে সম্পূর্ণ অ্যান্ড্রয়েড এপিআই উপলব্ধ।
একটি নতুন প্রকল্প তৈরি করুন এবং আপনি নিম্নলিখিত ডিফল্ট ফোল্ডারগুলি দেখতে পাবেন।
সবকিছু ইতিমধ্যে রয়েছে এবং আপনি আপনার পরীক্ষা তৈরির জন্য অপেক্ষা করছেন। ইতিমধ্যে এটি সব সেট আপ!
কিভাবে স্থানীয় ইউনিট পরীক্ষা তৈরি করতে হয়
ExampleUnitTest
উপরের চিত্রটিতে প্রদর্শিত ফাইলটি খুলুন । এটি দেখতে কিছু দেখতে হবে:
public class ExampleUnitTest {
@Test
public void addition_isCorrect() throws Exception {
assertEquals(4, 2 + 2);
}
}
সমস্ত পরীক্ষা চালাতে ডাবল সবুজ তীর টিপুন বা কেবল একটি চালানোর জন্য একক সবুজ তীর টিপুন। (এক্ষেত্রে একটি মাত্র পরীক্ষা রয়েছে তাই তারা দু'জনই একই কাজ করে))
এটা পাস করা উচিত (যতদিন 2 + 2
এখনও 4
যখন আপনি এই উত্তর পড়ছেন)। অভিনন্দন, আপনি কেবল আপনার প্রথম পরীক্ষাটি চালিয়েছেন!
আপনার নিজের পরীক্ষা করা
আসুন আমাদের নিজের পরীক্ষা লিখুন। প্রথমে আপনার মূল অ্যাপ্লিকেশন প্রকল্পে এই শ্রেণিটি যুক্ত করুন যাতে আমাদের পরীক্ষার জন্য কিছু থাকে:
public class MyClass {
public int add(int a, int b) {
return a + b;
}
}
এখন addition_isCorrect()
পরীক্ষার শ্রেণিতে পদ্ধতিটি নিম্নলিখিত কোডের মতো হতে (বা অন্য কোনও নাম দিয়ে অন্য পদ্ধতি যুক্ত করুন) করুন:
public class ExampleUnitTest {
@Test
public void addition_isCorrect() throws Exception {
MyClass myClass = new MyClass();
int result = myClass.add(2, 2);
int expected = 4;
assertEquals(expected, result);
}
}
এটি আবার চালাও এবং আপনি এটি পাস দেখতে হবে। অভিনন্দন, আপনি কেবল নিজের প্রথম পরীক্ষা তৈরি করেছেন! (ঠিক আছে, আমি প্রযুক্তিগতভাবে অনুমান করি যে এটি আমার ছিল, তবে, আরে, যথেষ্ট কাছাকাছি mine আমার যা আপনার তা))
কিভাবে চালিত পরীক্ষা তৈরি করা যায়
ExampleInstrumentedTest
ফাইলটি খুলুন । এটি দেখতে কিছু দেখতে হবে:
@RunWith(AndroidJUnit4.class)
public class ExampleInstrumentedTest {
@Test
public void useAppContext() throws Exception {
// Context of the app under test.
Context appContext = InstrumentationRegistry.getTargetContext();
assertEquals("com.example.myapp", appContext.getPackageName());
}
}
আবার সেই সবুজ বোতামগুলির মধ্যে একটি টিপুন।
যতক্ষণ না আপনি একটি আসল ডিভাইস সংযুক্ত থাকে বা এমুলেটর সেট আপ থাকে, ততক্ষণ এটিকে শুরু করে আপনার অ্যাপটি চালানো উচিত ছিল। অভিনন্দন, আপনি কেবল আপনার প্রথম চালিত পরীক্ষা চালিয়েছেন!
আপনার নিজের পরীক্ষা করা
চালিত পরীক্ষাগুলি পরীক্ষা চালাতে এসপ্রেসো ব্যবহার করে। এটি আপনার নিজের ছোট্ট রোবট ব্যবহারকারীর মতো যা আপনি নিজের অ্যাপটি পরীক্ষা করতে পারেন। আপনি এটিতে বোতাম টিপানোর বা কোনও পাঠ্য ভিউয়ের বৈশিষ্ট্য পড়ার মতো কিছু করতে বলতে পারেন।
কীভাবে হাত দিয়ে পরীক্ষাটি করা যায় তার জন্য আপনি নির্দেশাবলী লিখতে পারেন, তবে যেহেতু আমরা সবে শুরু করছি, আসুন স্বতঃ রেকর্ড ফাংশনটি ব্যবহার করুন । এটা খুব সহজ।
প্রথমে আপনার ইউআইতে একটি বোতাম যুক্ত করুন যাতে আমাদের সাথে কাজ করার কিছু থাকে। আমি এটা করেছি:
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.myapp.MainActivity">
<Button
android:id="@+id/myButton"
android:text="Click me"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</android.support.constraint.ConstraintLayout>
তারপরে মেনুতে রান> রেকর্ড এস্প্রেসো টেস্ট টিপুন ।
এটি শুরু হওয়ার পরে, এমুলেটরটির বোতামটি ক্লিক করুন এবং তারপরে রেকর্ড ডায়ালগটিতে ঠিক আছে চয়ন করতে শেষ করুন। এটি নিম্নলিখিত পরীক্ষার কোডটি স্বয়ংক্রিয়ভাবে উত্পন্ন করবে।
@LargeTest
@RunWith(AndroidJUnit4.class)
public class MainActivityTest {
@Rule
public ActivityTestRule<MainActivity> mActivityTestRule = new ActivityTestRule<>(MainActivity.class);
@Test
public void mainActivityTest() {
ViewInteraction appCompatButton = onView(
allOf(withId(R.id.myButton), withText("Click me"), isDisplayed()));
appCompatButton.perform(click());
}
}
গ্রেট! আপনি সবেমাত্র আপনাকে প্রথম চালিত পরীক্ষা তৈরি করেছেন! এটা খুব সহজ ছিল। এটিকে আসল পরীক্ষা করার জন্য আপনার সম্ভবত একটি দৃ add়তা যুক্ত করা উচিত, তবে এটি রেকর্ডারের সাথে করাও বেশ সহজ। কিছুটা গভীর যেতে এই ভিডিওটি দেখুন ।
আরও অধ্যয়ন
আমি ভিডিওগুলি প্রথমে দেখতাম এবং তারপরে ডকুমেন্টেশনের মাধ্যমে পড়তাম। এটি সবই বেশ সহায়ক। শেষ লিঙ্কটি এমন একটি নিবন্ধের সিরিজ যা কোন পরীক্ষার জন্য বেছে নেওয়ার বিষয়ে চিন্তা করার জন্য কিছু গুরুত্বপূর্ণ বিষয়কে কভার করে।