4. QA: Quality Assurance
of web applications
How do you set up a environment for QA ?
(involves a human going through test cases)
5. How to set up QA
environment
• ngrok
• expose local environment through proxy
• docker machine
• deploy conteiners to public environment
• docker + hipache proxy etc..
7. Solution: run containers
each feature branches
Access a container
with using a URL contains branch name
Running a container on demand
http://feature-A.app.dev
http://feature-B.app.dev
http://feature-C.app.dev
13. prevs.io provides a simple
QA system for web apps
With using docker container, it can provide a QA
system fast, easily, simply
14. But it has a limitation:
It's limited to only 1 container
each feature branches
http://feature-A.app.dev
http://feature-B.app.dev
http://feature-C.app.dev
App
App
App
docker
container
15. Limitation:
Actual case:
A general web app is composed
of multiple services ( API, DB etc..)
http://feature-A.app.dev
http://feature-B.app.dev
http://feature-C.app.dev
App
DB
API-2
API-1
16. Solution: add integration
with docker-compose
Base OSS project: http://github.com/mookjp/pool
Run multiple containers
each feature branches
http://feature-A.app.dev
http://feature-B.app.dev
http://feature-C.app.dev
App
App
App
DB
DB
DB
docker-compose
20. DEMOhttps://github.com/ainoya/pool/tree/docker-compose
Set up QA environment each
"master", "development" branches
Python web
app
counts up
visit times
http://master.pool.dev
Redis
stores
visit timeslink
Python web
app
counts up
visit times
http://development.pool.dev
Redis
stores
visit timeslink
22. Future plan
• Support efficient pattern shares some resources
(DB, etc...) between same applications
• More integration with other solutions
ECS, GKE/k8s,…
• Integrate with docker registry 2.0 system