泛微E9单元测试配置及使用教程

2023-11-09 10:59

本文主要是介绍泛微E9单元测试配置及使用教程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

编写目的:

为了帮助大家在不启动resin服务的前提下,进行一些二开内容的测试和验证,尽可能的利用单元测试等功能实现在IDEA中便可以进行后端代码的一些测试,从而节省掉反复重启resin服务的不必要的时间浪费。

1、前提条件

  • 将gitee中的项目拉取到本地IDEA中。

  • gitee地址:https://gitee.com/llhtrunk/ecology_dycs/tree/master

  • 配置好必要的ecology/classbean,WEB-INF/lib类库。

  • 保证可以正常引用系统中引用的类库和系统类进行开发和正常编译。

2、修改配置文件

2.1、修改数据库连接配置

修改为实际要连接的ecology数据库

image-20220809140556996

2.2、修改log4j

将log4j中的log日志文件路径修改为绝对路径的具体位置

image-20220809140933740

3、添加junit依赖

image-20220809141156987

4、测试类

测试查询数据库操作是否生效。

package com.weavernorth;import org.junit.Before;
import org.junit.Test;
import weaver.conn.RecordSet;
import weaver.general.BaseBean;
import weaver.general.GCONST;
import weaver.hrm.User;import java.net.InetAddress;
import java.net.UnknownHostException;/*** @Classname Test* @Description TODO* @Version 1.0.0* @Date 2022/7/21 0021 16:45* @Created by llh*/
public class TestAction {@Before//1、设置好根路径public void before() throws Exception {GCONST.setServerName("ecology");GCONST.setRootPath("D:\\mywork\\Ecology9单元测试\\ecology\\");String hostname = "Unknown";try {InetAddress addr = InetAddress.getLocalHost();hostname = addr.getHostName();} catch (UnknownHostException ex) {System.out.println("Hostname can not be resolved");}}@Test//2、执行测试public void test() {BaseBean baseBean = new BaseBean();RecordSet rs = new RecordSet();//执行数据库查询rs.executeQuery("select *  from hrmresource ");while (rs.next()) {System.out.println("lastname = " + rs.getString("lastname"));}//读取配置文件String weaver = rs.getPropValue("weaver", "ecology.url");//打印日志baseBean.writeLog("weaver", weaver);//构建用户User user = new User(1);//读取用户信息String loginid = user.getLoginid();System.out.println("loginid = " + loginid);}
}

代码运行结果:
image-20220809141833879

5、利用系统的邮件配置发送邮件

邮件群发设置好发送服务

image-20220810092144123

@Test
public void test2() throws Exception {//收件人,邮箱地址,多地址时用英文逗号分隔String sendTo = "XXXXXX@126.com";//邮件标题String emailTitle = "这是个标题";//邮件内容String emailInfo = "这是邮件内容";//邮件附件idsString emailFileIds = "";EmailWorkRunnable ewr = new EmailWorkRunnable(sendTo, emailTitle, emailInfo);ewr.setImagefileids(emailFileIds.toString());//result:true投递成功,false投递失败boolean emailSendResult = ewr.emailCommonRemind();System.out.println("emailSendResult = " + emailSendResult);
}

发送成功的截图

image-20220810092320013

6、发送消息

目前测试可以发送成功,但是在ecology对应用户中未看到对应消息,未找到原因。

@Test
public void testMessages() throws Exception {// 消息来源MessageType messageType = MessageType.newInstance(100);// 接收人id 必填Set<String> userIdList = new HashSet<>();userIdList.add("4");// 标题String title = "标题";// 内容String context = "内容";// PC端链接String linkUrl = "https://www.baidu.com";// 移动端链接String linkMobileUrl = "https://m.baidu.com";try {MessageBean messageBean = Util_Message.createMessage(messageType, userIdList, title, context, linkUrl, linkMobileUrl);// 创建人idmessageBean.setCreater(1);// 需要修改消息为已处理等状态时传入,表示消息最初状态为待处理//message.setBizState("0");//消息来源code +“|”+业务id需要修改消息为已处理等状态时传入//messageBean.setTargetId("121|22");boolean store = Util_Message.store(messageBean);new BaseBean().writeLog("消息提醒结果=" + store);} catch (IOException e) {e.printStackTrace();}
}

这篇关于泛微E9单元测试配置及使用教程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/375691

相关文章

Python使用python-docx实现自动化处理Word文档

《Python使用python-docx实现自动化处理Word文档》这篇文章主要为大家展示了Python如何通过代码实现段落样式复制,HTML表格转Word表格以及动态生成可定制化模板的功能,感兴趣的... 目录一、引言二、核心功能模块解析1. 段落样式与图片复制2. html表格转Word表格3. 模板生

go rate 原生标准限速库的使用

《gorate原生标准限速库的使用》本文主要介绍了Go标准库golang.org/x/time/rate实现限流,采用令牌桶算法控制请求速率,提供Allow/Reserve/Wait方法,具有一定... 目录介绍安装API介绍rate.NewLimiter:创建限流器limiter.Allow():请求是否

Python使用Turtle实现精确计时工具

《Python使用Turtle实现精确计时工具》这篇文章主要为大家详细介绍了Python如何使用Turtle实现精确计时工具,文中的示例代码讲解详细,具有一定的借鉴价值,有需要的小伙伴可以参考一下... 目录功能特点使用方法程序架构设计代码详解窗口和画笔创建时间和状态显示更新计时器控制逻辑计时器重置功能事件

Linux网络配置之网桥和虚拟网络的配置指南

《Linux网络配置之网桥和虚拟网络的配置指南》这篇文章主要为大家详细介绍了Linux中配置网桥和虚拟网络的相关方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 一、网桥的配置在linux系统中配置一个新的网桥主要涉及以下几个步骤:1.为yum仓库做准备,安装组件epel-re

Swagger2与Springdoc集成与使用详解

《Swagger2与Springdoc集成与使用详解》:本文主要介绍Swagger2与Springdoc集成与使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录1. 依赖配置2. 基础配置2.1 启用 Springdoc2.2 自定义 OpenAPI 信息3.

Golang interface{}的具体使用

《Golanginterface{}的具体使用》interface{}是Go中可以表示任意类型的空接口,本文主要介绍了Golanginterface{}的具体使用,具有一定的参考价值,感兴趣的可以了... 目录一、什么是 interface{}?定义形China编程式:二、interface{} 有什么特别的?✅

使用Python实现调用API获取图片存储到本地的方法

《使用Python实现调用API获取图片存储到本地的方法》开发一个自动化工具,用于从JSON数据源中提取图像ID,通过调用指定API获取未经压缩的原始图像文件,并确保下载结果与Postman等工具直接... 目录使用python实现调用API获取图片存储到本地1、项目概述2、核心功能3、环境准备4、代码实现

windows和Linux安装Jmeter与简单使用方式

《windows和Linux安装Jmeter与简单使用方式》:本文主要介绍windows和Linux安装Jmeter与简单使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录Windows和linux安装Jmeter与简单使用一、下载安装包二、JDK安装1.windows设

Spring 缓存在项目中的使用详解

《Spring缓存在项目中的使用详解》Spring缓存机制,Cache接口为缓存的组件规范定义,包扩缓存的各种操作(添加缓存、删除缓存、修改缓存等),本文给大家介绍Spring缓存在项目中的使用... 目录1.Spring 缓存机制介绍2.Spring 缓存用到的概念Ⅰ.两个接口Ⅱ.三个注解(方法层次)Ⅲ.

PyTorch中cdist和sum函数使用示例详解

《PyTorch中cdist和sum函数使用示例详解》torch.cdist是PyTorch中用于计算**两个张量之间的成对距离(pairwisedistance)**的函数,常用于点云处理、图神经网... 目录基本语法输出示例1. 简单的 2D 欧几里得距离2. 批量形式(3D Tensor)3. 使用不