Xamarin.forms 使用Appium工具无法找到列表子元素

Xamarin.forms 使用Appium工具无法找到列表子元素,xamarin.forms,automated-tests,appium,hybrid-mobile-app,appium-ios,Xamarin.forms,Automated Tests,Appium,Hybrid Mobile App,Appium Ios,我在Appium测试工具(版本:1.15.1)中工作过,我正在测试Xamarin混合应用程序(iOS和Android)。我可以选择视图并获取xpath。但是,在列表视图中,我无法在列表视图中选择子元素,也找不到子元素的xpath 我们在源代码中提供了自动化id。即使是Appium inspector也无法获取元素。我们使用了Xamarin.Form4.3、4.2、3.5和3.0版本 <ListView.ItemTemplate> <Da

我在Appium测试工具(版本:1.15.1)中工作过,我正在测试Xamarin混合应用程序(iOS和Android)。我可以选择视图并获取xpath。但是,在列表视图中,我无法在列表视图中选择子元素,也找不到子元素的xpath

我们在源代码中提供了自动化id。即使是Appium inspector也无法获取元素。我们使用了Xamarin.Form4.3、4.2、3.5和3.0版本

<ListView.ItemTemplate>
                    <DataTemplate>
                        <ViewCell AutomationId="MyViewCell" AutomationProperties.IsInAccessibleTree="True" >
                            <StackLayout Padding="10" AutomationProperties.IsInAccessibleTree="True" >
                                <Label x:Name="titleLbl" AutomationId="TitleLabel" Text="{Binding Text}" d:Text="{Binding .}" LineBreakMode="NoWrap" Style="{DynamicResource ListItemTextStyle}" FontSize="16" AutomationProperties.IsInAccessibleTree="True" />
                                <Label x:Name="desc" AutomationId="DescLabel" Text="{Binding Description}" d:Text="Item descripton" LineBreakMode="NoWrap" Style="{DynamicResource ListItemDetailTextStyle}" FontSize="13" AutomationProperties.IsInAccessibleTree="True" />
                            </StackLayout>
                        </ViewCell>
                    </DataTemplate>
                </ListView.ItemTemplate>

请给出这个问题的解决方案


谢谢。

一种方法是打印出页面源代码,看看是否可以获得单独的xml。但问题也可能在于Xamarin的UI组件是否遵循XUIElement。我们可以从其他组件获取ID。但是在列表视图中,我们无法获取元素。如果它有一个问题意味着,你会为混合应用建议任何其他方式吗?如果Xamarin没有包含子元素的ID(或其他定位器),那么这个问题更可能发生在Xamarin上。如果没有信息,Appium inspector将无法检索此信息。一种方法是获取您正在查找的xml页面的源代码。如果子元素没有路径,它将无法与Appium Inspector一起使用。您需要请求开发人员添加它。