关于异常断电后jmeter的jmx文件异常变成二进制文件并成功恢复的心酸历程

今日下午正在编写jmeter接口,正在调试中,突然断电(由于四川高温,导致电力紧缺的很),来电了后我正常启动电脑,打开后,赶紧打开jmeter,并打开最近打开的文件,我发现我正在调试的jmx文件不是排在第一个,我有点疑惑但也没管(虽然我当时同时打开了2个jmx文件),然后我继续打开我正在编写的文件,但是打不开了!! 报错如下:only whitespace content allowed before start tag and not lu0 (positiOn: START DOCUMENT

seen lu0... @1.1),notpad++打开如下:

我慌了!!我辛苦写了4天的文件就这么坏了!!

然后马上用charGPT搜这情况怎么解决,他大概说有2个原因:jmx实际是xml文件,用notpad++打开看看第一行是不是申明了编码是utf-8,如果不是就选择utf-8编码打开。或者是不是首行有空格等无法识别的,删除后选择utf_8编码再看是不是正常显示。

我照着做了,notpad++打开完全乱码,我更慌了,因为这个文件变成了二进制文件打不开了!!

我在想明天怎么交差,难道跟领导说我写了4天的东西全部没有了,会不会觉得我就是250,我还在想为什么异常断电我的文件能损坏了,jemeter怎么这么傻!!

回家后求助家属,我一说他就说他也遇到过,一开始就给我说让我做好重新写的心里准备,因为恢复了也可能不是最新的,或者根本恢复不了,我还是抱着希望等他帮我弄,然后他下了软件,这个名字:recuva

最终整了好几次,终于帮我恢复了,我谢天谢地!!

正确的jmx文件用notpad++打开后是这样的:

后面跟我讲,像突然断电这种,文件被删除变成二进制文件,实际内容没被立即删除,只是逻辑删除,意思就是:比如我们看到文件的指针在最后一行,所以能看见所有的内容,异常时,自动将指针移动到了第一行,我们就看不见内容了,恢复的原理就是把这个指针移入到最后一行让我们可以看见。

以后为了避免这样的异常问题需要用git进行本地管理这些文件,每天都commit, 就算丢失也只是丢失没有提交的,也不至于文件直接完全损坏,几天白干。

经过这一次,我真的怕了,jmeter!!

相关推荐
han688910 小时前
jmeter操作数据库
数据库·jmeter
川石课堂软件测试3 天前
涨薪技术|0到1学会性能测试第8课-Analysis分析图
服务器·数据库·python·sql·jmeter·mysql·容器
川石课堂软件测试3 天前
JMeter异步接口测试实战
数据库·python·jmeter·mysql·kubernetes·测试用例·prometheus
zuozewei5 天前
第02篇-k6-脚本结构与生命周期
软件测试·jmeter·性能测试·k6·ai 编程
fen_fen5 天前
Jmeter5.1.1连接oracle数据库的错误复盘
数据库·jmeter·oracle
川石课堂软件测试8 天前
自动化测试|持续集成Git使用详解
git·python·jmeter·mysql·ci/cd·容器·kubernetes
wuhuhuan10 天前
JMeter 连接数据库并取值(JDBC 实战)
数据库·jmeter
大貔貅喝啤酒11 天前
Windows 安装 使用JMeter 教程
windows·jmeter
Madison-No711 天前
多语言聊天大模型--测试报告
linux·git·python·selenium·jmeter·自动化·postman
冷凝娇11 天前
【学习jmeter】ServeRest
jmeter