首页 > 编程语言 >《手把手教你》系列技巧篇(七十)-java+ selenium自动化测试-Java中如何读取properties配置文件内容(详解教程)

《手把手教你》系列技巧篇(七十)-java+ selenium自动化测试-Java中如何读取properties配置文件内容(详解教程)

时间:2024-04-04 18:33:05浏览次数:15  
标签:Java 读取 配置文件 selenium Properties java properties String

 1.简介

Java自动化测试开发中,需要将一些易变的配置参数放置再 XML 配置文件或者 properties 配置文件中。然而 XML 配置文件需要通过 DOM 或 SAX 方式解析,而读取 properties 配置文件就比较容易。因此今天宏哥讲解和分享如何读取properties配置文件的内容。

2.properties文件简介

java中的properties文件是一种配置文件,主要用于表达配置信息,文件类型为*.properties,格式为文本文件,文件的内容是格式是 "键=值"的格式,在properties文件中,可以用"#"来作注释,properties文件在Java编程中用到的地方很多,操作很方便。

一般使用以下两种方法读取properties文件:

1.通过java.util.Properties类读取

2.通过java.util.ResourceBundle类读取(国际化切换)

3.主要操作方法介绍

java.util.Properties类主要方法介绍:

1.getProperty ( String key),用指定的键在此属性列表中搜索属性。也就是通过参数 key ,得到 key 所对应的 value。

2.load ( InputStream inStream),从输入流中读取属性列表(键和元素对)。通过对指定的文件(比如说上面的 test.properties 文件)进行装载来获取该文件中的所有键 - 值对。以供 getProperty ( String key) 来搜索。

3.setProperty ( String key, String value) ,调用 Hashtable 的方法 put 。他通过调用基类的put方法来设置 键 - 值对。

4.store ( OutputStream out, String comments),以适合使用 load 方法加载到 Properties 表中的格式,将此 Properties 表中的属性列表(键和元素对)写入输出流。与 load 方法相反,该方法将键 - 值对写入到指定的文件中去。

5.clear (),清除所有装载的 键 - 值对。该方法在基类中提供。

4.读取配置文件步骤

java.util.Properties类读取配置文件步骤:

1.使用getResourceAsStream方法读取properties文件

2.新建一个java.util.Properties类的对象

3.使用该对象的load方法加载

4.加载后使用getProperty方法读取所需要的配置值

5.关闭字节输入流

5.项目实战

5.1准备配置文件

1. 准备一个config.properties文件,在项目根路径创建一个Config的文件夹,在该文件夹创建一个config.properties文件,如下图所示:

2.文件内容如下:

# set the browser type to launch to run test case

#browserName = Firefox
browserName = Chrome
#browserName = IE

# set the test server url
serverUrl = https://www.baidu.com
#serverUrl = www.google.com
5.2代码设计

5.3参考代码
package lessons;

import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;

/**
 * @author 北京-宏哥
 * 
 * @公众号:北京宏哥(微信搜索:北京宏哥,关注宏哥,提前解锁更多测试干货!)
 * 
 * 《手把手教你》系列技巧篇(七十)-java+ selenium自动化测试-Java中如何读取properties配置文件内容(详解教程)
 *
 * 2022年2月18日
 */
public class ReadPropertiesFile {
    
    public static String browser_Name;
    public static String server_Url;
    
    public static void main(String[] args) throws IOException {
        
        Properties p = new Properties();
        InputStream ips = new FileInputStream(".\\Config\\config.properties");
        p.load(ips);
        
        browser_Name=p.getProperty("browserName");
        server_Url = p.getProperty("serverUrl");
        System.out.println(browser_Name);
        System.out.println(server_Url);
        ips.close();
            
    }

}
5.4运行代码

1.运行代码,右键Run AS->Java Appliance,控制台输出,如下图所示:

6.小结

这里就是简单的介绍一下如何读取配置文件内容为后边的POM的框架设计做准备,好了,今天时间也不早了,就讲解和分享到这里,感谢您耐心的阅读!!!

 每天学习一点,今后必成大神-

往期推荐(由于跳转参数丢失了,所有建议选中要访问的右键,在新标签页中打开链接即可访问)或者微信搜索: 北京宏哥  公众号提前解锁更多干货。

Appium自动化系列,耗时80天打造的从搭建环境到实际应用精品教程测试

Python接口自动化测试教程,熬夜87天整理出这一份上万字的超全学习指南

Python+Selenium自动化系列,通宵700天从无到有搭建一个自动化测试框架

Java+Selenium自动化系列,仿照Python趁热打铁呕心沥血317天搭建价值好几K的自动化测试框架

Jmeter工具从基础->进阶->高级,费时2年多整理出这一份全网超详细的入门到精通教程

Fiddler工具从基础->进阶->高级,费时100多天吐血整理出这一份全网超详细的入门到精通教程

Pycharm工具基础使用教程

标签:Java,读取,配置文件,selenium,Properties,java,properties,String
From: https://blog.csdn.net/qq_23827149/article/details/137352574

相关文章

  • Java | Leetcode Java题解之第10题正则表达式匹配
    题目:题解:classSolution{publicbooleanisMatch(Strings,Stringp){intm=s.length();intn=p.length();boolean[][]f=newboolean[m+1][n+1];f[0][0]=true;for(inti=0;i<=m;++i){......
  • Java | Leetcode Java题解之第9题回文数
    题目:题解:classSolution{publicbooleanisPalindrome(intx){//特殊情况://如上所述,当x<0时,x不是回文数。//同样地,如果数字的最后一位是0,为了使该数字为回文,//则其第一位数字也应该是0//只有0满足这一属......
  • Java | Leetcode Java题解之第8题字符串转换整数atoi
    题目:题解:classSolution{publicintmyAtoi(Stringstr){Automatonautomaton=newAutomaton();intlength=str.length();for(inti=0;i<length;++i){automaton.get(str.charAt(i));}retur......
  • Java | Leetcode Java题解之第7题整数反转
    题目:题解:classSolution{publicintreverse(intx){intrev=0;while(x!=0){if(rev<Integer.MIN_VALUE/10||rev>Integer.MAX_VALUE/10){return0;}intdigit=x......
  • 第01章 JavaWeb基础
    B/S架构是Brower/Server的缩写,即浏览器/服务器结构。在这种结构中,客户端不需要开发任何用户界面,而是通过浏览器(如IE,Firefox,Chrome,Safari等等)向服务器发送请求,由服务器进行处理后将响应结果返回浏览器,最后浏览器将结果内容展示出来。我们写的JavaWeb程序是在服务器端运行的。W......
  • 如何学好Java后端呢?
    一,如何学好Java后端呢?对于学习路线的话,我说⼀条我⽐较推荐的,我相信照着这条学习路线来你的学习效率会⾮常⾼。下⾯提到的书籍以及相关学习视频都答主已经整理好,公众号JavaGuide后台回复关键“1”即可领取。1.掌握Java基础知识(可以看《Java核⼼技术卷1》或者《HeadFirst......
  • Java登陆第三十七天——VUE3响应式基础、条件渲染、列表渲染
    响应式数据什么是响应式数据? 当数据发生改变时,DOM树的内容,会和数据同步更新。 vue3不是自动响应式数据,需要经过函数处理得到响应式数据对象。ref和reactive这两个函数都会返回响应式数据对象,但也有不同。refref通常用于将一个基本类型转为响应式数据对象。基本类型包括:数......
  • JAVA语言学习-Day3
    参考教学视频:秦疆Day3面向对象什么是面向对象面向过程:第一步做什么,第二步做什么面向对象:分类的思维模式,分类然后对某个分类下的细节进行面向过程的思索(以类的形式组织代码,以对象的方式组织(封装)数据)static:和类一起加载构造器必须和类的名字相同必须没有返回值类型,也不......
  • 03-Java框架FTPClient 使用rename()移动文件和文件重命名
    1需求由于业务种种原因,现在需要将ftp中已存文件移动到其它文件夹。2初始策略一开始走上弯路,直接翻看FTPClientAPI有无move方法,但没发现:于是曲线救国,想着采用先复制、再删除,伪代码:InputStreaminputStream=ftpClient.retrieveFileStream("/AAA/test.txt");ftpClient.st......
  • Java 程序执行过程
    Java程序的执行过程Tips:对于java程序的执行的过程,参考了两张图片来理解,并主要参照图2进行讲解!(这里不对具体的内容进行详细讲解,对于具体的内容,将给出参考的链接)图1:JVMModel图2:Java运行流程java的执行可以分为编译和运行两个阶段,分别对应着图2的左侧和右侧部分这部分我......