1.较精准定位
2.关于Appium+RF的轴表达式
child:选取当前节点的所有子元素
parent:选取当前节点的直接父元素
descendant:选取当前节点的所有后代元素
ancestor:选取当前节点的所有先辈元素
preceding:选取当前节点之前的所有节点
preceding-sibling:当前节点之前的所有同级节点
following:选取当前节点之后的所有节点
following-sibling:当前节点之后的所有同级节点
/. :表示当前目录
/.. :表示上一级目录
其中已进入一个frame(非主frame),要想进入另一个frame时,必须使用关键字Unselect frame退回主frame才可进入另一个frame
5.contains 与 not contains
6.Appium(简单点说,Selenium是web端的自动化,Appium是app端的自动化)
Appium是一个自动化测试开源工具,支持iOS和android平台上的移动原生应用、移动Web应用和混合应用。Appium是一个跨平台工具,它允许测试人员使用同样的接口、基于不同的平台写自动化测试代码,大大增加了测试套件间代码的复用性。
- 移动原生应用:是指那些用iOS或者android sdk写的应用;
- 移动web应用:是指那些使用移动浏览器访问的应用,appium支持iOS的safari和android上的chrome;
- 混合应用:是指原生代码封装在网页视图(原生代码和web内容交互)。
——以上来自https://blog.csdn.net/zytthappy/article/details/79686354
appium通过chromedriver驱动webview,因此需要android system webview 与chromedriver版本相对应。
有关android webview与chromedriver更多知识:https://www.cnblogs.com/sao-fox/p/6396984.html
其中,WebView是一个用来显示Web网页的控件
8.RobotRemoteServer
robotremoteserver是一种远程库接口技术(remote library interface)。我们知道当我要使用的Robot Framework的库是被安装在..\Python27\Lib\site-packages\目录下面的。例如常用的Selenium2Library。但robotremoteserver就可以启动一个Library给Robot Framework用,不管这个库在本机的任何位置,或远程的某台主机上,或者这个库不是Python开发的。
——以上来自https://www.cnblogs.com/fnng/p/4960697.html
9.Get Element Attribute
10.List Variable
在@{list}被赋值而${list}没被赋值的情况下,系统会默认${f}是@{f}的Scalar形式。
在${list}被赋值而@{list}没被赋值的情况下,但它并不会默认@{f}是${f}的list形式。
List variable与 Scalar: https://blog.csdn.net/tulituqi/article/details/7907981
Append to list关键字: https://blog.csdn.net/tan10076/article/details/80433880
11.int() str() 及计算list长度
计算list长度
12.fiddler 抓包资料:Fiddler 抓包工具总结