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

相关推荐
糖果店的幽灵6 天前
软件测试接口测试从入门到精通:JMeter接口测试
软件测试·jmeter·接口测试·压力测试·性能测试
1candobetter7 天前
JMeter 性能压测监控实战
jmeter
wenying_443237448 天前
软件测试—JMeter—跨线程组关联
jmeter·压力测试
川石课堂软件测试8 天前
UI自动化测试|下拉选择框&弹出框&滚动条操作实践
开发语言·python·jmeter·ui·docker·单元测试·harmonyos
测试199811 天前
Jmeter性能压测:TPS与QPS
自动化测试·软件测试·python·jmeter·测试用例·压力测试·性能测试
川石课堂软件测试11 天前
UI自动化测试|XPath元素定位实践
功能测试·测试工具·jmeter·microsoft·ui·postman·harmonyos
wenying_4432374411 天前
软件测试—Jmeter后置处理器—XPath提取器
jmeter
wenying_4432374412 天前
软件测试—Jmeter后置处理器—正则表达式提取器
jmeter·压力测试