升级到Angular 6后,ng e2e无法在可用端口上运行。 例如,如果您使用的是Angular的先前版本(我们以前使用的是4),则您的应用程序服务将在端口号4200中,而当我们同时运行ng e2e时,它会选择一个可用端口(例如49152)来运行测试。
在Angular 6升级之后,当我尝试在类似情况下运行测试时,它失败,并显示错误消息Port 4200已经在使用中。
PS:出于CI的目的,我不想手动将--port {port number}传递给命令,因为硬编码端口号将在CI中并行执行时遇到问题。升级到Angular 6时出现问题,我应该更改配置吗?
任何建议都会有很大帮助!谢谢
答案 0 :(得分:3)
我能够找到解决方案。
只需运行ng e2e --port 0即可在可用端口上运行。
执行此命令时,测试将在并行执行的情况下查找可用的端口。我们不需要每次都明确地硬编码或提供端口号。
答案 1 :(得分:0)
我遇到了类似的问题。您可以尝试执行以下操作:在package.json
文件中的scripts
中,您可以从此处输入"e2e": ng e2e --port number
,在命令行中,您可以输入npm run e2e
。