首页 > 编程语言 >java接口自动化系列(06):常用变量解析到map

java接口自动化系列(06):常用变量解析到map

时间:2023-12-23 22:55:57浏览次数:41  
标签:map 06 String VariableUtil import java logger excelPath

 

本系列汇总,请查看这里https://www.cnblogs.com/uncleyong/p/15867903.html

添加工具类

常用变量解析到map,方便后面解析初始化sql或者入参的时候对变量进行替换。

VariableUtil.java

package com.qzcsbj.autotest.utils;

import com.qzcsbj.autotest.entity.Variable;
import org.apache.log4j.Logger;

import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;

/**
 * @公众号 : 全栈测试笔记
 * @博客 : www.cnblogs.com/uncleyong
 * @微信 : ren168632201
 * @描述 : <>
 */
public class VariableUtil {
    public static Logger logger = Logger.getLogger(VariableUtil.class);

    // 存放变量和值的map
    public static Map<String, String> variableMap = new HashMap<String, String>();

    // 从对象列表variableList中获取变量和值,放到map中
    public static void loadVariablesToMap(List<Variable> variableList) {
        for (Variable variable : variableList){
            String name = variable.getName();
            String value = variable.getValue();
            variableMap.put(name,value);
        }
    }
}

  

修改@BeforeTest修饰的方法

调用VariableUtil工具类中方法

    @Parameters({ "excelPath", "dataSheetName", "variableSheetName"})
    @BeforeTest
    public void readDataFromExcel(@Optional("caseData/caseData.xlsx") String excelPath, @Optional("case") String dataSheetName, @Optional("variables") String variableSheetName){
        logger.info("excelPath: " + excelPath);
        logger.info("dataSheetName: " + dataSheetName);
        logger.info("variableSheetName: " + variableSheetName);
        cases = ExcelUtil.loadExcel(excelPath, dataSheetName, CaseData.class);
        variables = ExcelUtil.loadExcel(excelPath, variableSheetName, Variable.class);
        // logger.info("读取文件获取到的cases对象:" + cases);
        // logger.info("读取文件获取到的variables对象:" + variables);
        VariableUtil.loadVariablesToMap(variables);
        Set<String> keys = VariableUtil.variableMap.keySet();
        for (String key : keys) {
            System.out.println(key + "=" + VariableUtil.variableMap.get(key));
        }
    }

  

结果

运行testng.xml

通过结果可以看到,常用变量放到了map中

 

标签:map,06,String,VariableUtil,import,java,logger,excelPath
From: https://www.cnblogs.com/uncleyong/p/17923784.html

相关文章

  • java基础语法api之键盘录入Scanner对象
    一:概述Scanner再开发中比较常使用,它可以实现键盘录入,让用户输入信息。实现简单的交互。在这里对其进行详细的介绍。二:具体介绍首先这个Scanner类在java.util包下的,在每次使用之前都需要进行导包。<1>JDK_API帮助文档对其的定义<2>在基础阶段,常用的成员方法<2>数据求和的案例import......
  • #yyds干货盘点#Java面试题
    前言今天主题是悲观锁和乐观锁,很常见的话题了,但是记录一下吧!每个人想法不一样,讲的多少也会不一样,大家随便听听就好,有问题欢迎评论,我是个知错就改的好孩子。今天就来简单了解一下使用场景接下来我们了解一下两种锁的使用场景,其实两种锁各有优缺点,所以合适的场合用适合的锁,像乐观锁适......
  • Java登陆第二十九天——ServletConfig和ServletContext
    ServletConfigServletConfig是web.xml中,Servlet的初始化参数对象(每个Servlet都有一个ServletConfig对象)web.xml<?xmlversion="1.0"encoding="UTF-8"?><web-appxmlns="http://xmlns.jcp.org/xml/ns/javaee"xmlns:xsi="http://ww......
  • centos配置JAVA_HOME
    下载jdk从华为云镜像下载openjdk17curl-oopenjdk-17_linux-x64_bin.tar.gzhttps://mirrors.huaweicloud.com/openjdk/17/openjdk-17_linux-x64_bin.tar.gz%Total%Received%XferdAverageSpeedTimeTimeTimeCurrent......
  • JavaScript手搓"防抖"优化代码
    一、为什么要防抖就好比我们想象一个场景:当我们在使用我们的页面,我们页面有一个提交数据的按钮!我们每次点击提交按钮,都会向我们的后端服务器发送一个请求!接下来我们来构建一下这样一个简单的页面!<buttonid="submit">提交</button><script>letsub=document.getEle......
  • 童年神机小霸王(七) Mapper
    Mappermapper,这个概念来源于memorymapping,又叫做MemoryManagementCircuit,它是解决地址映射的一种电路,简单来说就是决定物理内存如何映射到CPU或者PPU的地址空间。mapper可以用来支持增加卡带的RAM甚至支持额外的音频通道,但更一般的目的就是控制物理内存到地址空间的映......
  • 【题解】洛谷P1068 [NOIP2009 普及组] 分数线划定 (map)
    ##题目描述世博会志愿者的选拔工作正在A市如火如荼的进行。为了选拔最合适的人才,A市对所有报名的选手进行了笔试,笔试分数达到面试分数线的选手方可进入面试。面试分数线根据计划录取人数的$150\%$划定,即如果计划录取$m$名志愿者,则面试分数线为排名第$m\times150\%$(向......
  • java接口自动化系列(05):测试数据注入到测试方法
     注入测试数据这里我们是数据驱动方式,把数据注入到测试方法上一篇我们已经把用例数据封装到对象并放到list中,这里我们把用例对象list中的对象分别放到Object类型的一维数组中,再把一维数组添加到新对象类型一维数组的list中然后我们在测方法中打印获取到的用例数据,看获取到的......
  • Java登陆第二十九天——Servlet继承关系,service和doGet的区别
    Servlet继承关系树:Servlet接口查看Servlet源码publicinterfaceServlet{voidinit(ServletConfigvar1)throwsServletException;ServletConfiggetServletConfig();voidservice(ServletRequestvar1,ServletResponsevar2)throwsServletException,I......
  • Java数组常见的几种排序。
    publicclasscode2{publicstaticvoidmain(String[]args){int[]x={37,89,23};for(intz=0;z<x.length-1;z++){intminIndex=z;for(inti=z+1;i<x.length;i++){if(......