【问题标题】:Karma test fails to connect to launched 'chrome' instanceKarma 测试无法连接到启动的“chrome”实例
【发布时间】:2022-01-11 18:21:41
【问题描述】:

我在 nodejs jenkins pod 上运行了 Karma 测试,npm 超时以连接到 Chrome 实例(在 selenium 集线器上)。
直到昨天这一切都很好,没有对任何配置文件进行任何更改,所以我怀疑底层基础设施连接失败。
请注意,使用我的本地 Chrome 实例,测试在本地运行得非常好。
我的配置如下:

browsers: ['RemoteChrome'],
singleRun: true,
autoWatch: false,
hostname: getIpAddress('eth0', 'IPv4'), // On Kubernetes, the container's network is on eth0
port: getRandomPort(), // Random port is enough for now
browserNoActivityTimeout: 600000,
browserDisconnectTolerance: 5,
customLaunchers: {
    'RemoteChrome': {
        base: 'WebDriver',
        config: {
            hostname: 'selenium-hub.MY_COMPANY_DOMAIN.com',
            port: 80,
        },
        browserName: 'chrome'
    }
}

成功构建的日志如下所示:

15:43:47  + ./node_modules/.bin/ng test --watch=false
15:43:48  Browserslist: caniuse-lite is outdated. Please run next command `npm update`
15:44:01  [32m10 01 2022 14:44:00.811:INFO [karma-server]: [39mKarma v4.1.0 server started at http://0.0.0.0:51500/
15:44:01  [32m10 01 2022 14:44:00.813:INFO [launcher]: [39mLaunching browsers RemoteChrome with concurrency unlimited
15:44:01  [32m10 01 2022 14:44:00.820:INFO [launcher]: [39mStarting browser chrome via Remote WebDriver
15:44:16  [32m10 01 2022 14:44:14.936:INFO [Chrome 94.0.4606 (Linux 0.0.0)]: [39mConnected on socket R0gwZjv8YroZjqsvAAAA with id 69976747
15:44:16  [33m10 01 2022 14:44:14.943:WARN [middleware:karma]: [39mInvalid file type (ts), defaulting to js.
15:44:24  Chrome 94.0.4606 (Linux 0.0.0): Executed 0 of 402 SUCCESS (0 secs / 0 secs)

但是自从构建开始失败我现在得到:

17:23:57  + ./node_modules/.bin/ng test --watch=false
17:23:59  Browserslist: caniuse-lite is outdated. Please run next command `npm update`
17:24:11  [32m10 01 2022 16:24:11.124:INFO [karma-server]: [39mKarma v4.1.0 server started at http://0.0.0.0:46286/
17:24:11  [32m10 01 2022 16:24:11.125:INFO [launcher]: [39mLaunching browsers RemoteChrome with concurrency unlimited
17:24:11  [32m10 01 2022 16:24:11.128:INFO [launcher]: [39mStarting browser chrome via Remote WebDriver
17:24:26  [32m10 01 2022 16:24:25.472:INFO [Chrome 94.0.4606 (Linux 0.0.0)]: [39mConnected on socket Ml6Xc9tjNamow3MKAAAA with id 46407971
17:24:26  [33m10 01 2022 16:24:25.480:WARN [middleware:karma]: [39mInvalid file type (ts), defaulting to js.
17:24:58  [33m10 01 2022 16:24:57.466:WARN [Chrome 94.0.4606 (Linux 0.0.0)]: [39mDisconnected (0 times)reconnect failed before timeout of 2000ms (ping timeout)
17:24:58  Chrome 94.0.4606 (Linux 0.0.0) ERROR
17:24:58    Disconnectedreconnect failed before timeout of 2000ms (ping timeout)

我已经尝试了here 提出的解决方案,但它不起作用。
请注意,我的 selenium 集线器运行良好,我可以 ping 它并在浏览器上显示其集线器输出。
有没有人遇到过这个问题?

【问题讨论】:

  • 我在我的问题上看到了你的问题。但是我的问题被删除了。我遇到了这个问题,我发现有些测试需要用户输入才能继续。 (如印刷)

标签: angular npm karma-jasmine


【解决方案1】:

我解决了这个问题,这确实是因为连接问题....
我手动删除了 selenium-hub pod,kubernetes 部署重新创建了一个显然没有很好地连接到它的服务的 pod。 无论如何,在重新部署所有组件(部署、服务和入口)之后,一切又恢复了同步,问题就消失了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-01-28
    • 1970-01-01
    • 2020-12-29
    • 1970-01-01
    • 1970-01-01
    • 2014-01-04
    • 1970-01-01
    • 2023-03-10
    相关资源
    最近更新 更多