保姆级教程:从0到1搭建web自动化测试环境

之前都是在linux上安装,第一次在windows上配置环境,加上距离上次配置环境有点久了,竟也花了点时间。特此记录下保姆级教程,给初学者一个有效的参考!

一. 环境搭建

工具清单

工具工具名版本
Java开发工具包JDK1.8
浏览器Chrome112.0
IDEEclipse
开发语言Java1.8
Web自动化测试工具Selenium3.141.59
依赖包管理Maven3.3.9
测试框架TestNG6.14.2

1.1 安装java 并配置环境变量

  • 1.1.1 下载java并安装

下载地址:https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html
下载后傻瓜安装,会先安装JDK,再安装JRE。
这里JDK的路径是:D:\Program Files\Java\jdk1.8.0_40
JRE的路径是:D:\Program Files\Java\jre1.8.0

  • 1.1.2 配置环境变量

设置-系统-高级系统设置-高级,环境变量,新建系统变量:

JAVA_HOME:D:\Program Files\Java\jdk1.8.0_40
CLASSPATH:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar
PATH(已有,追加): %JAVA_HOME%\bin; %JAVA_HOME%\jre\bin

设置Classpath的目的,在于告诉Java执行环境,在哪些目录下可以找到您所要执行的Java程序所需要的类或者包
设置PATH的目的,在于可以查找到可执行的程序。

  • 1.1.3 验证安装

输入java -verison,出现以下输出说明安装OK(注意版本要和安装设置的一致)

输入javac,出现以下输出说明环境变量设置OK

1.2 下载maven并配置环境变量

Maven是Apache的一款开源的项目管理工具,其作用主要有两大块:

  1. 管理依赖包
  2. 编译打包部署

maven使用POM(Project-Object-Model 项目对象模型)来管理项目的构建。下面会有POM的配置说明。

  • 1.2.1 下载并解压缩

下载地址:https://maven.apache.org/download.cgi

这里我使用的版本是3.3.9,可以找到该版本的下载地址:https://dlcdn.apache.org/maven/maven-3/3.3.9/binaries/

Windows下载这个即可:

解压后的目录文件如下,主要关注conf/settings.xml:

  • 1.2.2 修改maven配置文件

这里Maven解压缩的目录:D:\Program Files\apache-maven-3.3.9\conf\settings.xml

这里指定了本地仓库,即maven的jar包下载的路径

这里指定了maven中央仓库的镜像地址,即jar包的下载路径。为什么这样写,参考 https://developer.aliyun.com/mvn/guide:

  • 1.2.3 配置maven环境变量

MAVEN_HOME:D:\Program Files\apache-maven-3.8.8

将maven变量添加到path中(目的:使得程序可以在任何地方运行maven):

  • 1.2.4 验证配置

  • 1.2.5 下载maven依赖包

下载的依赖包即存放在settings.xml配置的localrepository里:

出现下面的输出即为OK:

1.3 安装IDE并配置

这里用的是eclipse,IDEA也是类似,工具不同而已,配置大同小异。

  • 1.3.1 下载,解压缩

下载地址:https://www.eclipse.org/downloads/packages/
选择windows版本。Eclipse是免安装的,下载后直接运行eclipse.exe

  • 1.3.2 配置eclipse maven installation选项

该操作是为了配置eclipse使用安装的maven。
打开Eclipse,windows -> preferences,搜索maven,Installations, add,选择maven路径

  • 1.3.3 修改maven User settings

该操作是为了配置eclipse使用安装maven的settings

  • 1.3.4 配置Eclipse Installed JREs

Eclipse需要在JRE上运行,maven编译需要使用JDK中的编译器,因此需要配置Eclipse installed JREs指向JDK,选择自己安装的JDK即可。

1.4 创建maven项目并配置依赖

  • 1.4.1 创建maven项目

File-> new->other,搜索maven,选择maven project

GroupId 是项目组织唯一的标识符,实际对应项目的包,其实就是包结构;ArtifactId 实际对应项目名称。
GroupId和ArtifactId被统称为“坐标”是为了保证项目唯一性而提出的,对于maven项目而言,groupID和artifactId是maven管理项目包时用作区分的字段,就像是地图上的坐标。
建好的项目结构如图:


其中pom.xml是maven项目的核心配置文件,在这里管理各种依赖。
Src/main/java 存放项目的java源码
Src/main/resources 存放项目的相关配置文件
Src/test/java 存放项目的测试代码
Src/test/resources 粗放项目的测试相关配置文件

  • 1.4.2 配置POM.xml

POM全程Project Object Model,又称项目对象模型。它是Maven工程的基本工作单元,是一个XML(可扩展标记语言)文件,包含了项目的基本信息,用于描述项目如何构建,声明项目依赖等等。执行任务或目标时,Maven会在当前目录中查找 POM并读取从而获取所需的配置信息执行目标,属于项目级别的配置文件。
这里用的编译工具是maven,加入以下声明(涉及maven详细的语法,本文不展开细说):

  <build>
  <plugins>  
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>  
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.3</version>
            <configuration>
              <source>1.8</source>
              <target>1.8</target>
              <encoding>UTF-8</encoding>
            </configuration>
        </plugin>  
    </plugins>  
  </build> 

这里是maven仓库地址
https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-compiler-plugin
用的maven版本是3.3.9:

使用的selenium版本是3.141.59;testNG版本是6.14.2,加入以下依赖:

  <dependencies>
    <dependency>
      <groupId>org.seleniumhq.selenium</groupId>
      <artifactId>selenium-java</artifactId>
      <version>3.141.59</version>
    </dependency>
    <dependency>
      <groupId>org.testng</groupId>
      <artifactId>testng</artifactId>
      <version>6.14.2</version>
    </dependency>
  </dependencies>

1.5 安装testng插件

TestNG是测试框架,自动化测试主要用到的是其强大的注解类。POM文件里已经定义了使用的testng版本是6.14.2,接下来需要安装该插件。

Help- install new software,下图的location中填入https://testng.org/testng-eclipse-update-site/6.14.3

接下来Next并安装完成即可。

检验一下安装,Perferences里出现TestNG即为安装OK:

1.6 安装浏览器并配置driver

在什么是自动化测试?如何做自动化测试?介绍过GUI自动化的原理,测试用例需要通过webDriver来驱动浏览器,因此需要安装并配置webDriver。

webDriver的安装比较简单,下载解压缩即可。首先查看浏览器版本,以chrome为例,点击帮助->关于Google Chrome即可。这里我的版本号是112.0.5615.87(下载driver没必要完全一致,大版本一致即可):

其次,下载浏览器版本对应的driver,下载地址:http://chromedriver.storage.googleapis.com/index.html

下载解压后有chromedriver.exe,将该exe文件的路径加入PATH。通常,我们会将其放到浏览器的安装目录,不过这一步不是必需的,必需的是将路径加入PATH变量。

这里,解压路径是“D:\Program Files\chromedriver_win32”,变量设置如下(Windows下依次点击 设置-系统-高级系统设置,环境变量):

1.7 安装完毕,验证!

在src/test/java里新建包,新建类(随便命名),写一个最简单的自动化测试代码,右键Run as – TestNG Test,运行成功!

自此,环境已经OK,接下来可以开启web自动化之旅了!

二. 总结与思考

搭建GUI自动化环境是基础,很多同学都倒在了环境搭建上。整理下来思路很清晰:首先明确搭建GUI自动化环境需要使用什么类型的工具,然后确定选择什么工具,再逐个安装配置就可以啦!

工具的安装配置也都是一个套路,都是安装-配置环境变量-修改配置文件。

工具不是唯一的,譬如IDE现在用IDEA很多,本文是以eclipse为例。工具的使用都是相通的,核心是自动化的使用。

环境搭建好了,万里长征才走完了第一步。接下来再深入学习!

 总结

如果你对此文有任何疑问,如果你也需要接口项目实战,如果你对软件测试、接口测试、自动化测试、面试经验交流感兴趣欢迎加入我们,加入方式在文章的最后面

  自动化测试相关教程推荐:

2023最新自动化测试自学教程新手小白26天入门最详细教程,目前已有300多人通过学习这套教程入职大厂!!_哔哩哔哩_bilibili

2023最新合集Python自动化测试开发框架【全栈/实战/教程】合集精华,学完年薪40W+_哔哩哔哩_bilibili

测试开发相关教程推荐

2023全网最牛,字节测试开发大佬现场教学,从零开始教你成为年薪百万的测试开发工程师_哔哩哔哩_bilibili

postman/jmeter/fiddler测试工具类教程推荐

讲的最详细JMeter接口测试/接口自动化测试项目实战合集教程,学jmeter接口测试一套教程就够了!!_哔哩哔哩_bilibili

2023自学fiddler抓包,请一定要看完【如何1天学会fiddler抓包】的全网最详细视频教程!!_哔哩哔哩_bilibili

2023全网封神,B站讲的最详细的Postman接口测试实战教学,小白都能学会_哔哩哔哩_bilibili

  总结:

 光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

如果对你有帮助的话,点个赞收个藏,给作者一个鼓励。也方便你下次能够快速查找。

如有不懂还要咨询下方小卡片,博主也希望和志同道合的测试人员一起学习进步

在适当的年龄,选择适当的岗位,尽量去发挥好自己的优势。

我的自动化测试开发之路,一路走来都离不每个阶段的计划,因为自己喜欢规划和总结,

测试开发视频教程、学习笔记领取传送门!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/291797.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

AI边缘计算智能分析网关V4如何配置周界入侵检测算法

旭帆科技的智能分析网关V4内含近40种智能分析算法&#xff0c;包括人体、车辆、消防、环境卫生、异常检测等等&#xff0c;在消防安全、生产安全、行为检测等场景应用十分广泛&#xff0c;如常见的智慧工地、智慧校园、智慧景区、智慧城管等等&#xff0c;还支持抓拍、记录、告…

C++第四天

定义一个Person类&#xff0c;私有成员int age&#xff0c;string &name&#xff0c;定义一个Stu类&#xff0c;包含私有成员double *score&#xff0c;写出两个类的构造函数、析构函数、拷贝构造和拷贝赋值函数&#xff0c;完成对Person的运算符重载(算术运算符、条件运算…

【DevOps-03】Build阶段-Maven安装配置

一、简要说明 下载安装JDK8下载安装Maven二、复制准备一台虚拟机 1、VM虚拟复制克隆一台机器 2、启动刚克隆的虚拟机,修改IP地址 刚刚克隆的虚拟机 ,IP地址和原虚拟的IP地址是一样的,需要修改克隆后的虚拟机IP地址,以免IP地址冲突。 # 编辑修改IP地址 $ vi /etc/sysconfig…

感觉软件测试很简单,但为何这么多劝退的?

上一个说软件测试简单的&#xff0c;已经被面试官问死了。。。 现在已经过了 ”不会但我会学“ 就能感动面试官的时代&#xff0c;随着供需关系的变化&#xff0c;不论是对于面试官还是面试者&#xff0c;面试的成本越来越高。为了筛选到更优秀的程序员&#xff0c;面试官们可谓…

iptables

iptables有多种功能&#xff0c;每一种功能都用一张表来实现 最常用的功能是防火墙和NAT 从RHEL7开始&#xff0c;默认的防火墙为firewalld&#xff0c;但是它的底层仍然调用iptables 安装iptables服务 # 关闭firewalld [rootnode1 ~]# systemctl stop firewalld [rootnode…

在Gradle工程中使用checkstyle来规范你的项目

&#x1f339;作者主页&#xff1a;青花锁 &#x1f339;简介&#xff1a;Java领域优质创作者&#x1f3c6;、Java微服务架构公号作者&#x1f604; &#x1f339;简历模板、学习资料、面试题库、技术互助 &#x1f339;文末获取联系方式 &#x1f4dd; 系列专栏目录 [Java项…

深度学习 | 多模态算法

AIGC也就是AI内容生成已经成为新一轮人工智能发展的热点和必然趋势&#xff0c;它使得大规模高质量的创作变得更加容易。 一 、InstructGPT模型 1、GPT系列回顾 chatGPT和InstructGPT都使用了指示学习和基于人工反馈的强化学习来指导模型的训练&#xff0c;不同点仅仅是在采集数…

ECharts配置个性化图表:圆环、立体柱状图

ECharts配置个性化图表&#xff1a;圆环、立体柱状图 圆环图双纵轴多数据面积图折柱混合图3D立体圆环饼图3D立体饼图参考文章 官网调试地址&#xff1a;点击跳转调试 圆环图 效果图&#xff1a; 配置&#xff1a; option {color: [#29BEFF, #A2DC00, #FFC400, #FF7F5C, #C…

c jpeg 编码解码验证数据

1. yuv420p 1616 像素点 384字节全部数据 把上面的384个char从左到右&#xff0c;从上到下的顺序输入文件&#xff0c;就能显示红绿蓝白4个水平条

SwiftUI之深入解析ContentUnavailableView的实战应用

一、基本用法 SwiftUI 引入了新的 ContentUnavailableView 类型&#xff0c;允许在应用程序中展示空状态、错误状态或任何其他内容不可用的状态。那么&#xff0c;如何使用 ContentUnavailableView 引导用户浏览应用程序中的空状态呢&#xff1f;首先看看 ContentUnavailableV…

python中的selenium安装的步骤(浏览器自动化测试框架)

一、前言 我们今天要安装的selenium 就是浏览器自动化测试框架&#xff0c;是一个用于Web应用程序的测试工具&#xff0c;就是模拟用户操作。支持的浏览器包括Chrome&#xff0c;IE&#xff0c;Mozilla Firefox&#xff0c;Safari&#xff0c;Opera等。今天我们以Chrome为例讲…

msvcr120.dll丢失怎样修复,教你msvcr120.dll丢失的解决办法

在使用电脑的过程中出现关于msvcr120.dll丢失的问题&#xff0c;那么出现这样的问题应该怎么解决呢&#xff1f;其实解决的办法也很简单&#xff0c;今天就和大家说说msvcr120.dll丢失怎样修复&#xff0c;同时给大家介绍一些关于msvcr120.dll文件的相关内容&#xff0c;了解ms…

CMake入门教程【核心篇】添加库(add_library)

&#x1f608;「CSDN主页」&#xff1a;传送门 &#x1f608;「Bilibil首页」&#xff1a;传送门 &#x1f608;「本文的内容」&#xff1a;CMake入门教程 &#x1f608;「动动你的小手」&#xff1a;点赞&#x1f44d;收藏⭐️评论&#x1f4dd; 文章目录 1. 基本用法2.STATIC…

python爬虫实现获取招聘信息

使用的python版本&#xff1a; 3.12.1 selenium版本&#xff1a;4.8.0 urllib版本&#xff1a;1.26.18 from selenium import webdriver from selenium.webdriver import ActionChains import timeimport re import xlwt import urllib.parsedef get_html(url):chrome_drive…

将linux的代码上传至gitte,从创建到linux命令详解

目录 1&#xff1a;创建gitte的代码仓库 1&#xff1a;登录gitte网页 https://gitee.com/ 2&#xff1a;点击导航栏的&#xff0b;号 3&#xff1a;点击新建仓库​编辑4&#xff1a;仓库配置 ​编辑5&#xff1a;复制仓库的路径 linux操作系统命令行 1&#xff1a; linux…

Hadoop集群三节点搭建(一)

一、第一台虚拟机准备 确认是可以上网&#xff0c;方便下载文件和工具&#xff0c;使用ping命令测试下 安装工具 net-tool&#xff1a;工具包集合&#xff0c;包含ifconfig等命令&#xff0c;大家可以根据自己需要按需下载 创建普通用户attest&#xff0c;并修改attest用户的密…

MO 2023 年度回顾

PART-ONE 行业态势 随着供需关系的变化&#xff0c;数据库的竞争在经历了 3 年 “百花齐放” 般的发展后&#xff0c;终于在 2023 年进入到了一个相对收拢的阶段。 2023 年&#xff0c;各个数据库厂商间很有默契地在两个方面达成了一致&#xff1a; HTAP 已经成为新一代数据…

YOLO算法入门指南:了解门槛、学习路径及其易学性

博主猫头虎的技术世界 &#x1f31f; 欢迎来到猫头虎的博客 — 探索技术的无限可能&#xff01; 专栏链接&#xff1a; &#x1f517; 精选专栏&#xff1a; 《面试题大全》 — 面试准备的宝典&#xff01;《IDEA开发秘籍》 — 提升你的IDEA技能&#xff01;《100天精通Golang》…

基于Segformer实现PCB缺陷检测(步骤 + 代码)

导 读 本文主要介绍基于Segformer实现PCB缺陷检测 &#xff0c;并给出步骤和代码。 背景介绍 PCB缺陷检测是电子制造的一个重要方面。利用Segformer等先进模型不仅可以提高准确性&#xff0c;还可以大大减少检测时间。传统方法涉及手动检查&#xff0c;无法扩展且容易出错…

k8s---声明式资源管理(yml文件)

在k8s当中支持两种声明资源的方式&#xff1a; 1、 yaml格式&#xff1a;主要用于和管理资源对象 2、 json格式&#xff1a;主要用于在API接口之间进行消息传递 声明式管理方法(yaml)文件 1、 适合对资源的修改操作 2、 声明式管理依赖于yaml文件&#xff0c;所有的内容都在y…