UiAutomatorRunner
public
class
UiAutomatorRunner
extends Object
implements
IRemoteAndroidTestRunner
| java.lang.Object | |
| ↳ | com.android.tradefed.testtype.UiAutomatorRunner |
यह डिवाइस पर यूआई ऑटोमेटर टेस्ट चलाता है और नतीजे रिपोर्ट करता है. UI Automator टेस्ट, यूज़र इंटरफ़ेस (यूआई) ऑटोमेशन टेस्ट चलाने के लिए एक खास टेस्ट रनर होता है. यह UI Automator फ़्रेमवर्क का इस्तेमाल करता है. डिवाइस पर मौजूद टेस्ट रनर, इंस्ट्रुमेंटेशन टेस्ट के आउटपुट फ़ॉर्मैट की नकल करता है, ताकि ddmlib और TF में मौजूद पार्सिंग कोड का फिर से इस्तेमाल किया जा सके. असल में, यह इस कमांड के चारों ओर एक रैपर है: adb shell uiautomator runtest (jar files) -e class (test classes) ...
खास जानकारी
पब्लिक कंस्ट्रक्टर | |
|---|---|
UiAutomatorRunner(IDevice remoteDevice, String[] jarPaths, String runnerPath)
यूज़र इंटरफ़ेस ऑटोमेशन टेस्ट चलाने के लिए, UiAutomatorRunner बनाएं |
|
सार्वजनिक तरीके | |
|---|---|
void
|
addBooleanArg(String name, boolean value)
यह इंस्ट्रुमेंटेशन कमांड में शामिल करने के लिए, बूलियन आर्ग्युमेंट जोड़ता है. |
void
|
addInstrumentationArg(String name, String value)
इंस्ट्रुमेंटेशन कमांड में शामिल करने के लिए, एक आर्ग्युमेंट जोड़ता है. |
void
|
cancel()
इस टेस्ट रन को रद्द करने का अनुरोध करता है. |
IRemoteAndroidTestRunner.CoverageOutput
|
getCoverageOutputType()
यह फ़ंक्शन, रनर के ज़रिए जनरेट की गई टेस्ट कवरेज का टाइप दिखाता है. |
String
|
getPackageName()
जोड़ी गई आखिरी Java क्लास के पैकेज का नाम दिखाता है |
String
|
getRunnerName()
UiAutomatorTestRunner क्लास का डिफ़ॉल्ट नाम दिखाता है |
void
|
removeInstrumentationArg(String name)
पहले से जोड़े गए किसी आर्ग्युमेंट को हटाता है. |
void
|
run(ITestRunListener... listeners)
इस टेस्ट रन को लागू करें. |
void
|
run(
इस टेस्ट रन को लागू करें. |
void
|
setAdditionalTestOutputLocation(String additionalTestDataPath)
यह कुकी, टेस्ट ऐप्लिकेशन को अनइंस्टॉल करने से पहले, होस्ट में कॉपी किए जाने वाले अतिरिक्त टेस्ट आउटपुट की जगह सेट करती है. |
void
|
setClassName(String className)
इस क्लास में सिर्फ़ टेस्ट चलाने के लिए सेट करता है. इसे 'run' से पहले कॉल किया जाना चाहिए. |
void
|
setClassNames(String[] classNames)
यह विकल्प, दी गई क्लास में सिर्फ़ टेस्ट चलाने के लिए सेट करता है. इसे 'run' से पहले कॉल किया जाना चाहिए. |
void
|
setCoverage(boolean coverage)
यह इस टेस्ट रन के लिए, कोड कवरेज मोड सेट करता है. |
void
|
setCoverageReportLocation(String arg0)
यह कुकी, जनरेट की गई कवरेज रिपोर्ट की जगह की जानकारी सेट करती है. |
void
|
setDebug(boolean debug)
इस टेस्ट रन के लिए, डीबग मोड सेट करता है. |
void
|
setIgnoreSighup(boolean value)
यह uiautomator में SIGHUP को अनदेखा करने का विकल्प सेट करता है. |
void
|
setLogOnly(boolean logOnly)
यह विकल्प, टेस्ट रन को सिर्फ़ लॉग मोड पर सेट करता है. इससे टेस्ट एक्ज़ीक्यूट नहीं होता. |
void
|
setMaxTimeToOutputResponse(long timeout, TimeUnit unit)
इस विकल्प का इस्तेमाल करके, डिवाइसों पर टेस्ट चलाने वाली शेल कमांड के आउटपुट के बीच ज़्यादा से ज़्यादा समय सेट किया जाता है. |
void
|
setMaxTimeout(long maxTimeout, TimeUnit unit)
यह विकल्प, इंस्ट्रूमेंटेशन को पूरा करने के लिए ज़्यादा से ज़्यादा समय सेट करता है. |
void
|
setMaxtimeToOutputResponse(int maxTimeToOutputResponse)
इस तरीके का इस्तेमाल बंद कर दिया गया है.
इसके बजाय, |
void
|
setMethodName(String className, String testName)
यह सिर्फ़ तय किए गए टेस्ट मेथड को चलाने के लिए सेट करता है. इसे 'run' से पहले कॉल किया जाना चाहिए. |
void
|
setRunName(String runName)
अगर यह जानकारी नहीं दी गई है, तो पैकेज के नाम का इस्तेमाल किया जाएगा |
void
|
setTestCollection(boolean b)
इस टेस्ट रन को टेस्ट कलेक्शन मोड पर सेट करता है. |
void
|
setTestPackageName(String packageName)
इस फ़ंक्शन का इस्तेमाल, तय किए गए पैकेज में सभी टेस्ट चलाने के लिए किया जाता है. इसे 'run' से पहले कॉल किया जाना चाहिए. |
void
|
setTestSize(IRemoteAndroidTestRunner.TestSize size)
इस कुकी का इस्तेमाल, दिए गए साइज़ के सिर्फ़ टेस्ट चलाने के लिए किया जाता है. |
सुरक्षित तरीके | |
|---|---|
String
|
getRunCommand()
|
String
|
getRunnerPath()
|
पब्लिक कंस्ट्रक्टर
UiAutomatorRunner
public UiAutomatorRunner (IDevice remoteDevice, String[] jarPaths, String runnerPath)
यूज़र इंटरफ़ेस ऑटोमेशन टेस्ट चलाने के लिए, UiAutomatorRunner बनाएं
| पैरामीटर | |
|---|---|
remoteDevice |
IDevice: रिमोट डिवाइस, जिससे इंटरैक्ट करना है: जांच करना, नतीजे इकट्ठा करना वगैरह |
jarPaths |
String: ये jar फ़ाइलों के पाथ हैं, जहां UI Automator के टेस्ट केस मौजूद हैं. पाथ, डिवाइस पर /data/local/tmp/ के हिसाब से ऐब्सलूट या रिलेटिव होने चाहिए |
runnerPath |
String: इस्तेमाल करने के लिए वैकल्पिक uiautomator रनर. यह null हो सकता है और इस मामले में डिफ़ॉल्ट का इस्तेमाल किया जाएगा |
सार्वजनिक तरीके
addBooleanArg
public void addBooleanArg (String name,
boolean value)यह इंस्ट्रुमेंटेशन कमांड में शामिल करने के लिए, बूलियन आर्ग्युमेंट जोड़ता है.
| पैरामीटर | |
|---|---|
name |
String: इंस्ट्रुमेंटेशन बंडल आर्ग्युमेंट का नाम |
value |
boolean: तर्क की वैल्यू |
addInstrumentationArg
public void addInstrumentationArg (String name,
String value)इंस्ट्रुमेंटेशन कमांड में शामिल करने के लिए, एक आर्ग्युमेंट जोड़ता है.
इसे 'run' से पहले कॉल किया जाना चाहिए. अगर दिए गए नाम का कोई आर्ग्युमेंट पहले से मौजूद है, तो उसकी वैल्यू बदल दी जाएगी.
| पैरामीटर | |
|---|---|
name |
String: इंस्ट्रुमेंटेशन बंडल आर्ग्युमेंट का नाम |
value |
String: तर्क की वैल्यू |
अभी नहीं
public void cancel ()
इस टेस्ट रन को रद्द करने का अनुरोध करता है.
getCoverageOutputType
public IRemoteAndroidTestRunner.CoverageOutput getCoverageOutputType ()
यह फ़ंक्शन, रनर के ज़रिए जनरेट की गई टेस्ट कवरेज का टाइप दिखाता है. CoverageOutput देखें.
| रिटर्न | |
|---|---|
IRemoteAndroidTestRunner.CoverageOutput |
|
getPackageName
public String getPackageName ()
जोड़ी गई आखिरी Java क्लास के पैकेज का नाम दिखाता है
| रिटर्न | |
|---|---|
String |
|
getRunnerName
public String getRunnerName ()
UiAutomatorTestRunner क्लास का डिफ़ॉल्ट नाम दिखाता है
| रिटर्न | |
|---|---|
String |
|
removeInstrumentationArg
public void removeInstrumentationArg (String name)
पहले से जोड़े गए किसी आर्ग्युमेंट को हटाता है.
| पैरामीटर | |
|---|---|
name |
String: हटाने के लिए इंस्ट्रुमेंटेशन बंडल के तर्क का नाम |
रन
public void run (ITestRunListener... listeners)
इस टेस्ट रन को लागू करें.
ERROR(/#run(Collection)) के लिए सुविधा वाला तरीका.
| पैरामीटर | |
|---|---|
listeners |
ITestRunListener: जांच के नतीजों के बारे में सुनता है |
| थ्रो | |
|---|---|
AdbCommandRejectedException |
|
ShellCommandUnresponsiveException |
|
TimeoutException |
|
रन
public void run (listeners)
इस टेस्ट रन को लागू करें.
| पैरामीटर | |
|---|---|
listeners |
: जांच के नतीजों के लिए, लिसनर का कलेक्शन |
| थ्रो | |
|---|---|
AdbCommandRejectedException |
|
ShellCommandUnresponsiveException |
|
TimeoutException |
|
setAdditionalTestOutputLocation
public void setAdditionalTestOutputLocation (String additionalTestDataPath)
यह कुकी, टेस्ट ऐप्लिकेशन को अनइंस्टॉल करने से पहले, होस्ट में कॉपी किए जाने वाले अतिरिक्त टेस्ट आउटपुट की जगह सेट करती है. उदाहरण के लिए, जनरेट की गई बेंचमार्क रिपोर्ट.
| पैरामीटर | |
|---|---|
additionalTestDataPath |
String |
setClassName
public void setClassName (String className)
इस क्लास में सिर्फ़ टेस्ट चलाने के लिए सेट करता है. इसे 'run' से पहले कॉल किया जाना चाहिए.
| पैरामीटर | |
|---|---|
className |
String: पूरी तरह क्वालिफ़ाइड क्लास का नाम (जैसे, x.y.z) |
setClassNames
public void setClassNames (String[] classNames)
यह विकल्प, दी गई क्लास में सिर्फ़ टेस्ट चलाने के लिए सेट करता है. इसे 'run' से पहले कॉल किया जाना चाहिए.
एक से ज़्यादा क्लास देने पर, InstrumentationTestRunner की ज़रूरत होती है. यह कई क्लास वाले आर्ग्युमेंट के सिंटैक्स के साथ काम करता है.
| पैरामीटर | |
|---|---|
classNames |
String: पूरी तरह क्वालिफ़ाइड क्लास के नामों की ऐरे (जैसे, x.y.z) |
setCoverage
public void setCoverage (boolean coverage)
यह इस टेस्ट रन के लिए, कोड कवरेज मोड सेट करता है.
| पैरामीटर | |
|---|---|
coverage |
boolean |
setCoverageReportLocation
public void setCoverageReportLocation (String arg0)
यह कुकी, जनरेट की गई कवरेज रिपोर्ट की जगह की जानकारी सेट करती है.
| पैरामीटर | |
|---|---|
arg0 |
String |
setDebug
public void setDebug (boolean debug)
इस टेस्ट रन के लिए, डीबग मोड सेट करता है. अगर यह वैल्यू सही है, तो Android टेस्ट रनर, टेस्ट को एक्ज़ीक्यूट करने से पहले डीबगर के अटैच होने का इंतज़ार करेगा.
| पैरामीटर | |
|---|---|
debug |
boolean |
setIgnoreSighup
public void setIgnoreSighup (boolean value)
यह uiautomator में SIGHUP को अनदेखा करने का विकल्प सेट करता है.
| पैरामीटर | |
|---|---|
value |
boolean: अगर इसे true पर सेट किया गया है, तो सिग्नल को अनदेखा करें |
setLogOnly
public void setLogOnly (boolean logOnly)
यह विकल्प, टेस्ट रन को सिर्फ़ लॉग मोड पर सेट करता है. इससे टेस्ट एक्ज़ीक्यूट नहीं होता.
| पैरामीटर | |
|---|---|
logOnly |
boolean |
setMaxTimeToOutputResponse
public void setMaxTimeToOutputResponse (long timeout,
TimeUnit unit)इस विकल्प का इस्तेमाल करके, डिवाइसों पर टेस्ट चलाने वाली शेल कमांड के आउटपुट के बीच ज़्यादा से ज़्यादा समय सेट किया जाता है.
इससे, टेस्ट के रुक जाने और कभी पूरा न होने की स्थिति में टाइम आउट सेट किया जा सकता है. यह कनेक्शन के सामान्य टाइम आउट से अलग होता है.
डिफ़ॉल्ट रूप से, कोई टाइमआउट तय नहीं किया जाएगा.
| पैरामीटर | |
|---|---|
timeout |
long: यह वह ज़्यादा से ज़्यादा समय है जब कमांड को कोई जवाब नहीं देना होता. 0 वैल्यू का मतलब है कि यह तरीका, कमांड के आउटपुट के लिए हमेशा इंतज़ार करेगा. यह तब तक इंतज़ार करेगा, जब तक receiver एक्ज़ीक्यूशन रद्द नहीं कर देता. साथ ही, यह कभी भी थ्रो नहीं करेगा. |
unit |
TimeUnit: शून्य से ज़्यादा maxTimeToOutputResponse और maxTimeout
की वैल्यू के लिए इकाइयां. |
setMaxTimeout
public void setMaxTimeout (long maxTimeout,
TimeUnit unit)यह विकल्प, इंस्ट्रूमेंटेशन को पूरा करने के लिए ज़्यादा से ज़्यादा समय सेट करता है.
इससे, टेस्ट के रुक जाने और कभी पूरा न होने की स्थिति में टाइम आउट सेट किया जा सकता है. यह कनेक्शन के सामान्य टाइम आउट से अलग होता है.
डिफ़ॉल्ट रूप से, कोई टाइमआउट तय नहीं किया जाएगा.
| पैरामीटर | |
|---|---|
maxTimeout |
long: यह वह ज़्यादा से ज़्यादा समय है जब कमांड को कोई जवाब नहीं देने की अनुमति होती है. 0 वैल्यू का मतलब है कि यह तरीका, कमांड के आउटपुट के लिए हमेशा इंतज़ार करेगा. यह तब तक इंतज़ार करेगा, जब तक receiver एक्ज़ीक्यूशन रद्द नहीं कर देता. साथ ही, यह कभी भी थ्रो नहीं करेगा. |
unit |
TimeUnit: शून्य से ज़्यादा maxTimeToOutputResponse और maxTimeout
की वैल्यू के लिए इकाइयां. |
setMaxtimeToOutputResponse
public void setMaxtimeToOutputResponse (int maxTimeToOutputResponse)
इस तरीके का इस्तेमाल बंद कर दिया गया है.
इसके बजाय, setMaxTimeToOutputResponse(long, TimeUnit) का इस्तेमाल करें.
| पैरामीटर | |
|---|---|
maxTimeToOutputResponse |
int |
setMethodName
public void setMethodName (String className,
String testName)यह सिर्फ़ तय किए गए टेस्ट मेथड को चलाने के लिए सेट करता है. इसे 'run' से पहले कॉल किया जाना चाहिए.
| पैरामीटर | |
|---|---|
className |
String: पूरी तरह क्वालिफ़ाइड क्लास का नाम (जैसे, x.y.z) |
testName |
String: तरीके का नाम |
setRunName
public void setRunName (String runName)
run( को ITestRunListener पर रिपोर्ट करने के लिए, कस्टम रन का नाम सेट करें
अगर यह जानकारी नहीं दी गई है, तो पैकेज के नाम का इस्तेमाल किया जाएगा
setTestCollection
public void setTestCollection (boolean b)
इस टेस्ट रन को टेस्ट कलेक्शन मोड पर सेट करता है. अगर यह सही है, तो टेस्ट एक्ज़ीक्यूशन को स्किप कर दिया जाएगा. साथ ही, टेस्ट कलेक्शन को पूरा करने के लिए ज़रूरी सभी सही रनर आर्ग्युमेंट सेट कर दिए जाएंगे.
| पैरामीटर | |
|---|---|
b |
boolean |
setTestPackageName
public void setTestPackageName (String packageName)
इस फ़ंक्शन का इस्तेमाल, तय किए गए पैकेज में सभी टेस्ट चलाने के लिए किया जाता है. इसे 'run' से पहले कॉल किया जाना चाहिए.
| पैरामीटर | |
|---|---|
packageName |
String: पूरी तरह से क्वालिफ़ाइड पैकेज का नाम (जैसे, x.y.z) |
setTestSize
public void setTestSize (IRemoteAndroidTestRunner.TestSize size)
इस कुकी का इस्तेमाल, दिए गए साइज़ के सिर्फ़ टेस्ट चलाने के लिए किया जाता है. इसे 'run' से पहले कॉल किया जाना चाहिए.
| पैरामीटर | |
|---|---|
size |
IRemoteAndroidTestRunner.TestSize: TestSize को चलाने के लिए. |
सुरक्षित तरीके
getRunCommand
protected String getRunCommand ()
| रिटर्न | |
|---|---|
String |
|
getRunnerPath
protected String getRunnerPath ()
| रिटर्न | |
|---|---|
String |
|