gpt4 book ai didi

selenium - 验收测试,docker 和 selenium

转载 作者:行者123 更新时间:2023-12-02 18:31:45 27 4
gpt4 key购买 nike

我正在尝试创建一些旨在构建我的 javascript 应用程序的容器。

这是我需要做的:

  • 安装我的依赖项
  • 开始我的单元测试
  • 构建我的项目
  • 开始我的验收测试

  • 这是我的项目 dockerfile :
    FROM node:6.9

    # Enviroment variables
    ENV HOMEDIR /data

    RUN mkdir -p ${HOMEDIR}
    WORKDIR ${HOMEDIR}

    # install all dependencies
    ADD package.json ./
    RUN npm install

    # add node content initially
    ADD . .
    CMD CI=true npm test && npm run build && npm run test:acceptance

    事实上,当我开始验收测试时,我需要使用 selenium 服务器和 phantomjs 浏览器。这样,感谢 stackoverflow 社区,我创建了一个 docker-compose.yml 文件,如下所示:
    version: '2'
    services:
    hub:
    image: selenium/hub
    ports:
    - "4444:4444"
    phantomjs:
    image: akeem/selenium-node-phantomjs
    depends_on:
    - hub
    links:
    - hub
    app:
    build: .
    depends_on:
    - hub
    - phantomjs

    我的 selenium-phantomjs 很好地连接到我的 selenium/hub,并且 selenium 在我的主机上的 localhost:4444 可用。

    我真正的问题是我实现验收测试的工具(webdriverio)似乎无法联系到 selenium 服务器,我不知道为什么。

    我有以下堆栈:
    app_1        | [08:24:07]  COMMAND  POST     "/wd/hub/session"
    app_1 | [08:24:07] DATA {"desiredCapabilities":{"javascriptEnabled":true,"locationContextEnabled":true,"handlesAlerts":true,"rotatable":true,"maxInstances":5,"browserName":"phantomjs","loggingPrefs":{"browser":"ALL","driver":"ALL"},"requestOrigins":{"url":"http://webdriver.io","version":"4.6.1","name":"webdriverio"}}}
    app_1 | ERROR: Couldn't connect to selenium server
    app_1 | phantomjs
    app_1 | Error: Couldn't connect to selenium server
    app_1 |
    app_1 | Wrote xunit report to [./xunit].

    有什么建议吗?

    谢谢你的帮助

    最佳答案

    如果您在另一个容器中运行您的测试脚本,那么 wd_host参数需要设置为http://hub:4444/wd/hub , 而不是 http://localhost:4444/wd/hub (默认)。
    links:场制作 hub在主机名下可用 hub ,而不是 localhost , 到另一个容器。
    ports:字段仅用于从您的主机访问容器,它不会影响容器本身可以访问的内容。

    关于selenium - 验收测试,docker 和 selenium,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41609152/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com