无法在docker容器中创build量angular器testing报告

如果我在我的机器上对protractor运行我的testing报告正确生成和截图保存。 我现在的目标是在我要使用docker地方进行自动化testing。

docker-compose.yml看起来像这样

 version: '2' services: app: image: app ports: - 9000:9000 selenium: image: selenium/standalone-chrome ports: - 4444:4444 volumes: - /dev/shm:/dev/shm protractor: volumes: - ./tmp:/assets/tmp image: test command: "dockerize -wait http://selenium:4444 -wait http://app:9000 -timeout 60m protractor /assets/conf.js" 

问题在于报告和屏幕截图没有保存到卷中。 如果不是使用docker图像作为量angular器,而是使用本地应用程序和selenium图像正确工作。

出于testing目的,我已经在我的卷(本地)上手动添加了该文件夹,并且可以看到该文件夹​​正在被删除,所以我假定链接是正确的。

我的conf.js作为准备添加记者的方法就像

 onPrepare: function() { jasmine.getEnv().addReporter(new HtmlReporter({ baseDirectory: '/assets/tmp/screenshots' })); } } 

记者用的是量angular器-html-截图记者 。

我的问题是问题在哪里,报告的path,权限等,以及可能是一个修复或替代方法

提前致谢

经过一些debugging发现, jasmine版本是不同的(本地和docker的形象),并没有触发创build截图的方法。

版本不同,因为使用npm install -g protractor2.5.1 vs 4.0.13npm install -g protractor

使用protractor版本2.5.1创build图像解决了这个问题。

Interesting Posts