Bir Docker kabında bir Jenkins CI üzerinden Nightwatch-Cucumber
ile yazılmış otomatik testlerimi yürütmek istiyorum. Bunun için kullanmak istediğim bir Docker resmim var.Selenyum testlerini bir Docker konteynırında Jenkins CI üzerinden çalıştırmanın en kolay yolu
Daha ayrıntılı olarak yapmak istediğim şey budur. Aynı makinede Jenkins CI işi
- Başlangıç testleri Docker görüntü yüklenir ve ilgili Docker konteyner başlayacaktır. Bu kapsayıcı bir Unix işletim sistemine dayanır. Ayrıca, Docker konteynerde bazı yapılandırmalar yürütülecektir.
- Testler (yerel veya uzak) xvfb ile başsız bir modda yürütülür ve rapor Jenkins makinesine kaydedilir.
GitLab CI fazla bir .gitlab-ci.yml
yapılandırma dosyasında üzerine fark ettik ve çok iyi çalıştırır:
image: "my-docker-image"
stages:
- "chrome-tests"
before_script:
- "apt-get update"
- "apt-get install -y wget bzip2"
- "npm install"
cache:
paths:
- node_modules/
run-tests-on-chrome:
stage: "chrome-tests"
script:
- "whereis xvfb-run"
- "xvfb-run --server-args='-screen 0 1600x1200x24' npm run test-chrome"
Ama Jenkins CI ile aynı prosedürü gerçekleştirmek istiyoruz. Bunu yapmanın en kolay yolu nedir? Ro otomatik testlerimi Jenkins tarafından çağrılan Docker görüntüsünde çalıştırır? Dockerfile yazmalı mıyım, yoksa ya da olmasın mı?
Lütfen Jenkins dosyanızın nasıl göründüğüne dair bir örnek verebilir misiniz? – NewWorld
@NewWorld Testleri yapmak için Docker Compose ile bir Jenkins serbest stil boru hattı kullandım. Onlar sadece bir dizi kabuk betiği – Serey