appium手机自动化测试环境搭建遇到的各种坑
经过几个日夜的奋战,终于把appium手机自动化测试的环境搭建起来了,尽管之前也多次尝试搭建成功过,但这次遇到的各种坑完全是从appium的原理及深层分析上解决的,中间遇到各种辛酸让人难受,但努力探索终于拨云见日了~~
appium之坑1,appium有关的安装包下载资源慢
由于下载资源在国外,最好能找个美国或欧洲的梯子,在梯子上讨东西还是比较快的,我发现用命令行下载比直接用浏览器下载速度要快得多
appium之坑2,错误提示:An element could not be located on the page using the given search parameters.
网上找了各种原因,大部分都是说抓取元素方法失效、更新appium版本之类的,看得我越来越糊涂,明明元素对着的,尝试过换方法(wd.FindElementById("com.tongxinluoke.ecg:id/mPswEt")换成 wd.FindElement(By.Id("com.tongxinluoke.ecg:id/mPhoneEt")))、换driver抓紧元素(remote driver换成 webdriver),但没什么作用,最后参考了外国老外的讨论(洋文好了还是有优质滴),总结出可能是因为和selenium版本不对称,但我安装的都是最新版的(appium 1.19.1 与selenium-driver 3.141.0 )没有理由版本不对称吧?我能想到的是因为release最新版的可能有信息不对称,所以我考虑果断降级,先把appium改成上一代版本 1.17.1
查看selenium版本号用如下命令:
appium之坑3,错误提示:appium Locator Strategy 'css selector' is not supported for this session
appium改成1.17.1版本之后又有了新的如上错误提示,说css selector不支持,我这能考虑的应该是selenium版本过高,命令在appium里不识别,于是果断把selenium再降级(当前版本为appium 1.17.1 与selenium-driver 3.141.0)
我使用的是C#,所以在nuget里执行Install-Package Selenium.WebDriver -Version 3.0.0 给到的提示为:Install-Package : 无法解析依赖项。“Selenium.WebDriver 3.0.0”与 'DotNetSeleniumExtras.PageObjects 3.11.0 约束: Selenium.WebDriver (>= 3.10.0)' 不兼容。
看样子最低版本的只能支持到3.10.0,于是把版本换成3.10吧
Install-Package Selenium.WebDriver -Version 3.10.0
安装成功
现在我的版本为appium 1.17.1 Selenium.WebDriver -Version 3.10.0,后来运行一切正常
appium配置之坑4 环境资源包管理
安装appium之后做各种配置,根据电脑本地环境的不同,需要环境资源包的配置调整,很容易搞混环境资源包的位置,这得需要先缕清基础环境的安装位置,配置位址,在该位置基础之上作资源包的改动
比如,我的本地环境包位置如下:
C:\Users\Liqiang.He\AppData\Roaming\Python\Python39\site-packages
C:\Users\Liqiang.He\source\repos\AppiumTesting\packages
以上只列举了本次遇到的各种坑,之前也遇到过更多的坑,经过我的努力基本上都排除了,如果您在appium环境的搭建上有任何问题,可以扫以下二维码加微信,共同讨论
reference: https://zxning.github.io/2020/07/21/appium-css-css-selector/