网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
在使用句柄以前,我们先了解它的基本概念,我们可以把通过Selenium WebDriver打开的每一个页面都看做一个小球,每个小球有唯一的标识(这个标识就是句柄)。我们的手就相当于WebDriver,它通过获取所有的小球,依次遍历查看小球的详情(比如Title)来判断小球是不是我们要的页面。如果是,则通过小球的唯一标识(句柄),把WebDriver指向到我们需要的网页页面,然后再进行元素处理。
Selenium WebDriver 句柄处理Api:
• driver.getwindowhandles() 获取当前浏览器打开的所有页面
• driver.getwindowhandle() 获取当前“活跃”页面
• driver.getTitle() 获取当前“活跃”页面的标题
• driver.switchTo().windows(handleName) 切换“活跃”页面
通过上述Api,我们可以实现多页面的切换和处理:
02、Windows控件
UI自动化中常常遇到上传文件的场景,以百度图片上传为例,上传是基于Windows的控件完成的(点击上传以后,会弹出Windows文件系统,让你选择Windows路径下的文件)
Selenium只能处理网页元素,无法处理Windows控件,遇到这种情况我们可以基于JavaRobot来处理Windows的控件。JavaRobot类用于为测试自动化、自运行演示程序和其他需要控制鼠标和键盘的应用程序生成本机系统输入事件,可以实现Windows的自动化测试。
03、JavaRobot常用API
以处理Windows弹窗选择文件为例,当我们点击网页元素,出现Windows弹窗后,可按下述逻辑处理:
• 基于Tookit往剪贴板输入文件路径
• 使用JavaRobot Enter键将光标移动到输入框
• 使用JavaRobot CTRL+C 键拷贝剪贴板中的内容
• 使用JavaRobot CTRL+V 粘贴内容到光标出
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
需要这份系统化的资料的朋友,可以戳这里获取](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**