我想为我的产品设置一个单元测试环境.我在Lua的Nginx上构建了一个使用mysql和redis的web应用程序.我认为虽然我是码头工人的新手,但码头工作人员会很好.我的应用程序在centos服务器(生产服务器)上运行.
我打算为MysqL,redis和webapp设置不同的容器,然后在我的mac(我的开发机器是MAC)或VM中编写UT应用程序(使用Busted框架进行Lua的单元测试)来测试它. UT应用程序将与docker容器Nginx通信,Nginx将使用容器MysqL和redis.这个好吗 ?如果是,有人可以指导我如何做到这一点?也许一些很好的链接?如果不是,那可能是更好的方法.我已经尝试过使用vagrant但是花了太多时间,这不应该是我的UT情况.
phundament/app
及其测试设置.
我们正在使用带有customized runner的dockerized GitLab安装,它可以执行docker-compose.
Note! The runner itself is running on a separate Docker host.
我们使用docker-compose.yml在堆栈中定义services,并调整development和testing.
CI configuration经过优化,可以处理隔离堆栈的多个并发测试,这只需通过指定自定义COMPOSE_PROJECT_NAME即可完成.
有关我们的测试过程的一些深入文档以及有关docker-compose和dockerized CI的有用信息.
> #testing README
> #testing Docs
> CI builds
> Extending services and Compose files
> Docker-in-Docker for CI?