رابط کاربری خودکار دونده
public class UiAutomatorRunner
extends Object implements IRemoteAndroidTestRunner
| شیء جاوا | |
| ↳ | com.android.tradefed.testtype.UiAutomatorRunner |
تست UI Automator را روی دستگاه اجرا میکند و نتایج را گزارش میدهد. تست UI Automator یک اجراکننده تست اختصاصی برای اجرای تستهای اتوماسیون UI است که از چارچوب UI Automator استفاده میکند. اجراکننده تست روی دستگاه، فرمت خروجی تست instrumentation را شبیهسازی میکند تا کد تجزیه موجود در 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)یک آرگومان بولی برای قرار دادن در دستور instrumentation اضافه میکند. |
void | addInstrumentationArg (String name, String value)یک آرگومان برای گنجاندن در دستور instrumentation اضافه میکند. |
void | cancel ()درخواست لغو این اجرای آزمایشی را دارد. |
IRemoteAndroidTestRunner.CoverageOutput | getCoverageOutputType ()نوع پوشش آزمایشی تولید شده توسط اجراکننده را برمیگرداند. |
String | getPackageName ()نام بسته آخرین کلاس جاوا اضافه شده را برمیگرداند. |
String | getRunnerName ()نام پیشفرض کلاس UiAutomatorTestRunner را برمیگرداند. |
void | removeInstrumentationArg (String name)آرگومانی که قبلاً اضافه شده را حذف میکند. |
void | run ( ITestRunListener... listeners)این اجرای آزمایشی را انجام دهید. |
void | run (این اجرای آزمایشی را انجام دهید. |
void | setAdditionalTestOutputLocation (String additionalTestDataPath)محل کپی شدن خروجی تست اضافی در هاست را قبل از حذف نصب برنامه تست تعیین میکند. |
void | setClassName (String className)فقط تستهای این کلاس را اجرا میکند. باید قبل از «اجرا» فراخوانی شود. |
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)حداکثر زمان مجاز بین خروجی دستور shell که تستها را روی دستگاهها اجرا میکند، تنظیم میکند. |
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 () |
سازندگان عمومی
رابط کاربری خودکار دونده
public UiAutomatorRunner (IDevice remoteDevice, String[] jarPaths, String runnerPath)
ایجاد یک UiAutomatorRunner برای اجرای تستهای اتوماسیون رابط کاربری
| پارامترها | |
|---|---|
remoteDevice | IDevice : دستگاه راه دور برای تعامل با: اجرای تست، جمعآوری نتایج و غیره |
jarPaths | String : مسیرهای فایلهای jar که موارد تست UI Automator در آنها قرار دارند؛ این مسیرها باید مطلق یا نسبی به /data/local/tmp/ در دستگاه باشند. |
runnerPath | String : برنامهی جایگزین uiautomator runner برای استفاده، که میتواند null باشد و در این مورد از مقدار پیشفرض استفاده خواهد شد. |
روشهای عمومی
addBooleanArg
public void addBooleanArg (String name,
boolean value)یک آرگومان بولی برای قرار دادن در دستور instrumentation اضافه میکند.
| پارامترها | |
|---|---|
name | String : نام آرگومان بسته ابزار دقیق |
value | boolean : مقدار آرگومان |
addInstrumentationArg
public void addInstrumentationArg (String name,
String value)یک آرگومان برای گنجاندن در دستور instrumentation اضافه میکند.
باید قبل از 'run' فراخوانی شود. اگر آرگومانی با نام داده شده قبلاً ارائه شده باشد، مقدار آن لغو میشود.
| پارامترها | |
|---|---|
name | String : نام آرگومان بسته ابزار دقیق |
value | String : مقدار آرگومان |
لغو
public void cancel ()
درخواست لغو این اجرای آزمایشی را دارد.
دریافتپوششخروجینوع
public IRemoteAndroidTestRunner.CoverageOutput getCoverageOutputType ()
نوع پوشش آزمایشی تولید شده توسط اجراکننده را برمیگرداند. به CoverageOutput مراجعه کنید.
| بازگشتها | |
|---|---|
IRemoteAndroidTestRunner.CoverageOutput | |
دریافت نام بسته
public String getPackageName ()
نام بسته آخرین کلاس جاوا اضافه شده را برمیگرداند.
| بازگشتها | |
|---|---|
String | |
نام دونده را دریافت کنید
public String getRunnerName ()
نام پیشفرض کلاس UiAutomatorTestRunner را برمیگرداند.
| بازگشتها | |
|---|---|
String | |
حذف ابزار دقیق Arg
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 |
نام کلاس را تنظیم کنید
public void setClassName (String className)
فقط تستهای این کلاس را اجرا میکند. باید قبل از «اجرا» فراخوانی شود.
| پارامترها | |
|---|---|
className | String : نام کلاس کاملاً واجد شرایط (مثلاً xyz) |
نامهای کلاس را تنظیم کنید
public void setClassNames (String[] classNames)
فقط تستهای موجود در کلاسهای ارائه شده را اجرا میکند. باید قبل از 'run' فراخوانی شود.
در صورت ارائه بیش از یک کلاس، به یک InstrumentationTestRunner نیاز است که از سینتکس آرگومان کلاس چندگانه پشتیبانی کند.
| پارامترها | |
|---|---|
classNames | String : آرایهای از نامهای کلاس کاملاً واجد شرایط (مثلاً xyz) |
پوشش مجموعه
public void setCoverage (boolean coverage)
این حالت پوشش کد را برای این اجرای آزمایشی تنظیم میکند.
| پارامترها | |
|---|---|
coverage | boolean |
تنظیم پوشش گزارش موقعیت مکانی
public void setCoverageReportLocation (String arg0)
محل گزارشهای پوشش تولید شده را تنظیم میکند.
| پارامترها | |
|---|---|
arg0 | String |
اشکالزدایی تنظیمشده
public void setDebug (boolean debug)
این حالت اشکالزدایی (debug mode) را برای این اجرای آزمایشی تنظیم میکند. اگر مقدار آن درست باشد، اجراکنندهی آزمایشی اندروید قبل از ادامهی اجرای آزمایشی، منتظر اتصال یک اشکالزدا (debugger) خواهد ماند.
| پارامترها | |
|---|---|
debug | boolean |
نادیده گرفتن
public void setIgnoreSighup (boolean value)
گزینهای را در uiautomator تنظیم میکند تا SIGHUP را نادیده بگیرد.
| پارامترها | |
|---|---|
value | boolean : اگر روی درست تنظیم شده باشد، سیگنال را نادیده میگیرد |
فقط تنظیم ورود
public void setLogOnly (boolean logOnly)
این اجرای آزمایشی را روی حالت فقط ثبت وقایع تنظیم میکند - از اجرای آزمایش صرف نظر میکند.
| پارامترها | |
|---|---|
logOnly | boolean |
setMaxTimeToOutputResponse
public void setMaxTimeToOutputResponse (long timeout,
TimeUnit unit)حداکثر زمان مجاز بین خروجی دستور shell که تستها را روی دستگاهها اجرا میکند، تنظیم میکند.
این امکان تنظیم یک مهلت زمانی را فراهم میکند تا در صورت گیر کردن و تمام نشدن تستها، بتوانید از آن استفاده کنید. این با مهلت زمانی معمول در اتصال متفاوت است.
به طور پیشفرض هیچ مهلت زمانی مشخص نخواهد شد.
| پارامترها | |
|---|---|
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 |
نام متد را تنظیم کنید
public void setMethodName (String className,
String testName)فقط متد تست مشخص شده را برای اجرا تنظیم میکند. باید قبل از 'run' فراخوانی شود.
| پارامترها | |
|---|---|
className | String : نام کلاس کاملاً واجد شرایط (مثلاً xyz) |
testName | String : نام متد |
نام اجرا را تنظیم کنید
public void setRunName (String runName)
یک نام اجرای سفارشی تنظیم کنید تا در هنگام اجرا به ITestRunListener گزارش شود run(
اگر مشخص نشده باشد، از نام بسته استفاده خواهد شد
مجموعه تست مجموعه
public void setTestCollection (boolean b)
این اجرای آزمایشی را در حالت جمعآوری آزمایشی تنظیم میکند. اگر درست باشد، از اجرای آزمایشی صرف نظر میکند و تمام آرگومانهای مناسب اجراکننده مورد نیاز برای یک جمعآوری آزمایشی موفق را تنظیم میکند.
| پارامترها | |
|---|---|
b | boolean |
نام بستهی آزمایشی را تنظیم کنید
public void setTestPackageName (String packageName)
برای اجرای تمام تستها در بستهی مشخص شده تنظیم میشود. باید قبل از 'run' فراخوانی شود.
| پارامترها | |
|---|---|
packageName | String : نام کامل بسته (مثلاً xyz) |
تنظیم اندازه تست
public void setTestSize (IRemoteAndroidTestRunner.TestSize size)
تنظیم میکند که فقط تستهایی با اندازه داده شده اجرا شوند. باید قبل از 'run' فراخوانی شود.
| پارامترها | |
|---|---|
size | IRemoteAndroidTestRunner.TestSize : TestSize برای اجرا. |
روشهای محافظتشده
دستور getRunCommand
protected String getRunCommand ()
| بازگشتها | |
|---|---|
String | |
دریافت مسیر اجرا
protected String getRunnerPath ()
| بازگشتها | |
|---|---|
String | |