关于异常断电后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!!

相关推荐
古人诚不我欺2 小时前
jmeter常用配置元件介绍总结之函数助手
jmeter
川石课堂软件测试2 小时前
性能测试|docker容器下搭建JMeter+Grafana+Influxdb监控可视化平台
运维·javascript·深度学习·jmeter·docker·容器·grafana
古人诚不我欺3 小时前
jmeter常用配置元件介绍总结之取样器
jmeter
十叶知秋3 小时前
【jmeter】jmeter的线程组功能的详细介绍
数据库·jmeter·性能测试
我非夏日3 小时前
JMeter基础篇
jmeter
茶馆大橘12 小时前
微服务系列五:避免雪崩问题的限流、隔离、熔断措施
java·jmeter·spring cloud·微服务·云原生·架构·sentinel
土小帽软件测试18 小时前
jmeter基础01-2_环境准备-Mac系统安装jdk
java·测试工具·jmeter·macos·软件测试学习
土小帽软件测试1 天前
jmeter基础03_汉化jmeter界面
测试工具·jmeter·软件测试学习
紫晓宁1 天前
jmeter结合ansible分布式压测--3压测执行
分布式·jmeter·ansible
黑色叉腰丶大魔王1 天前
《通过 Jmeter 压测存储过程详解》
jmeter