首页 > 编程语言 >Selenium+Java+Chrome进行web自动化实例

Selenium+Java+Chrome进行web自动化实例

时间:2023-04-29 10:35:27浏览次数:46  
标签:web 浏览器 Chrome 自动化 selenium org Java

Selenium+Java+Chrome进行web自动化实例      这是我第一次在项目中使用Java Spring启动,因为我主要使用C#,我需要从blob URL路径读取文件并将一些字符串数据(如密钥)附加到同一个文件中。在我的API下载文件之前流。   以下是我尝试过的方法:   FileOutputStream / InputStream:抛出FileNotfoundException,因为它无法解析blob路径。   URLConnection:这让我到了某个地方,我能够成功下载文件但是当我在下载之前尝试写入/附加一些值时,我失败了。   我一直在做的代码。   //EXTERNAL_FILE_PATH is the azure storage path ending with for e.g. *.txt   URL urlPath = new URL(EXTERNAL_FILE_PATH);   URLConnection connection = urlPath.openConnection();   connection.setDoOutput(true); //I am doing this as I need to append some data and the docs mention to set this flag to true.   OutputStreamWriter out = new OutputStreamWriter(connection.getOutputStream());   out.write("I have added this");   out.close();   //this is where the issues exists as the error throws saying it cannot read data as the output is set to true and it can only write and no read operation is allowed. So, I get a 405, Method not allowed...   inputStream = connection.getInputStream();   我不确定框架是否允许我修改URL路径中的某个文件并同时读取并下载相同的文件   2018-04-10 11:56:19 本文用一个简单的例子来说明从环境搭建到实现web自动化的整个过程,让初学者快速入门。网上很多文章可能只介绍过程中的某一部分,初学者往往一头雾水,而本文则是详细介绍,根据本文一步一步能成功执行自动化测试。   一、环境搭建 1. Eclipse 2. Chrome及对应的Chromedriver 网上搜索的很多映射都是几年前的,扎心!最新的映射如下:   映射(全)请参考:   https://chromedriver.storage.googleapis.com/2.37/notes.txt 1 1 3.查看chrome版本,下载对应的Chromedriver,配置环境变量   1)下载chromedriver 2)将WebDriver复制到Chrome的安装目录 安装目录可以通过在Chrome地址栏中输入chrome://version/来查看 3)将WebDriver的路径复制到系统环境变量PATH中 即将C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe添加到PATH中 1 2 3 4 5 1 2 3 4 5 二、自动化测试实例 1.新建Maven Project,在pom.xml加入dependency     org.seleniumhq.selenium selenium-java 3.0.0     org.testng testng 6.14.2 test   1 2 3 4 5 6 7 8 9 10 11 1 2 3 4 5 6 7 8 9 10 11 需要注意的是,保存后一般下载失败!设置一下镜像下载地址即可,步骤如下: 1)新建一个settings文件     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">     alimaven aliyun maven http://maven.aliyun.com/nexus/content/groups/public/ central       1 2 3 4 5 6 7 8 9 10 11 12 13 1 2 3 4 5 6 7 8 9 10 11 12 13 2)Eclipse>>Window>>Preferences>>Maven>>User Settings: 在右侧的User Settings下选择该文件   点击ok,此时再保存pom.xml会下载成功   2.新建TestNG class,编写脚本   功能:打开浏览器,进入百度,输入CSDN,点击搜索,关闭浏览器 1 1 package com.bond.SeleniumProj;   import org.openqa.selenium.*; import org.openqa.selenium.chrome.ChromeDriver; import org.testng.Assert; import org.testng.annotations.Test; import org.testng.annotations.BeforeMethod; import org.testng.annotations.AfterMethod;   public class WebAutoTest { public WebDriver driver; String baseUrl = "http://www.baidu.com/"; @Test public void testBaiduSearch() { driver.get(baseUrl+"/"); WebElement inputBox = driver.findElement(By.id("kw")); Assert.assertTrue(inputBox.isDisplayed()); inputBox.sendKeys("CSDN"); driver.findElement(By.id("su")).click(); } @BeforeMethod public void beforeMethod() { System.setProperty("webdriver.chrome.driver", "C:\\Program Files (x86)\\Google\\Chrome\\Application\\chromedriver.exe"); driver = new ChromeDriver(); }   @AfterMethod public void afterMethod() { driver.quit(); }   } 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 当然,代码中的findElement等元素定位,将在以后的章节进行介绍,敬请期待~~   3.Run as >>TestNG Test     控制台输出:   Starting ChromeDriver 2.37.544315 (730aa6a5fdba159ac9f4c1e8cbc59bf1b5ce12b7) on port 11747 Only local connections are allowed. 四月 10, 2018 10:21:23 上午 org.openqa.selenium.remote.ProtocolHandshake createSession 信息: Attempting bi-dialect session, assuming Postel’s Law holds true on the remote end 四月 10, 2018 10:21:25 上午 org.openqa.selenium.remote.ProtocolHandshake createSession 信息: Detected dialect: OSS PASSED: testBaiduSearch   =============================================== Default test   =============================================== Tests run: 1, Failures: 0, Skips: 0   =============================================== Default suite Total tests run: 1, Failures: 0, Skips: 0   同时,可以看到浏览器自动打开,并搜索CSDN,浏览器关闭。   打开CSDN,阅读体验更佳   Java+selenium简单实现web自动化测试 最近在转行软件测试,有点艰难,为了提高自己的竞争力,只有不断的学习,学习多一点技术和知识。 这次要学习的是Java+Selenium的Web自动化测试,虽然这个自动化测试技术已经少有人用,或者说已经没人用了,很多相关的插件都不支持更新了,而且所用的到selenium相关jar包的版本必须要和firefox浏览器版本相匹配才能真正跑起来的。 这个需要学习的就不用担心,文末会提供匹配的jar包和F... 浏览器打开 Selenium Java(1)Chrome进行web自动化实例的配置 环境配置 个人使用浏览器版本(Google Chrome ): 74.0.3729.131 (正式版本) (64 位) 驱动版本:74.0.3729.6 [chromedriver_win32.zip ] 亲测可行 下载chromedriver驱动 不同的浏览器版本下载不同驱动版本.下载地址 配置环境变量(win10) 将下载的驱动复制到Chrome的安装目录,安装目录可通过在Chrome地... 浏览器打开   评论(1) 写评论   Tpraise码龄2年   感谢,对我非常有用6 月前 相关推荐 selenium webdriver 启动三大浏览器Firefox,Chrome,IE 安装三大浏览器驱动driver 1.chromedriver 下载地址:https://code.google.com/p/chromedriver/downloads/list 2.Firefox的驱动geckodriver 下载地址:https://github.com/mozilla/geckodriver/releases/ 3.IE的驱动IEdriver 下载地址:http://www.nuget.org/packages/Selenium.WebDriver. 浏览器打开 【selenium3+JAVA】界面自动化测试教程(一)——浏览器的启动之chrome浏览器的启动 一、环境 本机安装jdk1.8 本机安装eclipse eclipse添加maven组件 新建maven工程并在POM.xml中添加如下字段: <dependency> <groupId>org.seleniumhq.selenium</groupId&gt 浏览器打开 selenium+Java+IDEA集成自动化测试 selenium是一个应用于web应用程序测试的框架,可以模拟终端客户在实际运用中的场景。本篇博客将介绍selenium的基本测试API,自动化截图,生成测试报告等功能。 具体博客流程如下: selenium基本属性介绍 selenium确定界面元素的几种方法 selenium自动截图 selenium生成测试报告 1.selenium基本属性介绍 selenium运... 浏览器打开 Java爬虫第一篇:准备 chromedriver与chrome chromedriver与chrome各版本及下载地址 记录下使用Selenium时,遇到的chromedriver版本问题。 概述 我们做自动化的时候如果用的是selenium,首先要解决的就是下载不同浏览器的驱动,目前的浏览器驱动都是由各大浏览器厂商自己更新提供。 运行selenium自动化脚本报错如下: org.openqa.selenium.WebDriverException: unkn... 浏览器打开   Java + selenium 实现web自动化简单示例 环境搭建: eclipse4.5 + java8 + selenium-3.14 基本都是使用最新版 (1)eclipse4.5下载:http://www.eclipse.org/downloads/ (2)java8官方网站下载:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.h... 浏览器打开 java的webdriver_Java + selenium 实现web自动化简单示例 importjava.util.Iterator;importjava.util.List;importjava.util.Set;importjava.util.concurrent.TimeUnit;importorg.openqa.selenium.Alert;importorg.openqa.selenium.By;importorg.openqa.selenium.Cookie;impo... 浏览器打开 Java+Selenium3.0基础篇1-环境搭建 一.背景和目的        我大概是2015年开始接触Selenium这个web自动化测试框架。当时是selenium2.48好像,从Selenium2.0开始,就加入了webdriver,实际上,我们说的selenium自动化测试,大部分情况都是在使用webdriver的API。现在去Selenium官网,发现最新Selenium版本是3.4,我也不知道3.4和2.48之间有什么多大的区别和 浏览器打开 Java - selenium - Chrome 自动化测试例子 代码如下: 类 MainTest.java: import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebDriver.Window; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.chrome.ChromeOp... 浏览器打开

标签:web,浏览器,Chrome,自动化,selenium,org,Java
From: https://www.cnblogs.com/xinxihua/p/17363662.html

相关文章

  • 设置两个Chrome浏览器 一个正常使用 一个无图片版
    添加两个Chrome浏览器双击打开Chrome浏览器,点击右上角头像,点击添加选择“在不登录帐号的情况下继续”,创建一个名字,选个配色,勾选下面的创建桌面快捷方式此时会打开一个新的Chrome浏览器,桌面上也会同步出现一个“web测试-Chrome”图标。按照同样的步骤添加一个平常用的账户......
  • Java程序员从阿里、京东、美团面试回来,这些面试题你会吗?(文末福利)
    hi大家好我是田哥今天,给大家分享一些面试干货。我们每次面试基本上都是超过一个小时的,面试官肯定会问很多问题,其实也不是需要我们全部能回答上来。但是,关键点如果回答不上来,就算你其他的回答的不错,也没用,最终offer还是不会给你的。好吧,话不多说,我们直接开始:自我介绍很多人觉得自......
  • javaweb用户登录界面
    实验名称用户登录界面成绩评定所用仪器材料eclipsetomcatwin11实验目的或要求1.实验目的使用JSP实现用户登录验证。2.实验内容通过创建一个用户登录的页面,让用户输入正确的用户名、密码,并进行校验,若用户名和密码输入正确,则弹出您好,你的名字首字母,否则弹出用户名或密码错误,请重新输......
  • Linux/Win/MacOS系统 安装JDK(Java)教程,JDK下载
    JDK下载安装与环境变量配置图文详细教程,Window、Linux和MacOS(M1)系统安装jdk教程。我的世界(Minecraft)开服教程:https://blog.zeruns.tech/tag/mc/性价比高的服务器/VPS推荐:https://blog.zeruns.tech/archives/383.html什么是JDK?SUN公司提供了一套Java开发环境,简称JDK(JavaDevelopm......
  • 最火前端 Web 组态软件 (可视化)
    ​ 前言:随着物联网、大数据等技术高速发展,我们逐步向数字化、可视化的人工智能(AI)时代的方向不断迈进。智能时代是工业4.0时代,我国工业领域正努力从“制造”迈向“智造”的新跨越。正文:1.mxgraph:介绍:开源免费,但是需要解决的问题很多,国内学习参考资料少。但是,可视化组态的实......
  • java -- JDBC
    JDBCJDBC(JavaDataBaseConnectivity,java数据库连接)是一种用于执行SQL语句的JavaAPI。JDBC是Java访问数据库的标准规范,可以为不同的关系型数据库提供统一访问,它由一组用Java语言编写的接口和类组成。JDBC需要连接驱动,驱动是两个设备要进行通信,满足一定通信数据格式,数据格式由......
  • JAVA中的for循环和while循环详解
    for循环格式fou(初始化;条件判断语句;条件控制语句){循环体语句:}执行流程:执行初始化语句执行条件判断语句,结果是false的话循环结束,结果是true执行循环语句执行条件控制语句  while循环格式:while(条件判断语句){循环体语句;条件控制语句;}for和while......
  • 对Java课程PTA4-6题目集的反思与总结
     前言:三次题目集一共涵盖了以下知识点:面向对象编程的封装性,List-Arrays方法的使用,强制类型转换的方法,字符串的处理,字符串截断方法split的使用,对象数组的建立以及使用,Java源码自带的多种日期类方法的使用,各种正则表达式及其运用,运用聚合的方法自行写日期类,综合运用现学的所......
  • JVM系列——java文件到JVM中的整个过程
    关注“Java后端技术栈“回复“面试”获取最新资料今天来聊聊从java文件到class文件,最后class文件是怎么到JVM中的。首先是编写一个HelloWorld.java类,然后通过这一系列的编译操作,最终成了HelloWorld.class文件。然后把HelloWorld.class文件加载到JVM中的整个过程:1,装载。查找和导入cl......
  • Java高频面试题和答案
    一、Java基础篇Object有哪些常用方法?大致说一下每个方法的含义Java创建对象有几种方式?获取一个类对象的方式有哪些?ArrayList和LinkedList的区别有哪些?用过ArrayList吗?说一下它有什么特点?有数组了为什么还要搞个ArrayList呢?说说什么是fail-fast?Hashtable与HashMap的区......