很实用的技巧,赞~
不是这个,是你用脚本获取到的 page source ,不是浏览器界面或者 uiautomaterviewer 获取的。
把你 page_source 的输出贴上来?
木有。。。
建议不要随便用 “大神” 这样的称呼,社区里面对这个称呼欢迎度一般。
另外,你第二个截图里面,是先切换了 webview 再查找原生控件的,顺序错了。切换 webview 后只能找到 webview 里面的网页控件,无法找到原生控件了。
至于为何找不到元素,可以先在你查找元素前增加一个输出页面 xml 布局源码的函数查看布局情况(函数印象中是 driver.page_source
,建议你查下 api 文档),确认下是否布局里面就没有你这个元素。
地铁 40 分钟 + 走路 15 分钟
你现在的问题是 adb devices 可以显示设备,但 Provider 无法使用设备。
adb devices 可以显示设备说明你的机器和设备之间的连接是没问题的,provider 无法使用,意味着 provider 无法和手机上的 stf service 连接,所以无法使用(这个 service 用于传图像信息等)。
当 provider 开着的时候,连接手机会自动安装 stf service 这个 android 应用,你可以往这个方向检查下这个应用是不是没有被成功安装。
建议你另外开贴来问吧。把你的完整脚本、执行命令、错误信息、环境信息等都发出来。
现在是没看懂你的报错是什么。。。另外,你的代码里有个很低级的错误,就是 try 和 except 里面都有个 return 。你一 return 不就退出这个函数了么,后面的 click 还怎么执行。。。
可以看下 http://www.techrepublic.com/article/keyboard-shortcuts-in-bash-and-zsh/
试了下,在 mac 命令行 (zsh 或 bash) 下,alt + 方向左键
可以做到按空格来跳光标,即每次都是跳到一个空格符的后一个字符,ssh 连接了远程机器后这种方法也是生效的。
不过不确定 windows 下是否也同样适用。
从日志里只能看出 Coverage.info
这个文件有问题,没有有效的记录。因为不知道这个文件是怎么来的,内容是啥,也无法追查下去。
建议把你详细的部署步骤、操作步骤(包括你觉得和报错有关的所有细节)和出错日志都发出来?
不需要什么额外配置,和你做普通真机调试差不多。
检查下安装 stf service 这个 apk 的时候是不是没有允许安装?
今天看到个 BackstopJS ,css 样式回归工具,不知道能不能满足楼主需要
你牵的驴子,它跟军队打了 10 年了。666 呀~
代码块是支持 C# 的,只是下拉列表里没加上。可以这么用:
```C#
你的代码...
赞,这些基础知识的坑确实需要有深入的了解。
从你的环境配置来看,有可能是真机 iOS 版本太低。Xcode 8 系列主要对应的是 iOS 10 系列,可能对 iOS 9 支持度一般。
可以拿台 iOS 10 试试。
还是没 xcode 版本。。。
那还是先解决 npm 重装 appium 的问题吧。
建议找下 android 官方的文档吧,或者 adb --help 查下。我相信这个机制不会消失的,有可能只是命令改了而已。
这个确实不好覆盖。不过如果这个 sql 不大复杂,确认有覆盖到这个 sql 对应的写入函数应该可以接受。如果 sql 很复杂,那得考虑用另外的方式去覆盖这块功能,例如单元测试。
不过我觉得没太大必要追求百分百的覆盖率,有个基础要求就好。对于手工测试这种场景,覆盖率数据的价值是根据未覆盖内容结合对代码的解析,得出未覆盖的功能或流程,然后由团队根据实际需要补充相关的测试用例,避免遗漏。
@mamian @wangpengfei100 我自己尝试了一下,踩到的坑及解决方案已补充到正文中,两位可以参考下。
补充一下公众号收到的一个如何获取 ID 的方法:
APP ID 可以到 APP 文件夹看(命令进入),也可以用 powershell 命令查,也可以直接看程序属性(程序要先调出 explorer.exe 文件夹)