Mac 上Appium遇到的问题

  1. Python已运行报错:SyntaxError: Non-ASCII character '\xe5' in file
    原因:python的默认编码文件是用的ASCII码,而你的python文件中使用了中文等非英语字符。
    解决办法:在Python源文件的最开始一行,加入一句
# coding=UTF-8(等号换为”:“也可以)
或者
# -*- coding:UTF-8 -*-
  1. Vi时如何查看行数
显示行数
:set nu
查看当前行
:nu
  1. 运营Appium录制的case,遇到的问题“ from appium import webdriver ImportError: No module named appium”
    原因:没有安装Appium-Python-client
  • 需要安装pip,折腾了半天,最后这个方法可行:

获取 pip安装文件

 curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py

安装 pip

python get-pip.py
  • 安装Appium-Python-Client
pip install Appium-Python-Client

4.通过Appium-Python-Client开跑,就报错“Encountered internal error running command: Error: The instrumentation process cannot be initialized within 30000ms timeout. Make sure the application under test does not crash and investigate the logcat output. You could also try to increase the value of ‘uiautomator2ServerLaunchTimeout’ capability.“
解决方法:

caps["automationName"]="Uiautomator1"
  1. 运行脚本报错“selenium.common.exceptions.NoSuchElementException: Message: An element could not be located on the page using the given search parameters.”
    解决方法:UI的定位方式不要用Xpath,而是用text-name或者其他by resourceid

6.报错“AttributeError: 'WebDriver' object has no attribute 'findElement'”
首先我打开之前学习课程老师提到的WebDriver API网页

7.find_element_by_name,该种元素定位方式已被弃用,appium版本在1.5以后就不再支持ByName的定位

8.报错“selenium.common.exceptions.NoSuchElementException: Message: An element could not be located on the page using the given search parameters.”
加入隐式等待,即可

driver.implicitly_wait(10)
  1. Pycharm里用pytest来跑case,不执行。命令行:
python -m pytest --setup-show tests/test_db.py 
  1. Xpath + instance 元素定位方式。
    //[@class="com.tencent.mm.ui.MMImageView" and @instance=0]
    //
    [@resource-id="android:id/title" and @instance=5]
    //[@text ="卡包" and @instance=5]
    //
    [@class="android.widget.TextView" and @instance=5]

  2. Mac上 Pycharm查看函数定义快捷键
    Option+Return

  3. Mac 上更新环境变量

#打开一个新terminal
vi .profile

你可能感兴趣的:(Mac 上Appium遇到的问题)