selenium与appium依赖中类与类之间到底是如何继承的详解

本文详细探讨了selenium和appium在自动化测试开发中的类继承关系,特别是driver相关类的继承结构,并通过UML类图进行展示,强调了WebDriver接口的重要性以及MobileDriver在创建时的泛型需求。同时,还提到了其他常见类如JavascriptExecutor和WebElement的继承层次。

前言

下面我会把 selenium 依赖和 appium 依赖混合起来,因为二者依赖包之间本身就已经具备了一些类的相互继承关系,下面我会通过 uml 类图的形式非常清晰的展现

涉及 driver 的类的继承关系

下面这张图不够全面,但是足以把最常用最重要的和 driver 有关的类和接口囊入其中
在这里插入图片描述我们能从上图中得到哪些信息呢?

最上面的接口在往上无继承,WebDriver 是一个接口,我们平常使用WebDriver driver = new ChromeDriver()实际就是一个多态的体现,RemoteWebDriver 是一个实现类,这时我们能想到平常使用 selenium-grid 就要使用 new 一个 Remote 的驱动了,这是因为它本身是一个实现类提供了相应的构造器。我们还可以发现手机的驱动都是会一直继承到 WebDriver 的。并且我们去看源码会发现,手机端从 MobileDriver 开始就需要在创建时候指明泛型,该泛型需要继承 WebElement,WebDriver 还没要求要用泛型,可以发现 MobileDriver 中有不同的 findElement 方法,返回的就是该泛型类型。

其他常见类的继承

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

abcnull

您的打赏是我创作的动力之一

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值