Trade Federation از یک انتزاع به نام ITestDevice
برای اجرای آزمایش ها استفاده می کند. این انتزاع دستگاه اندرویدی با کمترین مخرج مشترک را عینیت می بخشد:
- شماره سریال داره
- این حالت دارد: آنلاین، موجود، بازیابی یا در دسترس نیست
- مفهومی از قابلیت اطمینان دارد. به عنوان مثال، اگر دستوری را اجرا کنیم، میتوانیم بین حالتی که فرمان هنوز تمام نشده است، موردی که دستگاه از دستورات در حال اجرا پشتیبانی نمیکند و موردی که دستگاه هنگام اجرای دستور پاسخ نمیدهد، تفاوت قائل شویم.
کلاس های دستگاه
سه پیاده سازی اولیه ITestDevice
نشان دهنده سه مورد استفاده رایج است.
دستگاه فیزیکی
این یک قطعه سخت افزار واقعی است که با USB یا با استفاده از ویژگی TCP adb به دستگاه میزبان TF متصل می شود. کلاس TestDevice در بالای کتابخانه ddmlib قرار دارد که یک رابط جاوا برای adb است. بنابراین هر دستگاه فیزیکی فهرست شده در adb devices
را می توان نمونه سازی کرد و به عنوان TestDevice
استفاده کرد.
شبیه ساز
شبیهسازها بهویژه توسط TF مدیریت میشوند، زیرا در فرآیند دیگری زندگی میکنند. برای تعامل با یک شبیه ساز، آرگومان --emulator
را برای دستور مشخص کنید. برای اطلاعات بیشتر به LocalSdkBuildProvider و SdkAvdPreparer مراجعه کنید.
هیچ دستگاه
فرض کنید تستی دارید که اصلاً با دستگاهی ارتباط برقرار نمی کند. به عنوان مثال، ممکن است فقط یک فایل را از سرویسی دانلود کند و تأیید کند که خود فایل معتبر است. NullDevice یک ITestDevice
است که فقط یک خرد است. این یک شماره سریال مانند null-device-N
دارد و اکثر عملیاتها یا بدون عملیات بیصدا یا پرتاب انجام میشوند.