首页 > 解决方案 > 与 selenium 相关的量角器不断连接到 localhost

问题描述

我有一个我的 angular-app 和一个单独的 selenium 服务器设置为 docker-compose setup

我的量角器设置看起来像这样

const { SpecReporter } = require('jasmine-spec-reporter');

exports.config = {
    allScriptsTimeout: 11000,
    specs: [
        './e2e/**/*.e2e-spec.ts'
    ],
    capabilities: {
        'browserName': 'chrome'
    },

    directConnect: false,
    baseUrl: 'http://user-frontend:4200/',
    seleniumAddress: 'http://selenium:4444/wd/hub',
    framework: 'jasmine',
    jasmineNodeOpts: {
        showColors: true,
        defaultTimeoutInterval: 30000,
        print: function() {}
    },
    onPrepare() {
        require('ts-node').register({
            project: 'e2e/tsconfig.e2e.json'
        });
        jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } }));
    }
};

现在我运行命令以使用量角器运行 end2end 测试:

ng e2e --no-serve

我所有的测试都失败了,当我调试 selenium 服务器并截屏时,我看到它正在尝试连接到自身(localhost)而不是返回到应用程序主机baseUrl: 'http://user-frontend:4200/',

在此处输入图像描述

任何想法我在这里做错了什么?

标签: javascriptangularseleniumprotractor

解决方案


您确定browser.baseUrl(或browser.get())没有在其他地方设置吗?


推荐阅读