0
点赞
收藏
分享

微信扫一扫

测开(自动化测试selenium(WebDriver API))

梯梯笔记 2023-10-28 阅读 46

一个简单的 Web自动化 演示

操作的大致流程就是这样的,那么自动化脚本该如何去写呢?

1、定位元素的方法 - 只介绍两种最常使用的

2、xpath 选择器 - 了解

2、元素的操作

5、getText 用于获取元素的文本信息

另外,为什么我们是使用的 String 类型 来接收 getText 的 返回值呢?

还有一个点,这个百度一下按钮的值是获取不到的

我们来分析一下原因:

那么,我们如何获取到 标签的属性值呢?
使用 getAttribute 方法通过指定属性名称,来获取指定的属性值。

3、等待

3.1、强制等待

强制等待的优点 && 缺点

那么,存不存在一种更高效的方法?
在获取(定位)一个元素的时候,如何没有获取到,进行等待,一旦元素加载完成,立即获取。
也就是说:等待的时间不再是固定的,而是自适应。
下面,我们就看看 “隐式等待”。

3.2、隐式等待

隐式等待的优缺点

3.3、显示等待

显示等待的优缺点:

注意事项

4、打印信息

1、打印网页标题

下面我们就来书写 messagePrint 方法。

2、打印当前网页的链接(网址)

5、窗口

窗口切换

窗口大小的设置

窗口 置顶 / 置底 - 了解

操作浏览器的前进、后退

操作弹窗

我就网上随便找了几个图,我就说一下思路。

模拟 鼠标,键盘操作

键盘的操作,我们已经用过了,就是 sendKeys 方法


选择框

文件的上传

此时,我们来思考一件事:能不能定位 系统框中的元素,并进行操作?
selenium 不能直接操作系统框。

但是,这个操作是可以模拟实现。【sendKeys方法 输入 上传文件路径(包含文件名称)】

8、屏幕截图

如果我不告诉你:获取不到元素的原因,你能推导出原因吗?
这个时候就可以使用屏幕截图来解决。

selenium 提供了相应的(屏幕截图)方法:driver.getScreenshotAs(OutputType.返回的文件类型);
在使用之间,我们需要导入一个依赖

     <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.6</version>
        </dependency>

代码如下:

注意!我们是没有使用等待的,所以当前这个方法是一定会报异常的,会得到一下截图

举报

相关推荐

0 条评论