Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.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
将文件复制到另一个目录AngularJS_Angularjs_Protractor - Fatal编程技术网

将文件复制到另一个目录AngularJS

将文件复制到另一个目录AngularJS,angularjs,protractor,Angularjs,Protractor,我正在使用量角器对一个功能进行质量保证,该功能需要更改分支上的一个文件(env.js文件)。我需要将“GET”更改为“POST”,然后运行测试。然后在测试完成后将其更改回“GET” ==Path to file that needs to change > /app/scripts/env.js== window.__env.postMethod = 'GET'; 我想我可以复制两份env.js文件。一个包含更改和原始文件。当测试运行时,我只复制env.js文件(/test/p

我正在使用量角器对一个功能进行质量保证,该功能需要更改分支上的一个文件(env.js文件)。我需要将“GET”更改为“POST”,然后运行测试。然后在测试完成后将其更改回“GET”

 ==Path to file that needs to change > /app/scripts/env.js==   
 window.__env.postMethod = 'GET';
我想我可以复制两份env.js文件。一个包含更改和原始文件。当测试运行时,我只复制env.js文件(/test/pages/support/modified_env.js),更改将覆盖原始文件(/app/scripts/env.js)。当测试结束时,我将原始文件复制回来。 我的问题是,我不知道如何使用Angularjs将文件复制到不同的目录,因为我对它比较陌生。建议?是否有其他选项可以在不修改文件的情况下将其从“GET”更改为“POST”

 ==sudo code (sorry I only know linux copy commands)==
 cp /test/pages/support/modified_env.js /app/scripts/env.js
 //run my tests
 cp /test/pages/support/original_env.js /app/scripts/env.js

我的另一个担忧是这个测试也将在CI(Jenkins和Github)上运行。在CI测试期间复制文件是否会引起关注

量角器在Node.js上运行,这意味着您必须用JavaScript编写文件复制

在量角器中,您可以使用
onPrepare()
onCleanUp()
提供准备和清理测试的功能。在这些函数中,您可以使用Node.js的文件系统模块来复制文件。下面是一个例子

var fs = require('fs');
fs.createReadStream('source-file').pipe(fs.createWriteStream('target-file'));

量角器在Node.js上运行,这意味着您必须用JavaScript编写文件复制

在量角器中,您可以使用
onPrepare()
onCleanUp()
提供准备和清理测试的功能。在这些函数中,您可以使用Node.js的文件系统模块来复制文件。下面是一个例子

var fs = require('fs');
fs.createReadStream('source-file').pipe(fs.createWriteStream('target-file'));

嗨,DennisFerguson,如果这个或任何答案已经解决了你的问题,请考虑点击复选标记。这意味着更广泛的社区,你已经找到了解决方案,并给你的回答者和你自己带来了一些声誉。没有义务这样做。嗨,DennisFerguson,如果这个或任何答案已经解决了你的问题,请考虑点击复选标记。这向更广泛的社区表明,你已经找到了一个解决方案,并给回答者和你自己带来了一些声誉。没有义务这么做。