SlideShare a Scribd company logo
docker in daeqaci
测试的痛点
• 测试随机过
• 测试机器器软件环境与线上环境不不⼀一致
• 测试不不是隔离的,相互影响
• ⽆无法在⾮非测试机器器上复现测试(apitest,checkpage, webdriver)
• 测试初始化数据慢,每次初始都是⼀一样的数据
核⼼心
• 实现测试container与线上app的基础软件环境是
完全⼀一致的
结构
shire 上线/ 主
dump data:
mysql/redis/beansdb
$: daeqaci-init-data --test-name apitest
⽣生成init data image
pr/merge ⾏行行为
⽣生成docker container编排:
$dae docker init
docker-compose.yaml
mysql/beansdb/redis/
venv/init-data/app
进程、⽹网络隔离
测试流程:
$dae docker compose up
dae sync: 利利⽤用venv image 直接缓存
shire data init: 利利⽤用data image直接略略过
$dae test -p tests
简化命令:
daeqaci-executor —test-name ut
dump data image
• 多种数据源的持久化
• 持续更更新机制
• 简单的更更新命令
docker-compose.yaml
• ⽣生成容器器编排组织⽂文件
• 让每个测试有⾃自⼰己完整的、独⽴立的、
可重现的环境
• 秒级启动
douban happyday docker for daeqaci
docker-compose.yaml
container up
• ⼀一键启动所有关联服务
• ⼀一键进⼊入container隔离环境
测试命令
• daeqaci-executor --test-name ut --enable-tune-
venv --load-init-image init-data/dae-sns-
basic:latest
• 最简化测试流程命令
界⾯面
• docker on daeqaci 流程机制验证通过
• sns/movie 测试跑通
• 速度⼤大幅提升
• 测试可移植、可重复
最终效果
测试结果
• http://qa-ci.intra.douban.com/view/happyday-show/
sns最终效果
traditional ci docker ci
censor 165s
http://
qaci.intra.douban.com/
view/sns/view/master/job/
sns_censor_unittest/1429/
67s
http://qa-ci:8080/job/peteris-
subject_sns-master-censor-
fast/1/
api 93s
http://
qaci.intra.douban.com/
view/sns/view/master/job/
sns_api_test/2923/
73s
http://qa-ci:8080/job/peteris-
subject_sns-master-apitest-
fast/8/
ut 212s
http://
qaci.intra.douban.com/
view/sns/view/master/job/
sns_unittest/2975/
131s
http://qa-ci:8080/job/peteris-
subject_sns-master-unittest-
fast/12/
checkpa
ge
314s
http://
qaci.intra.douban.com/
view/sns/view/master/job/
sns_auto_checkpage/
5468/
91s
http://qa-ci:8080/job/peteris-
subject_sns-master-
checkpage-fast/7/
docker traditional
sns最终效果(2)
traditional docker
ut 467s
http://qa-ci:8080/view/
Server/view/Subject/view/
movie/job/peteris-
subject_movie-master-
unittest/133/
465s
http://qa-ci:8080/job/
peteris-subject_movie-
master-unittest-fast/3/
checkpage 424s
http://qa-ci:8080/job/
peteris-subject_movie-
master-checkpage-fast/
11/
158s
http://qa-ci:8080/job/
peteris-subject_movie-
master-checkpage-fast/
11/
webdriver 600s
http://qa-ci:8080/view/
Server/view/Subject/view/
movie/job/peteris-
subject_movie-master-
webdriver/134/
535s
http://qa-ci:8080/job/
peteris-subject_movie-
master-webdriver-fast/5/
api 387s
http://qa-ci:8080/view/
Server/view/Subject/view/
movie/job/peteris-
subject_movie-master-
apitest/136/
138s
http://qa-ci:8080/job/
peteris-subject_movie-
master-apitest-fast/4/
movie最终效果
traditional docker
movie最终效果(2)
thanks

More Related Content

PDF
Docker在豆瓣的实践 刘天伟-20160709
PDF
[NYC Meetup] Docker at Nuxeo
PPTX
Scaling Development Environments with Docker
PDF
Docker, Kubernetes, and Mesos recipes for Java developers
PDF
Introduction openstack-meetup-nov-28
PPTX
Deploying Windows Containers on Windows Server 2016
PPTX
Getting Started with Docker
PPTX
Real World Lessons on the Pain Points of Node.JS Application
Docker在豆瓣的实践 刘天伟-20160709
[NYC Meetup] Docker at Nuxeo
Scaling Development Environments with Docker
Docker, Kubernetes, and Mesos recipes for Java developers
Introduction openstack-meetup-nov-28
Deploying Windows Containers on Windows Server 2016
Getting Started with Docker
Real World Lessons on the Pain Points of Node.JS Application

What's hot (20)

PPTX
Deploying applications to Windows Server 2016 and Windows Containers
PPTX
Real World Experience of Running Docker in Development and Production
PDF
Clocker - The Docker Cloud Maker
PPTX
Running .NET on Docker
PDF
Docker summit 2015: 以 Docker Swarm 打造多主機叢集環境
PPT
Learn basic ansible using docker
PDF
Docker Basics & Alfresco Content Services
PPT
Python Deployment with Fabric
PPTX
The How and Why of Windows containers
PDF
Ansible new paradigms for orchestration
PDF
Docker at Djangocon 2013 | Talk by Ken Cochrane
PPTX
Real World Lessons on the Pain Points of Node.js Applications
PDF
The Docker "Gauntlet" - Introduction, Ecosystem, Deployment, Orchestration
PPTX
Exploring Docker Security
PDF
Continuous Integration: SaaS vs Jenkins in Cloud
PDF
Deploying Docker (Provisioning /w Docker + Chef/Puppet) - DevopsDaysPGH
PDF
Things I've learned working with Docker Support
PDF
Docker at Shopify: From This-Looks-Fun to Production by Simon Eskildsen (Shop...
PDF
On demand-block-storage-for-docker
PDF
Docker 進階實務班
Deploying applications to Windows Server 2016 and Windows Containers
Real World Experience of Running Docker in Development and Production
Clocker - The Docker Cloud Maker
Running .NET on Docker
Docker summit 2015: 以 Docker Swarm 打造多主機叢集環境
Learn basic ansible using docker
Docker Basics & Alfresco Content Services
Python Deployment with Fabric
The How and Why of Windows containers
Ansible new paradigms for orchestration
Docker at Djangocon 2013 | Talk by Ken Cochrane
Real World Lessons on the Pain Points of Node.js Applications
The Docker "Gauntlet" - Introduction, Ecosystem, Deployment, Orchestration
Exploring Docker Security
Continuous Integration: SaaS vs Jenkins in Cloud
Deploying Docker (Provisioning /w Docker + Chef/Puppet) - DevopsDaysPGH
Things I've learned working with Docker Support
Docker at Shopify: From This-Looks-Fun to Production by Simon Eskildsen (Shop...
On demand-block-storage-for-docker
Docker 進階實務班
Ad

More from Tianwei Liu (10)

PPTX
2021 ee大会-旷视ai产品背后的研发效能工具建设
PDF
2020 gops-旷视城市大脑私有云平台实践-刘天伟
PDF
豆瓣Paa s平台 dae - 2017
PDF
DAE 新变化介绍
PPT
Mr&ueh数据库方面
PPT
Kmeans in-hadoop
PPT
Hadoop introduction 2
PPT
Hadoop introduction
PPT
2021 ee大会-旷视ai产品背后的研发效能工具建设
2020 gops-旷视城市大脑私有云平台实践-刘天伟
豆瓣Paa s平台 dae - 2017
DAE 新变化介绍
Mr&ueh数据库方面
Kmeans in-hadoop
Hadoop introduction 2
Hadoop introduction
Ad

Recently uploaded (20)

PPTX
CH1 Production IntroductoryConcepts.pptx
PPTX
Lecture Notes Electrical Wiring System Components
PPTX
Recipes for Real Time Voice AI WebRTC, SLMs and Open Source Software.pptx
DOCX
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
PDF
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
PPTX
Foundation to blockchain - A guide to Blockchain Tech
PDF
Well-logging-methods_new................
PDF
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
PPTX
Construction Project Organization Group 2.pptx
PDF
Mitigating Risks through Effective Management for Enhancing Organizational Pe...
PDF
SM_6th-Sem__Cse_Internet-of-Things.pdf IOT
PPTX
Strings in CPP - Strings in C++ are sequences of characters used to store and...
PPTX
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
PPTX
Lesson 3_Tessellation.pptx finite Mathematics
PPTX
MCN 401 KTU-2019-PPE KITS-MODULE 2.pptx
PPTX
web development for engineering and engineering
PDF
Arduino robotics embedded978-1-4302-3184-4.pdf
PPTX
UNIT 4 Total Quality Management .pptx
PDF
July 2025 - Top 10 Read Articles in International Journal of Software Enginee...
PPTX
KTU 2019 -S7-MCN 401 MODULE 2-VINAY.pptx
CH1 Production IntroductoryConcepts.pptx
Lecture Notes Electrical Wiring System Components
Recipes for Real Time Voice AI WebRTC, SLMs and Open Source Software.pptx
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
Foundation to blockchain - A guide to Blockchain Tech
Well-logging-methods_new................
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
Construction Project Organization Group 2.pptx
Mitigating Risks through Effective Management for Enhancing Organizational Pe...
SM_6th-Sem__Cse_Internet-of-Things.pdf IOT
Strings in CPP - Strings in C++ are sequences of characters used to store and...
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
Lesson 3_Tessellation.pptx finite Mathematics
MCN 401 KTU-2019-PPE KITS-MODULE 2.pptx
web development for engineering and engineering
Arduino robotics embedded978-1-4302-3184-4.pdf
UNIT 4 Total Quality Management .pptx
July 2025 - Top 10 Read Articles in International Journal of Software Enginee...
KTU 2019 -S7-MCN 401 MODULE 2-VINAY.pptx

douban happyday docker for daeqaci