2015-07-16 4 views
8

पर लिखना मैं एंड्रॉइड यूआई ऑटोमेटर पर एक छोटा रैपर लिख रहा हूं। आम तौर पर हम कंसोल में टेस्ट केस स्थिति देख सकते हैं। क्या मैं इसे एक्सेस कर सकता हूं और अपना संदेश जोड़ सकता हूं? मैंने System.out.println की कोशिश की है। लेकिन यह काम नहीं आया। क्या ऐसा करने का कोई तरीका है?एंड्रॉइड यूआई ऑटोमेटर आउटपुट कंसोल

+0

आप 'द्वारा UIAutomator उत्पादन सांत्वना क्या मतलब है '? –

+0

एंड्रॉइड स्टूडियो में, यूआईयूयूटोमेटर JUnit कंसोल में परीक्षण परिणाम प्रदर्शित करता है। मेरा मतलब था। – deltaaruna

+0

हाय! मैंने जूनिट के बारे में अपने विचारों के अनुसार अपना जवाब अपडेट कर दिया है (हालांकि मैंने इसका उपयोग नहीं किया है :)) –

उत्तर

1

तो एडीबी से परीक्षण चलाने के लिए बेहतर तरीका logcat को प्रिंट कर रहा है:

import android.util.Log; 

Log.d("My tag", "My log message"); 

दूसरी ओर, UIAutomator के पिछले संस्करण InstrumentationTestCase को लागू परीक्षण कक्षा में प्रयोग किया जाता है। यह वर्ग junit.framework.Assert (http://developer.android.com/reference/junit/framework/Assert.html) का बहुत पूर्व पूर्वज है। मुझे लगता है कि आप इसके तरीकों से कुछ उपयोगी पाएंगे। प्रारूप विधि हो सकती है जो आप खोज रहे हैं।

+1

यह लॉग बिल्ली लॉग पर जाता है। UIAutomator कंसोल के लिए नहीं। – deltaaruna

+0

इसका यूआईयूयूटोमीटर लॉग नहीं है। –

2

आप कंसोल को Instrumentation.sendStatus(..) रिपोर्ट जानकारी का उपयोग कर सकते हैं।

sendStatus (..) एक बंडल और स्टेटस कोड तर्क के रूप में लेता है। यह नहीं दूँगी आप कंसोल के लिए सीधे एक स्ट्रिंग लिखने, लेकिन बंडल में एक मुख्य/मान जोड़े इस तरह बाहर लिखा जाएगा:

INSTRUMENTATION_STATUS: key1=value1 
INSTRUMENTATION_STATUS: key2=value2 
INSTRUMENTATION_STATUS_CODE: -1 

नोट: यह केवल आप हाल ही में उपयोग कर रहे हैं काम करेंगे UiAutomator (2.0+) का संस्करण। पुराने संस्करण में इंस्ट्रुमेंटेशन तक पहुंच नहीं है, इसलिए यदि आप शैल-आधारित यूआईएटॉमेटर का उपयोग कर रहे हैं तो इसे अपग्रेड करने का समय है!

+1

क्या आप एक कोड स्निपिट पोस्ट कर सकते हैं कि इसे यूआईयूटोमेटर परीक्षण में कैसे कार्यान्वित किया जा सकता है –

0

Instrumentation.sendStatus(..) यूआईयूटॉमेटर कंसोल को लिखने के लिए उपयोग किया जा सकता है।

त्वरित उदाहरण होगा:

Bundle bundle = new Bundle(); 
    bundle.putString("MyResult","10"); 
    getAutomationSupport().sendStatus(0, bundle); 

आशा यह आपके लिए क्या देख रहा है!

0

आप जावा के प्रिंट बयान का उपयोग करना चाहते हैं, तो आप आयात करना चाहिए:

import static java.lang.System.out; 

के बाद आप आयात करते हैं, तो आप उपयोग कर सकते हैं:

out.println("hello world"); 
संबंधित मुद्दे