Selenium webdriver 使用Selenium的android中的状态栏高度

Selenium webdriver 使用Selenium的android中的状态栏高度,selenium-webdriver,automation,appium,Selenium Webdriver,Automation,Appium,我一直在从事Appium测试,并为自动化测试编写Java代码。对于一个问题,我需要确定Android设备/模拟器状态栏的高度。web驱动程序getSize()方法包括整个屏幕,因此也包括状态栏的高度。是否有一种方法可以单独识别状态栏的高度 我尝试的是通过id:com.android.systemui:id/status\u bar查找状态栏,但是findElementById()抛出了一个异常:“使用给定的搜索参数在页面上找不到元素。”我认为,它只在应用程序屏幕区域内查找id,因此找不到状态栏i

我一直在从事Appium测试,并为自动化测试编写Java代码。对于一个问题,我需要确定Android设备/模拟器状态栏的高度。web驱动程序getSize()方法包括整个屏幕,因此也包括状态栏的高度。是否有一种方法可以单独识别状态栏的高度

我尝试的是通过id:com.android.systemui:id/status\u bar查找状态栏,但是findElementById()抛出了一个异常:“使用给定的搜索参数在页面上找不到元素。”我认为,它只在应用程序屏幕区域内查找id,因此找不到状态栏id。
任何帮助/提示都将不胜感激。

您可以查看appium inspector或uiautomationviewer以获取屏幕截图。从中,您将能够找到状态栏项及其定位器属性。它包括状态栏的高度宽度。此外,一旦找到状态栏元素,您也可以从自动化代码中找到相同的元素。

您可以检查appium inspector或uiautomationviewer以获取屏幕的屏幕截图。从中,您将能够找到状态栏项及其定位器属性。它包括状态栏的高度宽度。此外,一旦找到状态栏元素,您也可以从自动化代码中找到相同的内容。

因为我在搜索相关主题时偶然发现了这一条,所以我决定在这里创建我的第一条评论,即使这是一篇非常古老的帖子

到今天为止,AndroidDriver在其功能中返回状态栏高度。 在C#中,您可以从以下方面获得该信息:

AndroidDriver<AppiumWebElement> driver = new AndroidDriver<AppiumWebElement>(appiumHubUrl, desiredCapabilities);
object statBarHeightObj = driver.Capabilities.GetCapability("statBarHeight");
// go on with conversion....
AndroidDriver-driver=新的AndroidDriver(appiumHubUrl,desiredCapabilities);
object statBarHeightObj=driver.Capabilities.GetCapability(“statBarHeight”);
//继续转换。。。。

这些功能甚至可以显示有关视口矩形和像素比率的信息,这在处理混合应用程序时可能很有用。

当我在搜索相关主题时偶然发现这一条时,我决定在这里创建我的第一条评论,即使这是一篇非常古老的帖子

到今天为止,AndroidDriver在其功能中返回状态栏高度。 在C#中,您可以从以下方面获得该信息:

AndroidDriver<AppiumWebElement> driver = new AndroidDriver<AppiumWebElement>(appiumHubUrl, desiredCapabilities);
object statBarHeightObj = driver.Capabilities.GetCapability("statBarHeight");
// go on with conversion....
AndroidDriver-driver=新的AndroidDriver(appiumHubUrl,desiredCapabilities);
object statBarHeightObj=driver.Capabilities.GetCapability(“statBarHeight”);
//继续转换。。。。

这些功能甚至可以显示有关视口矩形和像素比率的信息,这在处理混合应用程序时可能很有用。

这就是我尝试过的。首先,我使用UIAutomatorViewer定位状态栏,并找到它的id(如问题中所述)。然后,我尝试在代码中使用该id查找状态栏。问题来了,Appium不返回任何与状态栏id对应的web元素。这就是我所尝试的。首先,我使用UIAutomatorViewer定位状态栏,并找到它的id(如问题中所述)。然后,我尝试在代码中使用该id查找状态栏。问题来了,Appium不返回与状态栏id对应的任何web元素。