robotframework+appium自动化测试之get matching xpath方法的使用
今天做appium自动化的时候,碰到了一个场景。
描述如下:
点击酷我音乐中的一个一首歌曲,如果是付费歌曲就点击弹出框中的取消。
如果是非付费歌曲,就点击下一首。
点击元素 xpath=//*[contains(@text,"西海情歌")] #点击:西海情歌
${count} Get Matching Xpath Count //*[contains(@text,"立即开通")]
Run Keyword If ${count}==1 点击元素 xpath=//*[contains(@text,"取消")] ELSE 点击元素 id=iv_next
首先我们点击一首歌曲:西海情歌。
因为我们不知道此歌曲是否是付费歌曲,都是点击后才知道是否需要付费。如果是付费的歌曲,那么就会弹出付费弹出框。
如果是非付费歌曲,就直接播放。
其次:我们通过判断付费弹出框中的“立即开通”按钮的xpath出现的次数。
如果出现次数==1,那么,就说明此歌曲是需要付费的。我们就直接点击付费弹出框中的“取消”按钮。
否则,我们就点击下一首按钮(id=iv_next)
这里,我们就是通过xpath出现的次数作为判断条件,通过xpath出现的次数来判断此歌曲是否需要付费。从而做出我们相应的动作。