1.Issue:
Robot Framework自动化测试框架,AppiumLibrary开发包,Swipe()方法,会经常出现问题。如执行两次Swipe()但是两次滑动操作的距离却不一样。(这个问题官方也承认有此问题)
2.Scenario:
场景:用Android手机,自动地滑动到期待位置。
分析:此场景需要2个问题:1个是使用Android解决滑动问题,另1个是解决滑动到期待的位置问题,比如滑动到手机非当前页面的某一个button或某一个text所在位置
3. Solution(思路):
需要用Swipe by Percent()方法,代替Swipe()。具体:
check element/button whether clickable status
If no, run Swipe By Percent()
If yes, click it
Robot framework,Swipe By Percent() 脚本:
AppiumLibrary.Swipe By Percent 50 99 50 10 #go down
AppiumLibrary.Swipe By Percent 50 10 50 99 #go up
4. Solution(举例):
Robot Framework脚本:
MobileScrollUpToInputAccountText
FOR ${i} IN RANGE 50
${status} Run Keyword And Return Status AppiumLibrary.Click Element ${xxxx_element_locator}
Run Keyword If '${status}'=='True' Exit For Loop
... ELSE AppiumLibrary.Swipe By Percent 50 50 50 99
END