Appium + python -always_allows弹窗
from appium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import os
from time import sleep #apk 路径
PATH = lambda x : os.path.join(os.path.dirname(os.path.realpath(__file__)),x) #百度下载开发者头条,放在当前脚本目录
print(PATH("toutiao.apk")) desired_caps = {
"platformName":"Android",
"platformVersion":"9",
"deviceName":"4871660c",
"app":PATH("toutiao.apk"),
"appPackage":"io.manong.developerdaily",
"appActivity":"io.toutiao.android.ui.activity.LaunchActivity",
"noReset":True,
"autoAcceptAlerts":"true"
} driver = webdriver.Remote("http://localhost:4723/wd/hub",desired_caps) sleep(3)
#打印屏幕宽和高
print(driver.get_window_size())
#获取屏幕的宽
x = driver.get_window_size()['width']
#获取屏幕的高
y = driver.get_window_size()['height'] # sleep(2)
# def swipe_right(driver,n=None):
# return:实现从右到左滑动,滑动时X轴起点小于终点
# x1 = size["width"] * 0.75 # 起点x1坐标
# y1 = size["height"] * 0.5 # y1 坐标
# x2 = size["width"] * 0.25 # 终点x2坐标
# for i in range(n):
# sleep(1)
# # driver.swipe(x1, y1, x2, y1, t)
# driver.swipe(6/7*x, 1/2*y, 1/7*x, 1/2*y, 100) def always_allow(driver,number=1,n=3):
"""
:param driver: function 权限弹窗默认允许 -- 传driver
:param number: 判断弹窗次数,默认5次
WebDriverWait 里面0.5s判断一次是否有弹窗,1s超时
"""
for i in range(number):
loc = ("xpath","//*[@text='允许']")
# id_text = 'resourceId("android:id/button1").text("允许")'
try:
# WebDriverWait(driver,1,0.5).until(EC.presence_of_element_located(loc)).click()
driver.switch_to_alert()
sleep(1)
driver.switch_to.alert.accept()
#return:实现从右到左滑动,滑动时X轴起点小于终点
for i in range(n):
sleep(1)
# driver.swipe(x1, y1, x2, y1, t)
driver.swipe(6 / 7 * x, 1 / 2 * y, 1 / 7 * x, 1 / 2 * y, 100)
except:
print("Error") if __name__ == "__main__":
# 调用始终允许函数
always_allow(driver)
# size = driver.get_window_size()
# swipe_right(driver,n=3)
Appium + python -always_allows弹窗的更多相关文章
- appium+python自动化47-首次打开app权限弹窗问题
前言 用真机运行appium代码,首次打开app有的手机会出现权限弹窗问题,一般这种弹窗都是在引导页前面或者引导页后面出现.权限弹窗上面的按钮都是固定的, 只需要定位到"始终允许" ...
- Appium python API 总结
Appium python api 根据testerhome的文章,再补充一些文章里面没有提及的API [TOC] [1]find element driver 的方法 注意:这几个方法只能通过sel ...
- appium+Python真机运行测试demo的方法
appium+Python真机运行测试demo的方法 一, 打开手机的USB调试模式 二, 连接手机到电脑 将手机用数据线连接到电脑,并授权USB调试模式.查看连接的效果,在cmd下运行命 ...
- android模拟器(genymotion)+appium+python 框架执行基本原理(目前公司自己写的)
android模拟器(genymotion)+appium+python 框架执行的基本过程: 1.Push.initDate(openid)方法 //业务数据初始化 1.1 v5db.p ...
- appium+python做移动端自动化测试
1 导言 1.1 编制目的 该文档为选用Appium作为移动设备原生(Native).混合(Hybrid).移动Web(Mobile Web)应用UI自动化测试的相关自动化测试人员.开发人员等提供 ...
- appium python ios 自动化
mac下搭建appium python selenium来针对ios应用进行自动化测试,并不是官网上的例子,自己程序调试成功. 前言:因为appium的安装前要先确定nodejs的安装.python的 ...
- appium+Python 启动app(二)
我们上步操作基本完成,下面介绍编写Python脚本启动app 打开我们pycharm新建.py文件 第一步:输入Python脚本代码: #coding=utf-8 from appium import ...
- appium+Python 启动app(一)
当我们appium和Python环境都配置好了,如何启动我们第一个app呢?下面介绍appium+Python启动app的操作步骤,为了能够详细查看,我们这里使用夜游神模拟器进行示范. 测试项目:QQ ...
- Appium + Python环境搭建(移动端自动化)
安装JDK,配置JDK环境 百度搜索下载就行,这里分享一个下载链接:https://pan.baidu.com/s/1snuTOAx 密码:9z8r. 下载好后点击进行安装.安装好后进行环境变量 ...
随机推荐
- chinason工作室-兄弟的工作室开张了,欢迎来访喔!
Chinason工作室,团队成员由多位多年从事软件开发及大型生产企业系统维护的工程师组成,借重传统国外协同软件的开发经验,结合国内企业实际需求,致力于本土企业工作流软件研发,workflow系统定制开 ...
- 11-c++虚拟函数
虚拟函数 #include "stdio.h" class A{ public: void print() { printf("%s","this i ...
- js里的深度克隆
ES6 数组克隆 let arr = [1,2,3,4,5]; let arr1 = [...a]; arr1 = ["a","b","c" ...
- Secret of Chocolate Poles (Aizu1378——dp)
Select Of Chocolate Poles 题意:有一个竖直放置的高度为l cm的盒子,现在有三种方块分别为1cm的白块,1cm的黑块,k cm的黑块,要求第一块放进去的必须是黑色的,盒子最上 ...
- 思维风暴 codeforces (1060A) Phone Numbers
这个题我真是我的问题,我看到这种题直接就想着怎么用string去枚举破解,开了一个数组去做结果模拟失败,可能开个stl容器能做的好一点...但是这个题完全不是这样做的...实际上直接比较8的个数和合法 ...
- Kail更新源、输入法、浏览器
更新源 kali官方的更新源:图中的kali-rolling是kali目前最新的代号,kali有两个代号(codename):sana和kali-rolling: 查看自己的kali linux源版本 ...
- 【codeforces 785D】Anton and School - 2
[题目链接]:http://codeforces.com/contest/785/problem/D [题意] 给你一个长度为n的括号序列; 让你删掉若干个括号之后,整个序列变成前x个括号为左括号,后 ...
- Redis学习总结(2)——Java使用Redis
安装 开始在 Java 中使用 Redis 前, 我们需要确保已经安装了 redis 服务及 Java redis 驱动,且你的机器上能正常使用 Java. Java的安装配置可以参考我们的 Java ...
- ZOJ 3233 Lucky Number
Lucky Number Time Limit: 5000ms Memory Limit: 32768KB This problem will be judged on ZJU. Original I ...
- C/C++ uchar的一个有趣用法
本系列文章由 @yhl_leo 出品,转载请注明出处. 文章链接: http://blog.csdn.net/yhl_leo/article/details/51377490 图像处理中常常使用的一种 ...