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

时间:2016-10-25 13:19:33

标签: angularjs protractor

我是QA&使用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/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测试期间复制文件会引起关注吗?

1 个答案:

答案 0 :(得分:2)

Protractor在Node.js上运行,这意味着你必须用JavaScript编写文件复制。

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

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