我正在尝试使用量角器和 gulp 设置端到端测试。因此,为了在 CI 服务器上执行我的测试,我需要分拆一个为我的 html/js/css 提供 ionic 服务的服务器。
我不完全确定 ionic cli 如何触发服务器,它是否有某种任务运行器?如果是这样,我可以从 gulp 脚本中触发它吗?
我正在尝试使用量角器和 gulp 设置端到端测试。因此,为了在 CI 服务器上执行我的测试,我需要分拆一个为我的 html/js/css 提供 ionic 服务的服务器。
我不完全确定 ionic cli 如何触发服务器,它是否有某种任务运行器?如果是这样,我可以从 gulp 脚本中触发它吗?
这不是最优雅的方式,但我相信这可以完成工作。
首先包括child-process
在你的gulpfile.js
var exec = require('child_process').exec;
创建一个新的 gulp 任务startServer
,例如
gulp.task('startServer', function(){
exec('ionic serve', function (err, stdout, stderr) {});
});
将此新任务传递给您的默认任务,例如,
gulp.task('default', [/*'task1','task2',...,*/'startServer']);
然后简单地运行gulp
而不是,ionic serve
你就准备好了。
希望有帮助。:)
正如您可以在此处阅读的:http ://www.reddit.com/r/ionic/comments/362log/how_does_ionic_serve_all_work/ ,它启动自己的 Web 服务器(例如使用 WAMPP 或 XAMPP 时)。
所以,我实际上去测试了它,它确实是真的;如果您熟悉 XAMPP 或 WAMPP,您可以在www
WAMPP 文件夹中启动您的 ionic 项目,然后您可以通过http://localhost/myapp/www链接访问它(不使用 ionic serve 命令),如果您已经使用 ionic start myapp 启动了您的 ionic 应用程序。
我对 Gulp 没有那么丰富的经验,但你可以看看这个插件https://www.npmjs.com/package/gulp-live-server是否能帮助你完成任务。