【问题标题】:Change baseUrl on Angular-CLI e2e protractor test在 Angular-CLI e2e 量角器测试中更改 baseUrl
【发布时间】:2017-06-28 23:12:07
【问题描述】:

我想针对正在运行的服务器运行我的角度 e2e 测试。默认 URL 在 protractor.conf.js 文件中配置,但似乎没有允许在运行时覆盖它的命令行参数。我尝试使用选项--public-host,但它不起作用。除了覆盖protractor.conf.js文件,还有什么解决办法吗?

【问题讨论】:

    标签: angular protractor angular-cli


    【解决方案1】:

    使用 angular 6 唯一有效的命令是这个

    ng e2e --dev-server-target="" --base-url="https://localhost:8080"
    

    【讨论】:

      【解决方案2】:

      您可以传递命令行参数,我从未使用过 Angular CLI,但您通常可以将其添加到您正在运行的脚本后面 ng e2e --baseUrl=http://your.other.url.com,这可能是 Angular CLI 需要双 -- 所以它变为ng e2e -- --baseUrl=http://your.other.url.com。可能需要双 -- 来告知命令行参数已传递。 如果您有多个命令行参数,则不需要这样做,如果 Angular CLI 需要它,只需添加一次。当我有一个 npm 脚本时,我通常会使用它。

      祝你好运

      【讨论】:

      • 它似乎不起作用。我运行了以下命令ng e2e --server false -- --baseUrl=http://your.other.url.com,浏览器仍然尝试连接到protractor.conf.js 中指定的baseUrl。
      • 我之前也尝试过这些选项,但也没有用。
      【解决方案3】:

      看起来像是昨天发布的最新版@angular/cli (see changelog) 正在解决覆盖 baseUrl 的问题。但是,与选项 --serve false 结合使用时,它不起作用。

      【讨论】:

      • 正如您在更改日志中看到的,您需要提供参数--publicHost。你也试过这个吗?
      【解决方案4】:

      传递--no-serve--base-href=http://yoururltotest:8080 将不会构建以及提供来自命令的--base-href= 中传递的基本url。

      我尝试了其他选项的组合,但没有成功。

      所以命令将是

      ng e2e --no-serve --base-href=https://yoururltotest:8888
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-04-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多