如何解决使用selenium-webdriver连接到在本地运行的流星在gitlab-runner中超时
我们目前正在通过gitlab cicd使用流星为我们的应用程序运行集成测试。自举后,我们通过以下方式发射流星
METEOR_LOCAL_DIR=.meteor/test meteor --once --settings ./private/settings/testing/acceptance_test/settings.json --port 5000
并在启动后运行以下javascript:
/* eslint-disable no-console */
const webdriver = require('selenium-webdriver')
function testInIE11() {
// Input capabilities
const capabilities = {
name: process.env.LT_TEST_NAME,platform: 'windows 10',browserName: 'Internet Explorer',browser_version: '11.0','ie.compatibility': 11001,resolution: '1024x768',build: 'IE 11 regression test',tunnel: true,tunnelName: process.env.LT_TUNNEL_NAME
}
const grid_host = 'hub.lambdatest.com/wd/hub'
const grid_url = `https://${process.env.LT_USERNAME}:${process.env.LT_ACCESS_KEY}@${grid_host}`
console.log("Building driver....")
const driver = new webdriver.Builder()
.usingServer(grid_url)
.withCapabilities(capabilities)
.build()
console.log("Driver built completed")
driver
.get('localhost:5000')
.then(() => console.log("Sleeping..."))
.then(() => driver.sleep(10000))
.then(() => console.log("Finding email"))
.then(() => driver.findElement(webdriver.By.id('email')))
.then(() => driver.quit())
.catch(err => {
console.error(err)
return driver.quit().then(() => process.exit(1))
})
}
testInIE11()
但是,大约50/50的测试停在driver.get('localhost:5000')并在一个小时后超时。这些是最后的日志行:
=> Started your app.
=> App running at: http://localhost:5000/
> a@2.0.0 test:ie11 /builds/ah/a-monorepo/packages/ah
> node tests/ie11.spec.js
Building driver....
Driver built completed
有人遇到过类似的事情吗?我找不到任何相关问题...
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。