一、通过打开app的方式打开浏览器
1、通过命令查看连接参数
查看浏览器包名:adb shell pm list package |findstr browser
查看浏览器版本:adb shell am start -a android.intent.action.VIEW -d https://liulanmi.com/labs/core.html
查看手机系统版本:adb shell getprop ro.build.version.release
查看入口页面:adb shell dumpsys activity | findstr mFocusedActivity
2、连接虚拟机、启动appium
3、执行如下脚本
import time
from appium import webdriver
import pytest
class TestCase():
def setup(self):
desire_cap = {
"platformName": "Android",
"platformVersion": "6.0.1",
"deviceName": "127.0.0.1:6555",
"noReset":"true",
# "browser": "Browser"
'appPackage': 'com.android.browser',
'appActivity':'com.android.browser.BrowserActivity'
}
self.driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub",desire_cap)
self.driver.implicitly_wait(5)
def teardown(self):
self.driver.quit()
def test01(self):
self.driver.get("http://m.taobao.com")
time.sleep(2)
if __name__ == '__main__':
pytest.main()
二、通过Chromedriver驱动的方式打开浏览器
与打开原生app方式不同的是,需要指定浏览器名称参数(browserName)、Chromedriver执行路径(chromedriverExecutable)
1、查看浏览器包名:adb shell pm list package |findstr browser
2、查看Chrome版本
(1)、adb shell am start -a android.intent.action.VIEW -d https://liulanmi.com/labs/core.html
(2)、通过Chrome浏览器的inspect工具
chrome://inspect
(3)appium日志中查看
3、下载Chromedriver
根据网上提供的Chrome与Chromedriver版本对应关系(https://www.cnblogs.com/loved-wangwei/p/8993013.html),在https://npm.taobao.org/mirrors/chromedriver/下载对应版本的Chromedriver.exe放在本地
我这里下载的是2.16
4、编写脚本
import time
from appium import webdriver
import pytest
desire_cap = {
"platformName": "Android",
"platformVersion": "6.0.1",
"deviceName": "127.0.0.1:6555",
"noReset":"true",
"browserName": "Browser",
"forceMjsonwp":"true",
#这里就是上一步下载的chromedriver.exe的路径
"chromedriverExecutable":r"C:Program FilesAppium
esourcesapp
ode_modulesappium
ode_modulesappium-chromedriverchromedriverwinchromedriver.exe",
# "chromeOptions": {'androidProcess': 'com.tencent.mm:tools'}
# 'appPackage': 'com.android.browser',
# 'appActivity':'com.android.browser.BrowserActivity'
}
driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub",desire_cap)
driver.implicitly_wait(5)
driver.get("http://m.baidu.com")
time.sleep(5)
driver.quit()
5、通过Chrome://inspect工具可以对app上页面进行元素定位等调试操作,但我这里inspect的时候一直404,还未解决