はじめに

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で取得できるということは、今後追加された場合も対応が簡単そうですね。

元記事はこちら

AWS Device Farmのサポート端末一覧を取得