我正在为我的应用程序进行自动化移动测试。在输入用户名后登录页面
1)
WebElement element1 = driver.findElement(MobileBy.AccessibilityId("btnLogin"));
int x = element1.getLocation().getX();
int y = element1.getLocation().getY();
TouchAction action = new TouchAction((PerformsTouchActions) driver);
action.press(x,y).moveTo(x,y-90).release().perform();
2)
WebElement element1 = driver.findElement(MobileBy.AccessibilityId("btnLogin"));
((JavascriptExecutor)driver).executeScript("arguments[0].scrollIntoView(true);",element1);
3)
TouchAction action = new TouchAction((PerformsTouchActions) driver);
WebElement element1 = driver.findElement(MobileBy.AccessibilityId("com.a.b:id/imageView"));
WebElement element2 = driver.findElement(MobileBy.AccessibilityId("com.a.b:id/btnLogin"));
action.press(element1).moveTo(element2).release();
4)
JavascriptExecutor js = (JavascriptExecutor) driver;
HashMap<String, String> scrollObject = new HashMap<String, String>();
scrollObject.put("direction", "up");
scrollObject.put("element", "btnLogin");
js.executeScript("mobile: scroll", scrollObject);
5)
((AndroidDriver) driver).context("NATIVE_APP");
WebElement element = driver.findElementById("btnLogin");
int x = element.getSize().getWidth();
int xEnd = 0;
int yStart = element.getSize().getHeight()/2;
((AndroidDriver) driver).swipe(x, yStart, xEnd, yStart, 500);
我无法解决这个问题。。你能给我推荐一些示例代码来解决这个问题吗。
public static void swipeVertical(AppiumDriver driver, double startPercentage, double finalPercentage, double anchorPercentage, int duration) throws Exception {
Dimension size = driver.manage().window().getSize();
int anchor = (int) (size.width * anchorPercentage);
int startPoint = (int) (size.height * startPercentage);
int endPoint = (int) (size.height * finalPercentage);
new TouchAction(driver).press(anchor, startPoint).waitAction(duration).moveTo(anchor, endPoint).release().perform();
}
像这样调用上面的方法:
对于向上滚动:swopVertical((AppiumDriver)驱动程序,0.9,0.1,0.5,3000);
对于向下滚动:swipeVertical((AppiumDriver)驱动程序,0.1,0.9,0.53000)
# 一面HR 群面 轮流问几个人开放性的问题 # 二面 8/1 26min 实习负责的内容 用到了哪些Unity的组件 UGUI 优化方面,注意点 骨骼动画 有了解过吗 X Animator的原理? 用Animator的话要怎么去管理配置,方便策划美术? X Lua的协程 怎么管理协程的唤醒和挂起 X 运动模拟有做过吗,一个抛物线的运动 X 几何的算法有了解吗 2D的 点和三角形的关系怎么做 2D
C++11新特性了解哪些 什么是移动语义 面试官给了一个线程池代码,给五分钟读代码,然后给面试官讲解一遍(C++11写的) 万能引用的作用 线程池中vector<std::thread> 有什么用,thread的资源在堆上还是在栈上 vector扩容,什么时候触发扩容 除了mutex还用过其它的锁吗 讲讲C++17的读写锁 unique_lock 和 lock_guard 的区别 问线程池代码中,
前排提醒:一点编程语言相关的都没有问 第一个问题:贪吃蛇用什么结构存储:双向队列 第二个问题:a星算法了解过吗 碰到大c环怎么处理:记录一边尝试过的次数 下次选的时候选择尝试次数少的 第三个问题:介绍渲染管线 实际场景阴影怎么渲染:移动相机 第四个问题:如何判断扇形技能是否击中敌人:向量点乘,划分象限求余弦值 第五个问题:快速判断阶乘的大小:区间逼近法 整体体验:前几个问题还行 后面的基本就是顺着
4.16技术一面 1.栈和堆的区别(指内存上的栈和堆) 2.GC有哪些方法,分别讲一下他们的原理和优缺点 3.在unity里,GC会带来什么不好的影响,如何减少GC的触发 4.装箱拆箱是什么 5.频繁的装箱拆箱会造成什么后果,如何避免频繁的装箱拆箱 6.C++的vector是如何实现动态扩容的 7.map的底层原理 8.介绍红黑树的特点 9.unordered_map的底层原理 10.有哪些解决哈
时长:1小时 1. 自我介绍:5分钟 2. 项目问答 2.1 如果数据库的内容发生了改变,如何实现数据的迁移?(不懂) 2.2 项目的组织架构是什么样的? 2.3 我看你项目架构用的是MVC,那么还知道哪些架构?(MVVM) 2.4 MVVM和MVC的各自使用场景? 2.5 项目中遇到了哪些困难? 2.6 自己在项目中遇到困难如何进行解决的? 3. 开放性问答 3.1 为什么要选择iOS这个行业?
时长:1小时18分钟 1. 自我介绍:约5分钟 2. 开放性问答 2.1 你如何与团队成员之间进行高效沟通? 2.2 每个人都负责一个模块,那最后进行汇总组装的时候,如何进行测试? 3. iOS基础 3.1 MVC是指什么? 3.2 如何改进MVC的缺点?(引入MVVM) 3.3 既然引入了MVVM,那我为什么不在MVC中让Model引用View,或者View引用Model从而进行优化?(不可以,