Robotium ट्यूटोरियल: Android उदाहरण सहित परीक्षण ढांचा
⚡ स्मार्ट सारांश
Robotium एक खुला स्रोत है Android एक टेस्ट ऑटोमेशन फ्रेमवर्क जो नेटिव और हाइब्रिड ऐप्स को उनके यूजर इंटरफेस के माध्यम से संचालित करता है, जिससे टेस्टर कई क्षेत्रों में फैले कार्यात्मक, सिस्टम और स्वीकृति परिदृश्यों के लिए स्क्रिप्ट लिख सकता है। Android गतिविधियों.
एचएमबी क्या है? Robotium?
Robotium है एक Android एक परीक्षण ढांचा जो नेटिव और हाइब्रिड अनुप्रयोगों के लिए परीक्षण मामलों को स्वचालित करता है। Robotiumएक डेवलपर मजबूत स्वचालित जीयूआई परीक्षण मामले बना सकता है Android एप्लिकेशन। एक डेवलपर कई अनुप्रयोगों को कवर करने वाले कार्यात्मक, सिस्टम और स्वीकृति परीक्षण परिदृश्य भी लिख सकता है। Android गतिविधियों.
Robotium परीक्षण ढांचा
मानक Android परीक्षण ढांचे में नीचे सूचीबद्ध सीमाएँ हैं।
- एकाधिक गतिविधियों को संभालने में असमर्थ
- परीक्षण निष्पादन प्रदर्शन धीमा है
- टेस्ट केस जटिल होते हैं और उन्हें लागू करना कठिन होता है।
RSI Robotium किसी उत्पाद पर परीक्षण करने के लिए फ्रेमवर्क बेहतर विकल्प है। Android आवेदन.
Robotium यह एक ओपन-सोर्स फ्रेमवर्क है और इसे का विस्तार माना जाता है। Android परीक्षण ढांचा। उपयोग करना Robotiumएक डेवलपर मजबूत स्वचालित जीयूआई परीक्षण मामले बना सकता है Android इसके अलावा, एक डेवलपर कई अनुप्रयोगों को कवर करने वाले कार्यात्मक, सिस्टम और स्वीकृति परीक्षण परिदृश्य लिख सकता है। Android गतिविधियों.
नीचे दी गई तालिका उन उन्नत विशेषताओं का सारांश प्रस्तुत करती है जो इन्हें अलग करती हैं। Robotium साधारण उपकरण ढांचे से।
की उन्नत सुविधाएँ Robotium
Robotium टेस्ट केस क्लासेस
Robotium यह परीक्षण के लिए कुछ चुनिंदा क्लास प्रदान करता है, और लेख का उदाहरण पुराने सिस्टम को आयात करता है। com.jayway.android.robotium.solo पैकेज। ये क्लास कई गतिविधियों में फैले टेस्ट केस को सपोर्ट करती हैं, और Solo के साथ एकीकृत किया गया है ActivityInstrumentationTestCase2.
नोट: वर्तमान Robotium रिलीज़ उसी वर्ग को छोटे प्रारूप में उजागर करती हैं। com.robotium.solo पैकेज, जबकि मेवन कोऑर्डिनेट स्थिर रहा। com.jayway.android.robotium:robotium-soloप्रोजेक्ट में वास्तव में जोड़ी गई JAR फ़ाइल के संस्करण के अनुसार इंपोर्ट को समायोजित करें।
नीचे दिया गया आरेख दर्शाता है कि सोलो क्लास इंस्ट्रूमेंटेशन टेस्ट केस के ऊपर कैसे स्थित है।
का एकीकरण Robotium और गतिविधि उपकरण परीक्षण मामला 2
एक परीक्षक एप्लिकेशन डिज़ाइन की जानकारी के बिना भी टेस्ट केस लिख सकता है, जो इस दृष्टिकोण को एक प्रकार का बना देता है। ब्लैक बॉक्स परीक्षणसाधारण की तुलना में यह एक असाधारण लाभ है। Android परीक्षण केस कक्षाएं.
इसका उपयोग कैसे करें Robotium
उपयोग करने के लिए Robotium अपने में Android टेस्ट प्रोजेक्ट के लिए, आपको नीचे दिए गए चरणों का पालन करना होगा।
इसका उपयोग कैसे करें: Robotium
आपकी गुणवत्ता की गारंटी देने के लिए Android आवेदन करने के लिए, नीचे दी गई चार चरणों वाली प्रक्रिया का पालन करें।
- परीक्षण विनिर्देश तैयार करें
- परीक्षण कार्यक्रम विकसित करें
- लक्ष्य डिवाइस पर परीक्षण केस निष्पादित करें
- परीक्षा परिणाम एकत्र करें
नीचे दिए गए फ्लो चार्ट में उन चारों चरणों को क्रम से दर्शाया गया है।
Android आवेदन परीक्षण प्रक्रिया
चरण 1) परीक्षण विनिर्देश तैयार करें
यह आपके एप्लिकेशन के परीक्षण का पहला चरण है। इस चरण में आप परीक्षण किए जाने वाले लक्ष्य को परिभाषित करते हैं। Android एप्लिकेशन में कई लक्ष्य होते हैं जिनका परीक्षण करना आवश्यक होता है, जैसे कि यूआई, एक्टिविटीज़, कंपोनेंट्स और सर्विसेज़। लक्ष्य को स्पष्ट रूप से परिभाषित करने से व्यापक परीक्षण कवरेज प्राप्त करने में मदद मिलती है।
- आयोजित किए जाने वाले परीक्षणों के प्रकारों की योजना बनाएं (यूनिट परीक्षण, कार्यात्मक परीक्षण, सिस्टम परीक्षण)।
- प्रत्येक को डिज़ाइन करें परीक्षण का मामला अधिकतम कवरेज के लिए जबकिping टेस्ट केसों की संख्या कम रखें। आप जितना अधिक कोड टेस्ट करेंगे, बग का जल्दी पता चलने की संभावना उतनी ही अधिक होगी।
चरण 2) परीक्षण प्रोग्राम लिखें
यह अनुभाग आपको लेखन प्रक्रिया में मार्गदर्शन करता है। Android परीक्षण कार्यक्रम का उपयोग कर Android JUnit परीक्षण और Robotiumमान लीजिए कि आपने पहले ही एक विकसित कर लिया है। Android हेलो नाम का प्रोग्रामAndroidइस प्रोग्राम में नीचे वर्णित कार्य शामिल हैं।
- स्क्रीन पर “हेलो वर्ल्ड!” टेक्स्ट प्रदर्शित करें।
- हैलो प्रदर्शित करेंAndroid उपयोगकर्ता द्वारा "स्टार्ट" बटन दबाने पर संदेश प्रदर्शित होता है।
नीचे दिया गया स्क्रीनशॉट परीक्षण के तहत एप्लिकेशन को एक डिवाइस पर चलते हुए दिखाता है।
नमस्तेAndroid आवेदन
सिस्टम आवश्यकताएँ
- RSI Android प्लेटफ़ॉर्म पहले से एकीकृत के साथ आता है JUnit 3 फ्रेमवर्क, जो कि है
ActivityInstrumentationTestCase2पर आधारित है। - बनाने के लिए ए Android परीक्षण परियोजना से Eclipseआपकी मशीन को एक कार्यशील स्थिति की आवश्यकता है। Android SDK इंस्टॉलेशन।
- वर्तमान को स्थापित करें Android पिन किए गए पुराने रिलीज़ के बजाय प्लेटफ़ॉर्म SDK का उपयोग करें।
इस वॉकथ्रू में स्क्रीनशॉट का उपयोग किया गया है Eclipse एडीटी प्लगइन के साथ, जो उदाहरण लिखते समय मानक टूलचेन था। Eclipse ADT अब समर्थित नहीं है, इसलिए आधुनिक मशीन पर आपको डाउनलोड Android Studio इसके बजाय, उसी परीक्षण कोड का पुन: उपयोग करें Gradle मॉड्यूल।
के लिए Robotium टेस्टिंग फ्रेमवर्क डाउनलोड करें Robotium पुस्तकालय से Robotium परियोजना पृष्ठ.
एक बनाएं Android परीक्षण परियोजना
- फ़ाइल -> नया -> अन्य पर क्लिक करें
- चुनें Android -> Android नीचे दिए गए चित्र में दिखाए अनुसार प्रोजेक्ट का परीक्षण करें, फिर अगला चुनें।
कोई नया बनाएं Android परीक्षण परियोजना
अपने टेस्ट प्रोजेक्ट का नाम लिखें। नामकरण के नियमानुसार, टेस्ट प्रोजेक्ट का नाम "हेलो" होना चाहिए।Androidपरीक्षा"।
नामकरण नियम के आधार पर परीक्षण परियोजना का नाम जोड़ें।
परीक्षण के लिए लक्षित एप्लिकेशन चुनें। इस मामले में यह Hello है।Androidफिर फिनिश पर क्लिक करें।
परीक्षण के लिए लक्षित एप्लिकेशन का चयन करें
टेस्ट सूट बनाएं
आपकी परीक्षण विशिष्टताओं के आधार पर, अब आप अपने परीक्षण प्रोग्राम के लिए परीक्षण सूट बनाते हैं। आप विभिन्न विकल्पों में से चुन सकते हैं। सॉफ्टवेयर परिक्षण यह ट्यूटोरियल मानक फ्रेमवर्क का उपयोग करता है। Android परीक्षण ढांचा ActivityInstrumentationTestCase2परीक्षण करने के लिए Robotium, जोड़ें Robotium लाइब्रेरी फ़ाइल को libs आपके प्रोजेक्ट फोल्डर के अंदर स्थित डायरेक्टरी।
टेस्ट केस एक ऐसा फिक्सचर परिभाषित करता है जिसका उपयोग कई टेस्ट चलाने के लिए किया जाता है। टेस्ट केस को परिभाषित करने के लिए, नीचे दिए गए प्रोग्राम स्ट्रक्चर का पालन करें।
- TestCase का एक सबक्लास लागू करें।
- फिक्स्चर की स्थिति को संग्रहीत करने वाले इंस्टेंस वेरिएबल को परिभाषित करें।
- setUp() को ओवरराइड करके फिक्स्चर की स्थिति को प्रारंभ करें।
- tearDown() को ओवरराइड करके परीक्षण के बाद सफाई करें।
नीचे दिया गया आरेख उस संरचना को उस परीक्षण प्रोग्राम पर दर्शाता है जिसे आप लिखने वाले हैं।
परीक्षण कार्यक्रम संरचना
package com.example.helloandroid.test; import com.example.helloandroid.HelloAndroid; import com.jayway.android.robotium.solo.Solo; import android.test.ActivityInstrumentationTestCase2; import android.widget.TextView; public class HelloAndroidTest extends ActivityInstrumentationTestCase2 <HelloAndroid> { private HelloAndroid mActivity; private TextView mView; private String resourceString; private Solo solo; public HelloAndroidTest () { // TODO Auto-generated constructor stub super("com.example.helloandroid",HelloAndroid.class); } @Override protected void setUp() throws Exception { // TODO Auto-generated method stub // super.setUp(); mActivity = this.getActivity(); solo = new Solo(getInstrumentation(),getActivity()); mView = (TextView) mActivity.findViewById(com.example.helloandroid.R.id.textview2); resourceString = mActivity.getString(com.example.helloandroid.R.string.hello_world); } @Override protected void tearDown() throws Exception { // TODO Auto-generated method stub //super.tearDown(); solo.finishOpenedActivities(); } public void testPrecondition() { assertNotNull(mView); } /* test Target application contains a text display "Hello World!"*/ public void testSearchText() { assertEquals(resourceString,(String) mView.getText()); } /* test HelloAndroid Activity on target application is exist*/ public void testCurrentActivity() throws Exception { solo.assertCurrentActivity("wrong activity", HelloAndroid.class); } /* test Application UI contains "Start" button */ /* send event click button to target application */ public void testSearchButton() throws Exception { boolean found = solo.searchButton("Start"); solo.clickOnButton("Start"); assertTrue(found); } }
परीक्षण मामले जोड़ना
- टेस्ट सूट वाले पैकेज में ही, TestCase क्लास बनाएं।
- किसी विशेष गतिविधि का परीक्षण करने के लिए, उदाहरण के लिए हेलोAndroidActivityInstrumentationTestCase2 का विस्तार करते हुए एक टेस्ट केस बनाएं।Android>.
- उस क्लास के अंदर, परीक्षक getActivity() विधि के माध्यम से परीक्षण के तहत गतिविधि प्राप्त करता है।
- “test + मूल विधि का नाम” नामक एक विधि जोड़कर गतिविधि के लिए स्वतंत्र रूप से एक परीक्षण बनाएं।
- परीक्षण विधि के अंदर, परीक्षक उपयोग कर सकता है Android JUnit वास्तविक मान की अपेक्षित मान से तुलना करने के लिए फ़ंक्शन। ये विधियाँ नीचे दर्शाई गई हैं।
नीचे दी गई तालिका में दोनों फ्रेमवर्क में सबसे अधिक उपयोग किए जाने वाले अभिकथन और अंतःक्रिया विधियों को सूचीबद्ध किया गया है।
उदाहरण विधियाँ Robotium और Android परीक्षण ढांचा
उपरोक्त टेस्ट सूट यह सत्यापित करता है कि एप्लिकेशन के ग्राफिकल यूजर इंटरफेस पर "हेलो वर्ल्ड!" टेक्स्ट प्रदर्शित होता है और उसमें "स्टार्ट" नामक एक बटन मौजूद है।
चरण 3) परीक्षण चलाएँ
अपना टेस्ट प्रोग्राम लिखने के बाद, नीचे दिए गए चरणों का पालन करके टेस्ट चलाएँ।
- एक कनेक्ट करें Android यदि कोई वास्तविक डिवाइस उपलब्ध नहीं है, तो उसे अपने पीसी से कनेक्ट करें या एमुलेटर शुरू करें।
- अपने IDE में, टेस्ट प्रोजेक्ट पर राइट-क्लिक करें और Run As चुनें → Android इकाई परीक्षण।
नीचे दिया गया स्क्रीनशॉट IDE से टेस्ट रन शुरू होने को दर्शाता है।
टेस्ट प्रोग्राम चलाना
IDE से टेस्ट चलाने के अलावा, आप इसे कमांड लाइन से भी चला सकते हैं। इस टेस्ट प्रोग्राम में टेस्ट पैकेज यह है: com.example.helloandroid.testलिनक्स टर्मिनल में, उस पैकेज में मौजूद सभी टेस्ट को चलाने के लिए निम्नलिखित कमांड का उपयोग करें।
$ adb shell am instrument -w -e package com.example.helloandroid.test
चरण 4) परीक्षा परिणाम प्राप्त करें
टेस्ट पूरा होने के बाद, आप टेस्ट के परिणाम एकत्र करते हैं।
इस टेस्ट प्रोग्राम में चार टेस्ट विधियाँ निष्पादित की जाती हैं। नीचे दिए गए रन में, सभी टेस्ट केस सफल रहे।
सभी टेस्ट केस पास होने पर टेस्ट परिणाम आउटपुट
यदि कोई टेस्ट केस विफल हो जाता है, तो आउटपुट प्रदर्शित होता है और आपको दिखाता है कि कौन से टेस्ट केस विफल हुए हैं।
टेस्ट केस विफल होने पर टेस्ट परिणाम आउटपुट
स्रोत Code उदाहरण
इस लेख में स्रोत कोड के उदाहरण शामिल हैं जो आपको ट्यूटोरियल को अधिक स्पष्ट रूप से समझने और तकनीकी विवरणों को शीघ्रता से ग्रहण करने में मदद करते हैं।
- नमस्तेAndroid: परीक्षण के अधीन एप्लिकेशन।
- नमस्तेAndroidटेस्ट: परीक्षण कार्यक्रम का उपयोग करते हुए Android परीक्षण ढांचा।
यदि आप तुलना करना चाहते हैं Robotium इस क्षेत्र में उपलब्ध अन्य विकल्पों के लिए, देखें मोबाइल एप्लिकेशन परीक्षण गाइड, Appium ट्यूटोरियल और सारांश मोबाइल ऐप परीक्षण उपकरण.

.png)
.png)
.png)



.png)

.png)
.png)

.png)
.png)