はじめに
AWS クラウドで実際のスマートフォンやタブレットを使ったテストを実施しすることができるDevice Farm。
CLIでリストがとれることを教えてもらったので備忘録がてら書いておきます。
端末一覧の取得
aws devicefarm list-devices --region us-west-2
これだけです。こんな感じで一覧が取得できます。
{ "devices": [ { "formFactor": "PHONE", "name": "LG G2 (Sprint)", "resolution": { "width": 1080, "height": 1920 }, "image": "NA", "platform": "ANDROID", "heapSize": 0, "memory": 17179869184, "model": "G2", "os": "4.2.2", "cpu": { "frequency": "MHz", "architecture": "ARMv7", "clock": 2265.0 }, "arn": "arn:aws:devicefarm:us-west-2::device:A0E6E6E1059E45918208DF75B2B7EF6C", "manufacturer": "LG" }, .... ] }
iOSだけ取得
platformというattributeでも取れるのですが、Appleでgrepしてみました。
(–filters オプションは使えないようでした)
$ aws devicefarm list-devices --region us-west-2 --query 'devices[].{manufacturer:manufacturer,model:model}' --output text | grep Apple | sort -u Apple iPad 1st Gen Apple iPad 2 Apple iPad 3rd Gen Apple iPad 4th Gen Apple iPad Air Apple iPad Air 2 Apple iPad Mini 1st Gen Apple iPad Mini 2 Apple iPad Mini 3 Apple iPhone 4S Apple iPhone 5 Apple iPhone 5c Apple iPhone 5s Apple iPhone 6 Apple iPhone 6 Plus Apple iPod Touch 5th Gen
だいたいサポートされていますね。
Androidだけ取得
さっきの逆です
$ aws devicefarm list-devices --region us-west-2 --query 'devices[].{manufacturer:manufacturer,model:model}' --output text | grep -v Apple | sort -u ASUS Nexus 7 - 1st Gen ASUS Nexus 7 - 2nd Gen Amazon Kindle Fire HD 6 Amazon Kindle Fire HD 7 Amazon Kindle Fire HDX 7 HTC One M7 HTC One M8 HTC One M9 LG G Flex2 LG G Pad 7.0 LG G2 LG G3 LG G4 LG Nexus 4 LG Nexus 5 LG Optimus Fuel LG Optimus G Pro LG Optimus L70 LG Optimus L90 Motorola DROID RAZR HD Motorola DROID RAZR M Motorola DROID Turbo Motorola DROID Ultra Motorola Moto E - 2nd Gen Motorola Moto G Motorola Moto G - 2nd Gen Motorola Moto X Samsung Galaxy Light Samsung Galaxy Note Samsung Galaxy Note 2 Samsung Galaxy Note 3 Samsung Galaxy Note 4 Samsung Galaxy S3 Samsung Galaxy S3 LTE Samsung Galaxy S3 Mini Samsung Galaxy S4 Samsung Galaxy S4 Active Samsung Galaxy S4 mini Samsung Galaxy S5 Samsung Galaxy S5 Active Samsung Galaxy S6 Samsung Galaxy S6 Edge Samsung Galaxy Tab 2 10.1 Samsung Galaxy Tab 2 7.0 Samsung Galaxy Tab 3 7.0 Samsung Galaxy Tab 4 10.1 Nook Samsung Galaxy Tab 4 7.0 Nook Samsung Nexus 10 Sony Xperia Z2 Sony Xperia Z3 Sony Xperia Z3 Compact
シャープや富士通、中華Androidはないようですね。日本リージョンで公開されたら追加されるのでしょうか。期待しています。
まとめ
機種一覧がAPIで取得できるということは、今後追加された場合も対応が簡単そうですね。