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

相关推荐
少云清1 天前
【金融项目实战】6_接口测试 _Jmeter自动化脚本实现(重点)
jmeter·自动化·金融项目实战
少云清1 天前
【金融项目实战】5_接口测试 _Jmeter功能脚本实现
jmeter·金融项目实战
卖个几把萌2 天前
【11】JMeter在GUI页面修改语言后右上角不显示线程数和持续时间问题解决
测试工具·jmeter
张永清-老清2 天前
每周读书与学习->JMeter性能测试脚本编写实战(四)-利用JMeter对MySQL数据库查询进行性能测试
学习·jmeter·性能调优·jmeter性能测试·性能分析·每周读书与学习
Jul1en_2 天前
【性能测试工具】JMeter下载安装、编辑环境变量和中文配置
测试工具·jmeter
一碗面4214 天前
Jmeter的进阶功能
jmeter
月明长歌6 天前
从零构建高并发测试体系:JMeter 接口压测与全链路实战指南
jmeter
一碗面4217 天前
Jmeter的基本使用
jmeter
余防8 天前
jmeter使用
jmeter
maqiang_7208 天前
jmeter做压力测试如何找到软件瓶颈
jmeter·压力测试