TestOps自动化课程之学习第二天

Hello,大家好。又到了清风为大家总结时间了,今天来给大家总结点什么东西呢?在我们上周六开始了自动化班级的第二天上课,而我今天就来给大家分享一下上周六的课程我们学习了什么知识。

先来给大家看下思维导图,简单明了的知道这一天我们学了什么。

从思维导图看起来感觉内容不是很多,但是呢?其实很多隐藏内容是用文字解释不了的。

Selenium元素定位篇

一般来说,在外面大家上课的时候,很多老师讲selenium只是讲这个元素是怎么去操作,怎么去定位的。而我们六道老师就不一样了,他先使用示例让大家明白这个元素是怎么操作的,然后再从源码出来,告诉同学们查找元素在后台是怎么去执行并操作的。下面我们来看下findelement是怎么查找元素的(ById举例):

1. 首先我们进到findElement对象中,发现是返回by的findelement对象(传入的是什么呢?传入的其实就是webdriver对象),那我们再进入by的方法中。

2. 在by类中能看到findelement定义了一个list集合对象(allElements),这个集合做了什么事情呢?做了一个findElements找寻所有元素的事情(且看第三步)。然后做了一个判断返回的元素集合是否不为空,不为空则返回元素集合的第一个元素(因为是findelement)。

3. 在这里去看看findelements是怎么实现的。从下图能看到首先判断context对象(driver对象)是否是FindsById的实现类,在这里满足条件,走到findElementsById方法(传入id),再去看它是如何实现的。

4. 调用findelements方法,传入id类型数据,using为前面传入的id。再看findElements的实现,首先判断id是否为空,为空抛出异常。不为空则创建一个response对象接收执行的结果(execute执行做了什么事情?其实就是发送了一条http协议的请求,把参数作为json数据发送到我们的服务端driverservice,然后服务端根据参数到浏览器上查找元素,并把执行的结果返回回来),取到结果后判断结果是否为空,为空创建空对象。不为空则创建一个allElements集合,把结果转换成allElements集合。转换完成然后进行检查,检查找到的元素是否都是webelement元素,如果是则做强制类型转换为webElement,再放回集合中,最后返回集合(返回第二步)。

清风在这里给大家分享的只能说是六道老师讲解的一小部分,要知道具体讲的内容,还是要参与到我们的课程中。

分享一下六道老师:

六道 :  超过15年的软件测试从业经历;前华为高级测试工程师,互联网公司测试总监;ISTQB注册讲师;美国ASQ协会认证的质量工程师;PMP项目管理专家;测试技术布道者。依托于一切基于实际问题场景并解决实际问题的授课方式,力求穷尽解决学员提出的每一个问题。课程务实,理论知识体系丰富,技术功底扎实,受到学员的一致好评。

小伙伴们,你们还在观望吗?别看了,再看你就跟不上大家了。

我还在这里等着你们,欢迎你们联系我!

我是清风,我为自己代言

TestOps|测试运维全生命周期推动质量
(0)

相关推荐

  • TestOps自动化课程之学习第一天

    Hello,大家好.又到了清风为大家总结时间了,今天来给大家总结点什么东西呢?在我们上周六开始了自动化班级的第一天上课,而我今天就来给大家分享一下上周六的课程我们学习了什么知识. 先来给大家看下思维导 ...

  • TestOps自动化课程之学习第三天

    Hello,大家好.又到了清风为大家总结时间了,今天来给大家总结点什么东西呢?在我们上周六开始了自动化班级的第三天上课,而我今天就来给大家分享一下上周六的课程我们学习的一丢丢知识. 今天跟大家分享的知 ...

  • TestOps自动化课程之学习第四天

    Hello,大家好.又到了清风为大家总结时间了,今天来给大家总结点什么东西呢?在我们上周六开始了自动化班级的第四天上课,而我今天就来给大家分享一下上周六的课程我们学习的一丢丢知识. 先来给大家看看,我 ...

  • TestOps性能课程之学习第一天

    今天是我们TestOps性能课程的第一天,我们来为今天的课程做个小总结.跟着芒果一起好好学习,天天向上~ 什么是性能测试.性能问题产生的原因 云层老师认为性能测试可以被称为性价比测试,它本质上其实是对 ...

  • TestOps性能课程之学习第三天

    跟着芒果一起,好好学习,天天向上.上周六是我们TestOps性能课程的第三天,我们来为这一天的课程做个小总结~ 周六的性能课是由云层老师带来的Loadrunner进阶: 云层老师从Loadrunner ...

  • TestOps性能课程之学习第五天

    跟着芒果一起,好好学习,天天向上.上周六是我们TestOps性能课程的第五天,我们来为这一天的课程做个小总结~(关于第四天的课程总结,芒果之后再为大家推出) 从大的角度来说性能测试有三大步骤:负载.监 ...

  • TestOps性能测试课程学习之第六天

    跟着芒果一起好好学习,天天向上~ 上周六是我们TestOps性能进阶课程第六天--性能瓶颈与分析的学习.这一天的课程依旧是干货满满,云层老师从构建性能测试分析思路.性能瓶颈定位.常见性能分析模型.性能 ...

  • TestOps自动化测试课程学习之第三天

    跟着芒果一起,好好学习,天天向上.上周六是我们TestOps自动化班Python课程的第三天,我们来为这一天的课程做个小总结~ 周六的自动化课程是由芒果给大家带来的Python函数及函数调用.Pyth ...

  • LAC 课程笔记丨第二讲 泡沫街区 – 一场尊重历史与案例分析的遐想式设计

    文中素材已得到原作者授权,如需转载请联系我们 编者按:感谢刘斐辞老师的精彩分享!通过Upenn第二学期SuperBlock Studio设计解析,让我们了解到建筑设计从理论研究切入,到建筑设计落地如何 ...