一级a做爰片i免费网站,制作app软件平台,龙华区住房和建设局网站,wordpress提示框插件测试|Selenium介绍及环境搭建
1.Selenium是什么
Selenium是用来做web网站 UI自动化的测试工具/测试框架。
我们这里说的Selenium是Selenium2.0#xff0c;它由Selenium IDE#xff0c;Webdriver,
Selenium Grid组成。 Selenium IDE是用于Selenium测试的完成集成开发环境它由Selenium IDEWebdriver,
Selenium Grid组成。 Selenium IDE是用于Selenium测试的完成集成开发环境可以直接录制在浏览器的用户操作并且能够回访编辑和调试测试脚本。测试过程中可以逐步进行或调整执行速度并且在底部浏览日志出错信息。 Webdriver可以跳出JS的环境沙箱针对不同的浏览器创建更加健壮的分布式的跨平台的自动化测试脚本,基于特定语言Javapythonjs…绑定驱动浏览器对web元素进行操作和验证。 Webdriver的工作原理
启动浏览器后selenium会把目标浏览器绑定到特定的端口启动后的浏览器作为webdriver的远程服务器。客户端这里就是测试脚本借助ComandExcutor发送http请求给server端会以webdriver协议规定的json格式字符串告诉selenium我们希望浏览器接下来做什么服务器端需要依赖原生的浏览器组件转化web service命令为浏览器native调用来完成操作。 selenium grid是一个服务器提供对浏览器实例访问的服务器列表管理各个节点的注册和状态信息可以实现同一时刻执行不同的测试脚本。 关于脚本和脚本语言脚本语言和面向对象语言 脚本script 其实就是短小的、用来让计算机自动化完成一系列工作的程序类似演戏时用到的剧本。 脚本一般会用脚本语言进行书写其中常见的脚本语言有python,js。 常见用途就是用来书写自动化测试脚本在公司肯呢个会用脚本来自动检查平台代码部署异常情况拉去异常情况警报备份文件批量处理日志等。 前端大部分语言都可以认为是脚本语言因为他们主要用于网页上执行动态操作和交互脚本语言是一种通过解释器逐行解释执行的编程语言。但并非所有比如TypeScript前端框架Vue等 后端语言脚本语言包括PHP,Python,JS等。 脚本语言和面向对象语言是两种不同的编程范式脚本语言是一种解释型语言面向对象语言是一种编译型语言脚本语言语法更灵活数据结构和抽象方式更灵活但是执行效率相对较低 关于沙箱 环境沙箱是一种安全机制用于隔离和限制应用程序或代码的执行环境减少对系统的潜在危害。 限制资源访问隔离环境控制权限检测和记录。 环境沙箱主要应用与不可信任的代码执行环境比如网络浏览器插件等可以帮助保护用户隐私和安全减少恶意代码的风险并提供更安全的应用程序运行环境。 2.Selenium特点
支持各种浏览器只需要下载对应的浏览器驱动即可支持各种语言python,JavaJS…支持各种平台拥有丰富的API
3.Selenium原理
执行自动化脚本代码就等于创建一个HTTP请求webdriver浏览器接受请求并解析并把解析后的结果发送给浏览器操作浏览器执行测试步骤。
浏览器执行之后会把结果返回给httpserver最后结果返回给脚本。 4.SeleniumJava环境搭建使用chrome浏览器
1.下载chrome浏览器并查看chrome浏览器版本
2.下载chrome浏览器驱动只需要前两个数相同即可。点击电脑对应的版本进行下载。chrome浏览器驱动 3.将压缩包解压并放入java的文件夹下已经给jdk配置过环境变量
直接把exe放到java安装目录下 4.验证环境是否搭建成功
1.创建maven项目向pom文件添加selenium依赖 dependencies!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java --dependencygroupIdorg.seleniumhq.selenium/groupIdartifactIdselenium-java/artifactIdversion3.141.59/version/dependency
/dependencies注这里是selenium3不是4
2.编写代码运行
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;public class Main {public static void main(String[] args) {WebDriver webDriver new ChromeDriver();webDriver.get(https://www.baidu.com);}
}看到下边两个效果即环境搭建完成 其中这里的启动端口是不确定的
常见问题及解决办法
1.浏览器版本与驱动版本问题 原因浏览器版本与驱动版本不匹配重新在官网下载对应版本
2.selenium找不到Chrome.exe的安装路径
解决办法检查chrome浏览器是否默认安装在C盘。若不在则使用绝对路径。
ChromeDriver driver new ChromeDriver(xxxxx);因为我是安装在c盘下所以不需要写绝对路径。
3.环境变量未配置 解决办法给jdk添加系统环境变量并将驱动放入jdk的bin目录下