【问题标题】:Find element by ios_ui not working通过 ios_ui 查找元素不起作用
【发布时间】:2016-10-20 12:26:58
【问题描述】:
Appium 1.5.0 
Xcode  7.3
IOS 10.11.4 OSX EI Capitan
Using on:Simulator iOS 8.1

我的 XML

<?xml version="1.0" encoding="UTF-8"?>
<AppiumAUT>
    <UIAApplication  value="" dom="" enabled="true" valid="true" visible="true" hint="" path="/0" x="0" y="0" width="375" height="667">
        <UIAWindow name="" label="" value="" dom="" enabled="true" valid="true" visible="false" hint="" path="/0/0" x="0" y="0" width="375" height="667">
        </UIAWindow>
        <UIAWindow name="" label="" value="" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1" x="0" y="0.6875" width="375" height="665.625">
            <UIAImage name="icon-menu-logo.png" label="" value="" dom="" enabled="true" valid="true" visible="false" hint="" path="/0/1/0" x="11.71875" y="33.5" width="46.875" height="46.875">
            </UIAImage>
            <UIAStaticText  dom="" enabled="true" valid="true" visible="false" hint="" path="/0/1/1" x="72.65625" y="37.015625" width="244.921875" height="30.46875">
            </UIAStaticText>
            <UIAStaticText  dom="" enabled="true" valid="true" visible="false" hint="" path="/0/1/2" x="72.65625" y="56.9375" width="244.921875" height="24.609375">
            </UIAStaticText>
            <UIATableView name="" label="" value="rows 1 to 12 of 12" dom="" enabled="true" valid="true" visible="false" hint="" path="/0/1/3" x="0" y="122.5625" width="375" height="513.28125">
                <UIATableCell name="MARKETS" label="" value="" dom="" enabled="true" valid="true" visible="false" hint="" path="/0/1/3/0" x="0" y="122.5625" width="375" height="41.015625">
                    <UIAStaticText name="MARKETS" label="MARKETS" value="MARKETS" dom="" enabled="true" valid="true" visible="false" hint="" path="/0/1/3/0/0" x="76.171875" y="128.421875" width="223.828125" height="29.296875">
                    </UIAStaticText>
                </UIATableCell>
                <UIATableCell name="" label="" value="" dom="" enabled="true" valid="true" visible="false" hint="" path="/0/1/3/10" x="0" y="532.71875" width="375" height="41.015625">
                    <UIAStaticText name="" label="" value="" dom="" enabled="true" valid="true" visible="false" hint="" path="/0/1/3/10/0" x="0" y="532.71875" width="375" height="41.015625">
                    </UIAStaticText>
                </UIATableCell>
                <UIATableCell name="Sign out" label="" value="" dom="" enabled="true" valid="true" visible="false" hint="" path="/0/1/3/11" x="0" y="573.734375" width="375" height="41.015625">
                    <UIAStaticText name="Sign out" label="Sign out" value="Sign out" dom="" enabled="true" valid="true" visible="false" hint="" path="/0/1/3/11/0" x="23.4375" y="579.59375" width="280.078125" height="29.296875">
                    </UIAStaticText>
                </UIATableCell>
            </UIATableView>
            <UIAStaticText name="Dev-Cert" label="Dev-Cert" value="Dev-Cert" dom="" enabled="true" valid="true" visible="false" hint="" path="/0/1/4" x="23.4375" y="633.5" width="207.421875" height="24.609375">
            </UIAStaticText>
            <UIANavigationBar name="AUDIT TRAIL" label="" value="" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/5" x="0" y="24.125" width="375" height="51.5625">
                <UIAImage name="" label="" value="" dom="" enabled="true" valid="true" visible="false" hint="" path="/0/1/5/0" x="0" y="0.6875" width="375" height="75">
                    <UIAImage name="" label="" value="" dom="" enabled="true" valid="true" visible="false" hint="" path="/0/1/5/0/0" x="0" y="75.6875" width="375" height="0.5859375">
                    </UIAImage>
                </UIAImage>
                <UIAStaticText name="DEV-CERT" label="DEV-CERT" value="DEV-CERT" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/5/1" x="99.609375" y="67.484375" width="175.78125" height="11.71875">
                </UIAStaticText>
                <UIAButton name="icon nav menu" label="icon nav menu" value="" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/5/2" x="5.859375" y="31.15625" width="51.5625" height="35.15625">
                </UIAButton>
                <UIAButton name="Back" label="Back" value="" dom="" enabled="true" valid="true" visible="false" hint="" path="/0/1/5/3" x="9.375" y="37.6015625" width="24.609375" height="24.609375">
                </UIAButton>
                <UIAStaticText name="AUDIT TRAIL" label="AUDIT TRAIL" value="AUDIT TRAIL" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/5/4" x="125.390625" y="33.5" width="124.8046875" height="31.640625">
                </UIAStaticText>
            </UIANavigationBar>
            <UIATableView name="" label="" value="rows 1 to 8 of 100" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6" x="0" y="75.6875" width="375" height="585.9375">
                <UIATableGroup name="JUNE 16, 2016" label="" value="" dom="" enabled="true" valid="true" visible="false" hint="" path="/0/1/6/0" x="0" y="75.6875" width="375" height="25.78125">
                    <UIAStaticText name="JUNE 16, 2016" label="JUNE 16, 2016" value="JUNE 16, 2016" dom="" enabled="true" valid="true" visible="false" hint="" path="/0/1/6/0/0" x="0" y="75.6875" width="375" height="25.78125">
                    </UIAStaticText>
                </UIATableGroup>
                <UIATableCell name="CC Sep17" label="" value="" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/1" x="0" y="101.46875" width="375" height="72.65625">
                    <UIAStaticText name="CC Sep17" label="CC Sep17" value="CC Sep17" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/1/0" x="7.03125" y="109.671875" width="225" height="18.75">
                    </UIAStaticText>
                    <UIAStaticText name="--" label="--" value="--" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/1/1" x="7.03125" y="128.421875" width="180.46875" height="24.609375">
                    </UIAStaticText>
                    <UIAStaticText name="ICE | vivek_01" label="ICE | vivek_01" value="ICE | vivek_01" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/1/2" x="7.03125" y="150.6875" width="242.578125" height="21.09375">
                    </UIAStaticText>
                    <UIAStaticText name="Position Reset" label="Position Reset" value="Position Reset" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/1/3" x="196.875" y="126.6640625" width="171.09375" height="28.125">
                    </UIAStaticText>
                    <UIAStaticText name="-9 / --" label="-9 / --" value="-9 / --" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/1/4" x="241.40625" y="106.7421875" width="126.5625" height="24.609375">
                    </UIAStaticText>
                    <UIAStaticText name="04:01:00" label="04:01:00" value="04:01:00" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/1/5" x="258.984375" y="150.6875" width="108.984375" height="21.09375">
                    </UIAStaticText>
                </UIATableCell>
                <UIATableGroup name="JUNE 15, 2016" label="" value="" dom="" enabled="true" valid="true" visible="false" hint="" path="/0/1/6/2" x="0" y="174.125" width="375" height="25.78125">
                    <UIAStaticText name="JUNE 15, 2016" label="JUNE 15, 2016" value="JUNE 15, 2016" dom="" enabled="true" valid="true" visible="false" hint="" path="/0/1/6/2/0" x="0" y="174.125" width="375" height="25.78125">
                    </UIAStaticText>
                </UIATableGroup>
                <UIATableCell name="CC Sep17" label="" value="" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/3" x="0" y="199.90625" width="375" height="72.65625">
                    <UIAStaticText name="CC Sep17" label="CC Sep17" value="CC Sep17" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/3/0" x="7.03125" y="208.109375" width="225" height="18.75">
                    </UIAStaticText>
                    <UIAStaticText name="Bid @ 0" label="Bid @ 0" value="Bid @ 0" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/3/1" x="7.03125" y="226.859375" width="180.46875" height="24.609375">
                    </UIAStaticText>
                    <UIAStaticText name="LIM | DAY | ICE | vivek_01" label="LIM | DAY | ICE | vivek_01" value="LIM | DAY | ICE | vivek_01" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/3/2" x="7.03125" y="249.125" width="242.578125" height="21.09375">
                    </UIAStaticText>
                    <UIAStaticText name="Canceled" label="Canceled" value="Canceled" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/3/3" x="196.875" y="225.1015625" width="171.09375" height="28.125">
                    </UIAStaticText>
                    <UIAStaticText name="1 / 3" label="1 / 3" value="1 / 3" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/3/4" x="241.40625" y="205.1796875" width="126.5625" height="24.609375">
                    </UIAStaticText>
                    <UIAStaticText name="15:13:07" label="15:13:07" value="15:13:07" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/3/5" x="258.984375" y="249.125" width="108.984375" height="21.09375">
                    </UIAStaticText>
                </UIATableCell>
                <UIATableCell name="CC Sep17" label="" value="" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/4" x="0" y="272.5625" width="375" height="72.65625">
                    <UIAStaticText name="CC Sep17" label="CC Sep17" value="CC Sep17" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/4/0" x="7.03125" y="280.765625" width="225" height="18.75">
                    </UIAStaticText>
                    <UIAStaticText name="--" label="--" value="--" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/4/1" x="7.03125" y="299.515625" width="180.46875" height="24.609375">
                    </UIAStaticText>
                    <UIAStaticText name="ICE | vivek_01" label="ICE | vivek_01" value="ICE | vivek_01" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/4/2" x="7.03125" y="321.78125" width="242.578125" height="21.09375">
                    </UIAStaticText>
                    <UIAStaticText name="Cancel Request" label="Cancel Request" value="Cancel Request" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/4/3" x="196.875" y="297.7578125" width="171.09375" height="28.125">
                    </UIAStaticText>
                    <UIAStaticText name="-- / --" label="-- / --" value="-- / --" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/4/4" x="241.40625" y="277.8359375" width="126.5625" height="24.609375">
                    </UIAStaticText>
                    <UIAStaticText name="15:13:05" label="15:13:05" value="15:13:05" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/4/5" x="258.984375" y="321.78125" width="108.984375" height="21.09375">
                    </UIAStaticText>
                </UIATableCell>
                <UIATableCell name="CC Sep17" label="" value="" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/5" x="0" y="345.21875" width="375" height="72.65625">
                    <UIAStaticText name="CC Sep17" label="CC Sep17" value="CC Sep17" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/5/0" x="7.03125" y="353.421875" width="225" height="18.75">
                    </UIAStaticText>
                    <UIAStaticText name="Ask @ 0" label="Ask @ 0" value="Ask @ 0" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/5/1" x="7.03125" y="372.171875" width="180.46875" height="24.609375">
                    </UIAStaticText>
                    <UIAStaticText name="LIM | DAY | ICE | vivek_01" label="LIM | DAY | ICE | vivek_01" value="LIM | DAY | ICE | vivek_01" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/5/2" x="7.03125" y="394.4375" width="242.578125" height="21.09375">
                    </UIAStaticText>
                    <UIAStaticText name="Canceled" label="Canceled" value="Canceled" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/5/3" x="196.875" y="370.4140625" width="171.09375" height="28.125">
                    </UIAStaticText>
                    <UIAStaticText name="1 / 4" label="1 / 4" value="1 / 4" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/5/4" x="241.40625" y="350.4921875" width="126.5625" height="24.609375">
                    </UIAStaticText>
                    <UIAStaticText name="15:13:03" label="15:13:03" value="15:13:03" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/5/5" x="258.984375" y="394.4375" width="108.984375" height="21.09375">
                    </UIAStaticText>
                </UIATableCell>
                <UIATableCell name="CC Sep17" label="" value="" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/6" x="0" y="417.875" width="375" height="72.65625">
                    <UIAStaticText name="CC Sep17" label="CC Sep17" value="CC Sep17" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/6/0" x="7.03125" y="426.078125" width="225" height="18.75">
                    </UIAStaticText>
                    <UIAStaticText name="--" label="--" value="--" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/6/1" x="7.03125" y="444.828125" width="180.46875" height="24.609375">
                    </UIAStaticText>
                    <UIAStaticText name="ICE | vivek_01" label="ICE | vivek_01" value="ICE | vivek_01" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/6/2" x="7.03125" y="467.09375" width="242.578125" height="21.09375">
                    </UIAStaticText>
                    <UIAStaticText name="Cancel Request" label="Cancel Request" value="Cancel Request" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/6/3" x="196.875" y="443.0703125" width="171.09375" height="28.125">
                    </UIAStaticText>
                    <UIAStaticText name="-- / --" label="-- / --" value="-- / --" dom="" enabled="true" valid="true" visible="true" hint="" path="/0/1/6/6/4" x="241.40625" y="423.1484375" width="126.5625" height="24.609375">
                    </UIAStaticText>

这是 xml 的开始部分。当我在 appium 检查器 .tableViews()[1].cells() 中进行测试时,我得到了行。但是当我通过 python appium client 进行测试时,我得到了一个元素,它具有 visiblity 作为 false 和 @ 987654327@location0。我已经在网上检查了它的xpath版本,它工作正常,但在python客户端中同样失败。有人对此有任何想法吗?

附言

奇怪的是,如果我尝试.tableViews()[1].cells()[1].staticTexts(),它可以正常工作!!!!!!!!!!!!!!!我也知道 xml 是动态且不断变化的,但我们不使用 xpath,所以没关系我猜。

【问题讨论】:

  • 如果 key_name 是 Nonenon-Unique 可以使用索引调用! NameSpace 是唯一的定义,如果谈论 python dictionaries
  • @dsgdfg 我没听懂你
  • a = {"b" : "1", "b" : "2"} 如何调用第二个值? a["b"][1] 等于 .tableViews()[1].cells()[1].staticTexts(),需要所有 key 都是唯一的,否则只能与索引一起使用!清楚了 ?当然 Python 返回 last element 但如果在迭代器下搜索返回一个列表。如此简短的信息:your module work with searching result if got more than one results。检查您的模块源(appium),在“webdriver.py”上包含from selenium.webdriver.remote.webelement import WebElement as SeleniumWebElement
  • 通过什么得到find_elementsid/class 等? id 返回单个元素,但类返回一个列表。检查您的 XML 文件并计算 &lt;UIAWindow name="" 元素。
  • 尝试使用带有属性的 xpath。使用索引可能是个问题

标签: python ios appium appium-ios python-appium


【解决方案1】:

按照 dsgdfg 的建议,避免使用 dup 键将提高查找所需元素的可靠性。

【讨论】:

    猜你喜欢
    • 2016-07-28
    • 1970-01-01
    • 1970-01-01
    • 2019-10-06
    • 2020-05-03
    • 2021-12-22
    • 1970-01-01
    • 1970-01-01
    • 2017-01-29
    相关资源
    最近更新 更多