用xpath获取toast提示时,发现不管我传入的message是什么,都可以捕获到
来源:1-19 如何获取tost元素

慕粉1224429473
2018-11-17
您好,我用xpath获取toast提示时,发现不管我传入的message是什么,都可以捕获到
比如上面这段代码,我传入的参数是“MyName”,我直接点击登录按键弹出toast提示是“请输入账号”,但是竟然可以匹配到MyName这个文本,返回True……我发现随便输入message都能匹配到
写回答
3回答
-
Well_D
2019-05-13
你好,我也碰到了这个问题,不论我输入的toast文本内容是什么,都会给我返回true,看了这个回答,我还是没搞清楚,这是什么原因导致的,能详细解释一下么
012019-05-13 -
慕粉1224429473
提问者
2018-12-02
问题解决了,首先传入msg的写法这么写就可以捕获到toast提示,
msg_1 = "再按一次退出腾讯新闻" toast_match = (By.XPATH,"//*[contains(@text,msg_1)]")
如果按着下面的写法就无法捕获到toast提示,
msg_1 = "再按一次退出腾讯新闻" toast_match = (By.XPATH,"//*[contains(@text,'+msg_1+')]")
区别就在于传递参数msg_1的写法,还有一个就是并不是所有点击显示几秒消失的都是toast,之前用自动化测试手机qq轻聊版,它那个登陆错误提示就不是toast,应该是一个image view之类的,所以捕获不到text
00 -
Mushishi
2018-11-18
哈哈,这是奇葩的过程,你好,你使用ec这个方法 系统只会判断你这个页面的dom中是否有这个元素,而不会关心你这个元素是否显示。你可以给更换成visible的这个方法。
032018-12-02
相似问题