python selenium 自动化测试框架搭建
PC端
需要安装python环境
下载python相关selenium包
去官网下载chrome webdriver 根据当前chrome版本选择下载 http://chromedriver.chromium.org/downloads
配置环境变量 chromdriver 例如 D:/develop/webdriver
相关代码如下
# -*- coding: utf-8 -*-
import random
from time import sleep
from selenium import webdriver
from selenium.webdriver import ActionChains
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import WebDriverWait
from elecall import Call
driver = webdriver.Chrome()
driver.implicitly_wait(10)
driver.maximize_window()
url = "https://www.1688.com/"
driver.get(url)
# sleep(2)
# 设置明确等待
WebDriverWait(driver, 10, 0.5).until(EC.visibility_of_element_located((By.XPATH, '//*[@id="check-dialog"]')))
# js = 'document.getElementById("check-dialog").style.display="block";'
# driver.execute_script(js)
# WebDriverWait(driver, 10, 0.5).until(EC.visibility_of_element_located((By.XPATH, '//*[@id="fui_widget_2"]/input')))
# wait.until(Call(driver))
inp = driver.find_element_by_class_name('result')
action = ActionChains(driver)
action.move_to_element(inp).perform()
sleep(1)
ul = driver.find_element_by_class_name('fui-combobox-panel').find_element_by_tag_name('div').find_element_by_tag_name(
'ul')
lis = ul.find_elements_by_xpath(".//li")
print(len(lis))
li = lis[1]
action.click(li).perform()
sleep(3)
ok = driver.find_element_by_class_name('identity-confirm')
action.click(ok).perform()
sleep(1)
# driver.find_element_by_id("kw").send_keys('alert("小鲜肉")')
# sleep(3)
# driver.find_element_by_id("su").click()
# sleep(3)
driver.quit()
app端环境配置(安卓自动化环境配置)
安装Android SDK(安卓软件开发包),测试Android手机必然是要安装Android SDK。
下载地址:http://tools.android-studio.org/index.php/sdk/ (直接下载zip版本,解压至任意目录即可)
也可以用链接:https://pan.baidu.com/s/14IT584E249LmmkiPycSzmw 密码:ek6s
添加环境变量 ANDROID_HOME的变量。
安装node.js,由于Appium的server端是node.js编写的所以需要先安装node.js。安装node.js后,可以直接通过npm安装Appium。到官网下载node.js:https://nodejs.org/en/download/
但是node.js官网版本太高,会出现报错
所以安装node.js6.8.0 版本即可,下载链接https://nodejs.org/zh-cn/download/releases/
appium 建议安装最新版本操作方便
python 通过 appium 发送指令到appium adb命令控制手机
未完,后期更新
常用连接参数
{ "platformName": "Android", "platformVersion": "5.1.1", "deviceName": "127.0.0.1:5555", "appPackage": "com.ss.android.ugc.aweme", "appActivity": ".MainActivity", "noReset": true }