如何知道使用Appium的是平板电脑还是手机?

如何知道使用Appium的是平板电脑还是手机?,appium,Appium,有没有办法知道我是在针对平板电脑还是手机进行测试? 我已经找到了几种方法来确定答案,但是对于android开发者来说。我需要知道启动appium测试的过程 谢谢如果是关于屏幕分辨率的问题,您可以通过检查以下内容始终找到此问题: 元素。getLocation().getX() 元素。getSize().getWidth() 此外,为什么需要通过编程进行检查?如果是关于屏幕分辨率的,您可以通过检查以下内容来找到此选项: 元素。getLocation().getX() 元素。getSize().get

有没有办法知道我是在针对平板电脑还是手机进行测试? 我已经找到了几种方法来确定答案,但是对于android开发者来说。我需要知道启动appium测试的过程


谢谢

如果是关于屏幕分辨率的问题,您可以通过检查以下内容始终找到此问题:

元素。getLocation().getX() 元素。getSize().getWidth()


此外,为什么需要通过编程进行检查?

如果是关于屏幕分辨率的,您可以通过检查以下内容来找到此选项:

元素。getLocation().getX() 元素。getSize().getWidth()


此外,为什么需要通过编程方式对其进行检查?

我的方法是在设备定义中添加自定义属性(我使用量角器框架进行测试)。例如:

{
   // iPhone 6s 
   seleniumAddress: 'http://localhost:8105/wd/hub',
   browserName: 'safari',
   platformName: 'iOS',
   platformVersion: '8.4.1',
   deviceName: 'iPhone 6 Plus',
   udid: 'xxxxxxxxxxxxxxxxxxxxxxxxxxx',
   deviceType: 'iPhone' 
},

{
   // iPad Mini 
   seleniumAddress: 'http://localhost:8106/wd/hub',
   browserName: 'safari',
   platformName: 'iOS',
   platformVersion: '8.4.1',
   deviceName: 'iPad Mini',
   udid: 'xxxxxxxxxxxxxxxxxxxxxxxxxxx',
   deviceType: 'iPad' 
},
然后,在我的JS代码中获取deviceType,如下所示

// This function will return true if the device under test is phone
isPhone: function() {
    if ( browser.deviceType === "iPad" ) {
        return false;
    } else {
        return true;
    }
},
对于Android设备,您也可以这样做


希望它能像我所做的那样,通过在设备定义中添加自定义属性(我使用量角器框架进行测试),对您有所帮助。例如:

{
   // iPhone 6s 
   seleniumAddress: 'http://localhost:8105/wd/hub',
   browserName: 'safari',
   platformName: 'iOS',
   platformVersion: '8.4.1',
   deviceName: 'iPhone 6 Plus',
   udid: 'xxxxxxxxxxxxxxxxxxxxxxxxxxx',
   deviceType: 'iPhone' 
},

{
   // iPad Mini 
   seleniumAddress: 'http://localhost:8106/wd/hub',
   browserName: 'safari',
   platformName: 'iOS',
   platformVersion: '8.4.1',
   deviceName: 'iPad Mini',
   udid: 'xxxxxxxxxxxxxxxxxxxxxxxxxxx',
   deviceType: 'iPad' 
},
然后,在我的JS代码中获取deviceType,如下所示

// This function will return true if the device under test is phone
isPhone: function() {
    if ( browser.deviceType === "iPad" ) {
        return false;
    } else {
        return true;
    }
},
对于Android设备,您也可以这样做


希望它能有所帮助

,因为如果在手机或平板电脑中显示相同的元素,我会有不同的id。我想使用相同的代码,并知道是否是平板电脑/手机在寻找正确的id。因为如果相同的元素显示在手机或平板电脑中,我会有不同的id。我想使用相同的代码,并知道这是否是一个平板电脑/手机在寻找正确的id。如果你知道你的测试正在一些平板电脑和手机上运行,你可以获取UDID并在这些UDID中运行你的特定测试。你得到答案了吗?如果你知道你的测试正在一些平板电脑和手机上运行,你只需要获取UDID并在这些UDID中运行你的特定测试,你得到答案了吗?