您现在的位置是:首页 > 正文

【自动化测试】Java+Selenium自动化测试环境搭建

2023-11-13 08:38:26阅读 214

本主要介绍以Java为基础,搭建Selenium自动化测试环境,并且实现代码编写的过程。

1.Selenium介绍

Selenium 1.0 包含 core、IDE、RC、grid 四部分,selenium 2.0 则是在两位大牛偶遇相互沟通决定把面向对象结构化(OOPP)和便于编写代码的各自思想予以整合后形成的新工具,也就是我们所指的 Web Driver。Core 是 selenium 的核心,在后期虽然被封装,但只是减少了可视性,它依旧是驱动selenium 的核心;IDE 是一款 firefox 浏览器插件,主要用于新手或对编码还不熟悉的人员入门时使用,这个插件允许在 firefox 中录制一段 web 操作代码,导出后在 eclipse 中修改并运行,但测试人员在项目实际使用中不推荐使用这个插件,因为它只会降低测试人员的编码能力; Web Driver 是开展 web 页面测试的关键核心,也是目前主流测试工具之一。Selenium 可以结合 Junit 使用,既可以进行单元测试,也可以开展集成测试,既是代码测试工具,也是功能测试工具,下面我们就工具的使用一步一步的入门。

2. 环境配置

2.1 安装JDK

同样正确配置 jre 路径后点击下一步

输入:java –version 验证 jdk 安装正确性

2.2 配置环境变量

创建JDK Home路径

追加配置 path 的系统环境变量

3.Selenium IDE的使用

3.1 环境准备

1)安装 firefox

如果不使用默认安装,以后使用代码中是要加料的哦~,这里我们以普通用户习惯,不

安装在系统盘中,稍后将对需要修改配置的地方做说明。

3.2 使用selenium IDE

1) 安装 Selenium IDE 插件

打开 firefox 浏览器,附加组件搜索selenium IDE,在弹出的软件安装页面中点击立即安装,安装后重新启动浏览器,插件将起作用。

2) Selenium IDE 其他的重要功能

本文开始时提到了,Selenium IDE 还有一个重要的功能就是把脚本的转

换,一起看看吧:>

Selenium IDE 可以把 HTML 的脚本转为 C#,JAVA 等等其他语言的脚本,为我们日后写 WebDriver 的测试案例提供了极大的方便。

4.WebDriver实例

4.1 准备工作

打开 Eclipse,首先在 windowspreferences 下选择编码格式为 UTF-8,如下图所示:

安装TestNG,Help-Eclipse Marketplace

4.2 新建项目

File new project,选择 java 项目,下一步:

输入项目名称 testngstudynextfinish

创建selenium脚本,选择TestNG class,点击Next

4.3 开始编码

  • Java+Selenium 实现登录功能

说明:纯 Java 的时候不需要引入TestNG,只需要引入“selenium-server-standalone-2.21.0.jar”包。

文件名称:TestBaidu0325.java

文件代码:

package com.study;

import org.junit.Assert;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;

public class  TestBaidu0325 {
public static void main(String[] args) {
/*google浏览器*/
System.setProperty("webdriver.chrome.driver","C:\\ProgramFiles\\driver\\chromedriver.exe")找不到chromedriver时,强制制定webdriver路径。

WebDriver driver =new ChromeDriver();

String url = "http://www.baidu.com";

driver.get(url);

driver.manage().window().maximize();窗口最大化,加大页面回访的稳定性

driver.findElement(By.id("kw")).sendKeys("selenium");

driver.findElement(By.id("su")). click ();

try {

Thread.sleep(1000);延时设置,避免网页加载慢找不到页面元素

} catch (InterruptedException e) {

// TODO Auto-generated catch block
e.printStackTrace();
}
/*所谓的断言*/
Assert.assertTrue(driver.getTitle().contains(“selenium”));
driver.quit();
}
}

 

学习安排上

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。【保证100%免费】

视频文档获取方式:

这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

文章来源:https://blog.csdn.net/weixin_57794111/article/details/130366023
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:https://www.dflian.com/163471.html

网站文章

  • 云片:批量发送超级短信示例

    批量发送超级短信 HTTP 头信息: Accept:application/json;charset=utf-8; Content-Type:application/x-www-form-urlenc...

    2023-11-13 08:38:14
  • spring boot 使用 PageHelper分页插件总结

    spring boot 使用 PageHelper分页插件总结

    【代码】spring boot 使用 PageHelper分页插件总结。

    2023-11-13 08:37:55
  • 一个易用的消息订阅发布系统-Pubsub.js

    一个易用的消息订阅发布系统-Pubsub.js

    本文作者系360奇舞团前端开发工程师简介随着软件架构越来越复杂,如何有效地解决各个模块之间的通信问题变得尤为重要。一种常见的解决方案就是采用消息订阅发布机制。在这种模式下,每个模块只需要关注自己要发送...

    2023-11-13 08:37:51
  • 重建二叉树方式和思路

    一:重建二叉树首先明确前序遍历,中序遍历,后序遍历的遍历方式前序遍历:根节点 ,左子树,右子树中序遍历:左子树,根节点 ,右子树后序遍历:左子树,右子树,根节点二:还原思路例:前:1 2 4 7 3 ...

    2023-11-13 08:37:47
  • 使用JDBC连接数据库的简单操作和查询测试

    使用JDBC连接数据库的简单操作和查询测试

    jdbc.properties文件driverClass=com.mysql.jdbc.Driverurl=jdbc:mysql:///testuser=rootpassword=rootJdbcUt...

    2023-11-13 08:37:40
  • Android中WebView使用详解及注意事项

    Android中WebView使用详解及注意事项

    Webview使用详解webView作为Android中的一个控件,对于它真的是想说爱你不容易。网上找了一篇写的比较详细的文章,故转载过来了供参考,点击查看原文。前言现在很多App里都内置了Web网页(Hyprid App),比如说很多电商平台,淘宝、京东、聚划算等等,如下图 那么如何去实现这个呢?下面本文将介绍WebView的常用用法。目录1、简介WebView

    2023-11-13 08:37:22
  • YMAL语法

    1、基本语法使用 k:(空格) v(键值对)来声明参数和赋值,键和值中间的空格必须有,YAML语法以空格的缩进来控制层级关系,只要是左对齐的一列数据都是同一个层级的,注意属性和值也是大小写敏感;ser...

    2023-11-13 08:37:18
  • 程序员的职业素养_心得体会

    《程序员的职业素养》——总结 前言 在Bob大叔的整本书中,重点传达了一种精神,就是专业精神。解释出来会有很多种精神,但是我觉得概括下来,就是工匠精神,就是责任感。要对项目负责,对代码负责,对公司负责,对个人负责。对于整个项目而言,不合乎情理的需求,可能对项目造成很严重的损害。就像一个任务在保证质量的前提下,需要10天才能完成,可是提出需求需要3天完成,我们身为专业开发人

    2023-11-13 08:37:15
  • Linux学习日记2-文件的打开与关闭

    Linux学习日记2-文件的打开与关闭

    2023-11-13 08:37:10
  • 26进制转换

    L1-050 倒数第N个字符串 (15分) 给定一个完全由小写英文字母组成的字符串等差递增序列,该序列中的每个字符串的长度固定为 L,从 L 个 a 开始,以 1 为步长递增。例如当 L 为 3 时,...

    2023-11-13 08:37:05