Я создаю образ/контейнер докера для тестирования из моего приложения для продуктивной сборки (приложение nodeJS). Теперь я хочу провести e2e-тестирование с использованием mocha/chai и nightmareJS. Итак, я создал очень простой тестовый файл.
Теперь моя проблема заключается в том, как проверить работающее приложение. Итак, я хочу «загрузить» приложение, например
- goto http://localhost
- check if login form is existing
- do login
- check if login was successful
Я не знаю, как это сделать в моем образе докера/файле e2e.js...
Вот как я создаю образ докера:
Файл Docker
# Use the production image as base image
FROM productive_build:latest
# Copy the test files
COPY e2e.js /
# Override the NODE_ENV environment variable to 'dev', in order to get required test packages
ENV NODE_ENV dev
# 1. Get test packages; AND
# 2. Install our test framework - mocha
RUN (cd programs/server && npm install)
RUN npm install -g mocha
RUN npm install chai nightmare
# Override the command, to run the test instead of the application
CMD ["mocha", "e2e.js", "--reporter", "spec"]
А вот как выглядит мой базовый файл e2e.js:
e2e.js
var Nightmare = require('nightmare'),
expect = require('chai').expect
describe('test', function () {
it('should always be true', function () {
var nightmare = Nightmare()
nightmare.end()
expect(true).to.be.true
})
})