Hello,大家好。又到了清风为大家总结时间了,今天来给大家总结点什么东西呢?在我们上周六开始了自动化班级的第一天上课,而我今天就来给大家分享一下上周六的课程我们学习了什么知识。
先来给大家看下思维导图,简单明了的知道这一天我们学了什么。
自动化介绍篇
一、我们要学习自动化,那么离不开我们的测试发展方向,于是六道老师给我们讲解了关于测试未来会发展的道路。
二、我们学习自动化的价值是什么?(提高自身的技术,工资更高这两点我们就不说了)
三、有哪些方面的自动化?有哪些工具可以辅助我们完成自动化?
这里还有个小插曲,给大家讲讲:
在讲解web自动化的时候,六道老师有分享过一个工具,叫做Sikulix,这个工具据说可以做所有的UI自动化,六道老师分享说:“这个工具是在吹牛,怎么吹牛的呢?这个工具完全使用的是图像识别技术,对比图片。如果你要做自动化的话,需要你先把你要操作的按钮截图放到这个工具中,这个工具根据你设置的图片在你的页面中去找对应匹配的按钮,找到了就帮你操作鼠标在这个位置点一下,这个时候不能操作鼠标,如果一操作鼠标移动,就会点不到了。所以,这个自动化工具速度特别慢,你可以想象一下,全程操作靠对比图片,这个速度能快的了吗?所以说这个自动化挺搞笑的。但是这个工具解决了一个问题,可以解决任何界面的处理,因为你只需要截个图,它是进行图片对比呀,不在乎你是使用什么框架,等于对于框架通吃。但是效率之低,令人发指啊!所以这个东西,它是扯淡的。你的屏幕分辨率变一下,它就识别不了了。”
环境搭建
自动化介绍完了,那我们就要开始去学习自动化了,但是在学习之前,我们要先学会怎么去搭建自动化需要的环境。
我们这次课程首选是使用JAVA语言来完成自动化,所以六道老师先讲解安装jdk,再安装开发工具eclipse,再使用maven来管理我们的项目及插件。
selenium基础篇
完成了开发环境的安装,这时候我们应该要学习自动化了吧!嘿嘿,你猜对了,但是呢?要学习自动化,就要去了解我们要使用什么框架去实现自动化,这个框架是怎么做到能让我们实现自动化的?最重要的,我们的六道老师是怎么去跟我们讲解的呢?
六道老师先讲解了selenium webdriver的由来与历史,然后教大家怎么去选择关于对应的浏览器的driver,带大家实现了第一个打开浏览器的操作。
学习框架,从源码入手!
六道老师带我们从webdriver源码入手,分析selenium webdriver的构造。
1. 分析webdriver怎么去打开一个空闲的端口
2. 分析webdriver是怎么查找默认可执行文件(chromedriver.exe)的
3. 分析driverservice的创建与启动
1)绑定空闲端口
2)查找webdriver.exe可执行文件
3 ) 创建service,传递参数(exe文件,端口,参数,环境)
4)启动服务
启动进程,锁定进程,启动service,解锁进程
4. 分析RemoteWebDriver原理
1)创建session,启动driverservice
2)传递命令及参数
3)执行命令(操作命令)
创建握手协议(建立http请求),命令转换(转换成浏览器命令),发送请求到driver service,service处理请求(控制浏览器)
4)最后获得service处理后的响应
5. 分析close与quit的区别
6,7,8 等等等等
清风在这里给大家分享的只能说是六道老师讲解的一小部分,要知道具体讲的内容,还是要参与到我们的课程中。