Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何对读取或写入文件的函数进行单元测试?_Javascript_File_Unit Testing_Jasmine_Electron - Fatal编程技术网

Javascript 如何对读取或写入文件的函数进行单元测试?

Javascript 如何对读取或写入文件的函数进行单元测试?,javascript,file,unit-testing,jasmine,electron,Javascript,File,Unit Testing,Jasmine,Electron,我的electron应用程序正在配置文件中保存参数 如何对loadConfig()和saveConfig()函数进行单元测试,而不修改进入prod的实际数据 我很乐意向您展示我已经完成的工作,但我不知道从哪里开始。这里您的主要动机是测试您是否能够加载和保存数据。考虑在测试开始时它是否是一个空白文件 第一步。将一些数据写入文件 第二步。读取相同的数据 第三步。由于您自己在一开始就编写了数据,因此您应该提前知道该数据到底是什么 第四步。使用执行读取操作后获得的数据断言已拥有的相同数据 第五步。清除该

我的electron应用程序正在配置文件中保存参数

如何对
loadConfig()
saveConfig()
函数进行单元测试,而不修改进入prod的实际数据


我很乐意向您展示我已经完成的工作,但我不知道从哪里开始。

这里您的主要动机是测试您是否能够加载和保存数据。考虑在测试开始时它是否是一个空白文件

第一步。将一些数据写入文件
第二步。读取相同的数据
第三步。由于您自己在一开始就编写了数据,因此您应该提前知道该数据到底是什么
第四步。使用执行读取操作后获得的数据断言已拥有的相同数据
第五步。清除该文件中的所有数据

这将确保你所写和所读的内容是否正确

您也可以在某个虚拟文件上执行此操作,因为主要目的是测试该文件的读写操作。

请发布一个源代码块,其中包含用于操作文件的函数(或示例函数)和工具的导入语句。我将尽我所能。TDD意味着我还没有任何代码;-)好的,那么祝你好运,我明白你的意思了。好的,但是如果用户更改了文件怎么办?“清除”步骤会破坏他们的数据。测试虚拟文件意味着更改函数的代码。这就是为什么我提到您也可以在某个虚拟文件上执行此算法,因为您测试读写操作的主要动机将完成。不用担心,继续编码;)