在我们的端到端测试中,我们动态生成 URL 端点供我们测试。在我们的 Protractor 配置中,我希望在运行我们的测试之前使用 beforeLaunchonPrepare 来检索 URL 端点并将其设置为 baseUrl。但是,无论我尝试什么,Protractor 都会使用错误的 baseUrl 运行测试,而不是我在 beforeLaunchonPrepare 中设置的那个。

我们正在使用 Protractor 1.4.0 版。这是一个简单的配置文件,演示了这个问题:

exports.config =
    directConnect: true

    framework: 'jasmine'

    jasmineNodeOpts:
        isVerbose: true
        showColors: true
        includeStackTrace: true

    suites:
        login: 'login/**/*.coffee'
        full: '**/*.coffee'

    capabilities:
        browserName: 'chrome'

    beforeLaunch: ->
        setBaseUrl 'https://test-url.com'

    onPrepare: ->
        setBaseUrl 'https://test-url.com'

setBaseUrl = (baseUrl) ->
    exports.config.baseUrl = baseUrl

谢谢您的帮助!

最佳答案

看起来调用 browser.baseUrl = "https://test-url.com"onPrepare 中起到了作用

关于angularjs - 动态设置 Protractor baseUrl,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27386587/

10-14 07:49