Я пытаюсь настроить тестирование Selenium для своего приложения node.js с помощью drone.io
в следующем примере: http://docs.drone.io/selenium-example/.
Мой .drone.yml
выглядит так:
pipeline:
test:
image: node:latest
commands:
- yarn install
- yarn build
- yarn start
- yarn test
services:
selenium:
image: selenium/standalone-chrome
И я использую selenium-webdriver следующим образом:
const driver = new webdriver.Builder()
.withCapabilities(webdriver.Capabilities.chrome())
.usingServer(`http://selenium:4444/wd/hub`)
.build();
describe('Home page', () => {
before(async () => await driver.get(`http://127.0.0.1:8080`)); // FIXME
it('should render greeting', async () => {
const src = await driver.getPageSource();
chai.expect(src).contains('Hey there!');
});
after(async () => await driver.quit());
});
Теперь проблема в том, что Selenium не знает URI, в котором запущено приложение (очевидно, http://127.0.0.1:8080
не работает, так как это другой контейнер). Есть ли способ указать имя хоста контейнера, на котором запущен конвейер в дроне? Или как-то иначе сделать основной контейнер доступным из сервисов?
Спасибо.