TestLink在线Excel用例转换xml
【原文链接】:https://blog.tecchen.tech ,博文同步发布到博客园。
由于精力有限,对文章的更新可能不能及时同步,请点击上面的原文链接访问最新内容。
欢迎访问我的个人网站:https://www.tecchen.tech 。
Git仓库地址:【TestLink-SpringBoot使用EasyExcel和BootStrap FileInput上传Excel】
项目功能
TestLink在线Excel用例转换xml
将符合用例模板的Excel测试用例,转换成xml,用于导入TestLink进行用例管理。
使用方法
- 1、编写测试用例
 - 2、打开本项目http://localhost:8080,浏览选择文件,点击图标上的上传icon
 - 3、选择sheet名称
 - 4、点击点我转换按钮,后台处理好数据后,点击确定按钮,下载生成的xml文件。
 - 5、在tesklink中,导入生成的xml用例。
 
技术框架
SpringBoot使用EasyExcel和BootStrap FileInput上传Excel
后端
- springboot
 - springmvc
 - easyexcel
 - jdom2
 
前端
- jquery v1.12.4
 - Bootstrap v4.3.1
 - bootstrap-fileinput v5.0.1
 - jquery-confirm v3.3.0
 
遇到的坑
- 1、使用fileinput插件,不显示中文
 
根据官网Demo,注意了css和js的引入顺序,并添加了“language: 'zh'”的配置项,页面还是显示英文。
HTML:
    <input id="excel" name="file" class="file" type="file" placeholder="选择一个Excel文件">
JS:
    $("#excel").fileinput({
        language: 'zh',
        maxFileCount: 1,
        required: true,
        uploadAsync: false,
        allowedFileExtensions : ['xls','xlsx'],//允许的文件类型
        enctype: 'multipart/form-data',
        uploadUrl: server + '/testLink/uploadExcel',
        showRemove:false,
        showPreview : true, //是否显示预览
        validateInitialCount:true,
        overwriteInitial: true//是否在上传下一个文件的时候覆盖前一个
    });
最终一篇博客中写到:删除class="file" 即可。
- 2、使用EasyExcel导入2003版本的xls文件,报错
 
根据报错提示,在MultipartFile.getInputStream()外层包装了BufferedInputStream,解决问题
EasyExcelFactory.getReader(new BufferedInputStream(excelFile.getInputStream())...
- 3、fileinput插件不显示图标,其实是不显示bootstrap的图标
 
bootstrap4默认不支持图标,将bootstrap3的图标字体复制到项目中,并添加fonts.css,文件准备即可完成。
由于使用SpringBoot2.x,maven自动将字体文件忽略,如下修改pom.xml,图标正常展示。
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-resources-plugin</artifactId>
    <configuration>
        <nonFilteredFileExtensions>
            <nonFilteredFileExtension>eot</nonFilteredFileExtension>
            <nonFilteredFileExtension>svg</nonFilteredFileExtension>
            <nonFilteredFileExtension>ttf</nonFilteredFileExtension>
            <nonFilteredFileExtension>woff</nonFilteredFileExtension>
            <nonFilteredFileExtension>woff2</nonFilteredFileExtension>
        </nonFilteredFileExtensions>
    </configuration>
</plugin>
- 4、下载xml文件
 
ajax不能下载文件,只要后台返回文件名,前台通过window.location.href = url或者form表单提交进行文件下载。
var $eleForm = $("<form method='get'></form>");
$eleForm.attr("action",url);
$(document.body).append($eleForm);
//提交表单,实现下载
$eleForm.submit();
												
											TestLink在线Excel用例转换xml的更多相关文章
- TestLink学习七:TestLink测试用例Excel转换XML工具
		
TestLink对于测试用例的管理来说,是蛮强大的,但是在导入导出这块,功能有点弱,本文针对测试用例的导入,转载了一个Excel转换成xml工具. 1.根据到处的测试用例xml,定义一下我的Excel ...
 - 转:Excel转换XML工具<一>
		
http://blog.csdn.net/candle806/article/details/7441695最近在整理测试用例,所以想找一个合适的工具来完成对测试需求.测试用例的管理.对比了一翻,发现 ...
 - 转:TestLink1.9.3测试用例:Excel转换XML工具<二>实现代码
		
TestLink1.9.3测试用例:Excel转换XML工具<二>实现代码 http://blog.csdn.net/candle806/article/details/7490599 以 ...
 - 【Python】实现将testlink上的用例指定格式保存至Excel,用于修改上传
		
背景 前一篇博客记录的可以上传用例到testlink指定用例集的脚本,内部分享给了之后,同事希望能将testlink上原有的用例下载下来,用于下次修改上传,所有有了本文脚本. 具体实现 获取用例信息 ...
 - testlink用例转换工具2018.12版
		
首先说明一点,网上有很多资料,但真正可用的很少:在本人经过百度后,发现其实很多案例会因为各种原因而无法最终实现. Testlink用例转换工具,可以大致分为3种工具: 1)EX-Converter由第 ...
 - 【Python】Python实现Excel用例直接导入testlink-UI界面小工具
		
1.写在前面 testlink上传用例一种方法是excel转换为xml,然后再用xml上传,还有一种是调用api进行上传.最开始写了个转换工具,是将excel转换为xml,然后在testlink里上传 ...
 - VSTO学习笔记(七)基于WPF的Excel分析、转换小程序
		
原文:VSTO学习笔记(七)基于WPF的Excel分析.转换小程序 近期因为工作的需要,要批量处理Excel文件,于是写了一个小程序,来提升工作效率. 小程序的功能是对Excel进行一些分析.验证,然 ...
 - Python导出Excel为Lua/Json/Xml实例教程(二):xlrd初体验
		
Python导出Excel为Lua/Json/Xml实例教程(二):xlrd初体验 相关链接: Python导出Excel为Lua/Json/Xml实例教程(一):初识Python Python导出E ...
 - Python导出Excel为Lua/Json/Xml实例教程(一):初识Python
		
Python导出Excel为Lua/Json/Xml实例教程(一):初识Python 相关链接: Python导出Excel为Lua/Json/Xml实例教程(一):初识Python Python导出 ...
 
随机推荐
- MySql中varchar(10)和varchar(100)的区别
			
背景 许多使用MySQL的同学都会使用到varchar这个数据类型.初学者刚开始学习varchar时,一定记得varchar是个变长的类型这个知识点,所以很多初学者在设计表时,就会把varchar(X ...
 - Lombda表达式(五)
			
public class Test05 { /* * lambda表达式是用来简化匿名内部类的一种函数式编程的语法. * 只有SAM接口才能使用lambda表达式 * 方法引用和构造器引用是用来简化l ...
 - 【算法】HashMap相关要点记录
			
在刷leetcode的算法题时,HashMap需要大量使用,而且也是面试的高频问题.这里记录了HashMap一些增.删.改.查的实现细节和时间复杂度,罗列了一些比较有用的方法,以及其它的一些细节. 1 ...
 - 面试时说Redis是单线程的,被喷惨了!
			
Redis是单线程的,这话搁以前,是横着走的,谁都知道的真理.现在不一样,Redis 变了.再说这句话,多少得有质疑的语气来跟你辩驳一番.意志不坚定的,可能就缴械投降,顺着别人走了. 到底是什么样的, ...
 - LoRaWAN和LoRa的区别在那里?
			
有很多人都分不清楚LoRaWAN和LoRa到底有什么区别,甚至有人认为它们是一样的,但其实这两个不一样的. LoRa是一个物理层的协议,而LoRaWAN则指的是MAC层的组网协议.虽然现有的LoRaW ...
 - 03 . Gin+Vue开发一个线上外卖应用(用户数据创建,插入,跨域处理)
			
功能和背景介绍 在项目的登录功能中,如果在登录时发现用户名和密码在用户表中不存在,会自动将用户名和密码保存在用户表中,创建一个新的用户. 因此,除了使用手机号和验证码登录以外,还支持使用用户名.密码进 ...
 - Vmware - 安装并启动 Centos 7
			
下载 Linux 安装包 http://mirrors.aliyun.com/centos/7.8.2003/isos/x86_64/ 不同版本的 Centos https://mirrors.ali ...
 - Error: pg_config executable not found.
			
pip 安装 psycopg2 安装及错误 现象: Error: pg_config executable not found. Please add the directory containing ...
 - Appium常用操作之「微信滑屏、触屏操作」
			
坚持原创输出,点击蓝字关注我吧 作者:清菡 博客:oschina.云+社区.知乎等各大平台都有. 目录 一.滑屏操作 1.访问之后,马上就滑屏可以吗? 2.连续实现 2 次滑屏 3.代码 二.模拟触屏 ...
 - [Luogu P1829] [国家集训队]Crash的数字表格 / JZPTAB (莫比乌斯反演)
			
题面 传送门:洛咕 Solution 调到自闭,我好菜啊 为了方便讨论,以下式子\(m>=n\) 为了方便书写,以下式子中的除号均为向下取整 我们来颓柿子吧qwq 显然,题目让我们求: \(\l ...