Tag: 摩卡

摩卡testing需要20秒才能开始在docker?

我正在testing摩卡,docker组合和节点的前端唯一代码。 以下是使用docker-compose run 。 NODE_ENV=test env NODE_PATH=$NODE_PATH:$PWD/src mocha $(find . -name 'test_*.js') –compilers js:babel-core/register -r jsdom-global/register –require babel-polyfill 第一次(!)testing开始运行需要15-20秒。 我以为docker容器启动速度会很快,因为在2或3秒钟后,我的shell命令(见上)显示在控制台上。 (我认为,这将意味着容器已经起来)。 但是在显示命令之后,运行第一个testing需要15-20秒。 怎么了? 编辑:我在MacOS上的MacBook Pro

为与mysql数据库交互的node.js程序编写functiontesting的最佳策略

我有一个node.js程序,它与mysql服务器有交互。 现在我要用摩卡书写一个functiontesting。 我做functiontesting的方法如下: 用dockerode创build一个mysql docker 容器 。 让node.js程序连接到mysql服务器的docker容器并写入数据。 检查数据库是否包含预期的数据。 卸下docker箱。 我对上述策略存在的问题是: 我如何让node.js等待mysql容器准备好连接? 目前,我使用setTimeout等待几秒钟。 我不认为这是适当的。 因为不同的机器可能需要不同的秒数容器准备连接。 是否有可能创build一个虚假的MySQL服务器,而不是使用docker容器来创build一个真正的MySQL服务器? 我还没有find任何模仿mysql服务器行为的节点模块。 因为我认为创build一个假的MySQL服务器允许我知道服务器何时准备好连接。 有没有人有这样的经验? 以下是我的代码的一部分: let Docker = require('dockerode') let docker = new Docker({socketPath: '/var/run/docker.sock'}) describe('Test AddShop2Database behavior', () => { before((done) => { setTimeout(setupDatabase, // setupDatabase create a mysql docker container 1000, (err, data) => { if (err) { […]

jenkins – 摩卡testing运行在docker应用程序失败,没有任何信息

我刚开始使用jenkins进行持续集成。 出于某种原因,每当我运行我的testing时,他们都会在jenkins控制台输出中没有告诉我任何东西。 正如你可以看到下面,我只是被告知,操作失败。 sudo docker run -e NODE_ENV=test -e Q_DEBUG=1 –rm=true –link mongo:mongo –link redis:redis -it -P company/myapp:branch npm test Build step 'Execute shell' marked build as failure 我知道在这个版本中有一个错误会导致testing失败,所以这种行为并不是意想不到的,但为什么它没有给出我为什么失败或testing输出的信息?

如果testing失败,使docker构build失败

Dockerfile FROM node:carbon WORKDIR /usr/src/app COPY package*.json ./ RUN npm install RUN npm install gulp -g COPY . . run gulp build –build run npm test EXPOSE 80 CMD [ "npm", "start" ] testing运行使用mocha –recursive build.sh docker build -t my-app . echo $? 我怎么能检测到一个摩卡testing失败,因此npm test不应该好,两个docker build没有docker build ? 我可能在这里错过了一些东西。

Gitlab Mochatesting和Docker标签问题

我正在尝试创build一个正确的.gitlab-ci.yml文件。 这是在线 gitlab.com不是为自己托pipe的Gitlab。 大多数(如果不是全部的话)文档是关于一个自己托pipe的gitlab实例。 我想要的是在构build的容器上运行我的Mocha-Chaitesting,当testing通过时,我想要构build一个图像并将其存储在Gitlab Registry中,并使用与最新的git标签相匹配的标签。 testing部分 我无法得到testing运行,无论我尝试我总是得到摩卡没有find 。 下面是我的.yml文件。 生成部分正在工作。 问题是在testing部分和释放镜像的docker标签部分。 我从官方的gitlab文档中得到了官方的gitlab文档中的yml文件 image: docker:latest services: – docker:dind stages: – build – test – release – deploy variables: CONTAINER_TEST_IMAGE: registry.gitlab.com/edelacruz/cloudtrader-microservices:$CI_COMMIT_REF_NAME CONTAINER_RELEASE_IMAGE: registry.gitlab.com/edelacruz/cloudtrader-microservices:latest before_script: – docker login -u gitlab-ci-token -p $CI_JOB_TOKEN registry.gitlab.com/edelacruz/cloudtrader-microservices build: stage: build script: – docker build –pull -t $CONTAINER_TEST_IMAGE . – docker push […]