Ir al contenido principal

Testing a simple web application using Docker and Galen

This is a Docker tutorial for creating a docker image for the Galen framework, above is the vid and below you will find some of the steps followed.

Steps

  • Pre-reqs
    • Have node.js installed (For using galen without docker)
    • Have Java installed (For using galen without docker)
    • And docker installed
  • Create tests using galen
  • Create docker container for the galen-cli container
  • Build, Run and experiment with your new containers

Create a Dockerfile for the galen-cli container

  • Include clean ubuntu container
    • FROM ubuntu
  • Create default/working directory
    • WORKDIR /workdir
  • Install Java
    • RUN apt-get update && \
          apt-get install -y curl && \
          apt-get install -y software-properties-common && \
          add-apt-repository ppa:openjdk-r/ppa && \
          apt-get update && \
          apt-get install -y openjdk-8-jdk && \
          rm -rf /var/lib/apt/lists/* && \
          rm -rf /var/cache/oracle-jdk8-installer
  • Install Node.js
    • RUN curl -sL https://deb.nodesource.com/setup_8.x | bash - && \
          apt-get install -y nodejs
  • Install Galen framework
    • RUN npm install -g galenframework-cli --unsafe-perm=true
  • Declare the entrypoint
    • ENTRYPOINT ["galen"]
  • Add default parameters to be passed to the galen framework
    • CMD ["--help"]

Build & Run

  • Install Galen locally
    • npm install -g galenframework-cli
  • Run Galen locally
    • galen test tests/ --htmlreport reports
  • Build the container
    • docker build -t galenframework .
  • Run the container
    • docker run -it galenframework
  • Run the container against Browser Stack
    • docker run -v $(pwd):/workdir -it galenframework test tests/ --htmlreport reports -Dgalen.browserFactory.selenium.runInGrid=true -Dgalen.browserFactory.selenium.grid.url=http://USERNAME:ACCESSKEY@hub.browserstack.com/wd/hub
  • Run the container against Sauce Labs
    • docker run -v $(pwd):/workdir -it galenframework test tests/ --htmlreport reports -Dgalen.browserFactory.selenium.runInGrid=true -Dgalen.browserFactory.selenium.grid.url=http://USERNAME:ACCESSKEY@ondemand.saucelabs.com/wd/hub

Resources

Entradas populares de este blog

Creating a Docker container for a NodeJs application: Express + Mongo + Docker Compose

This is a Docker tutorial for creating a NodeJs container using expressjs and mongoose, above is the vid and below you will find the steps followed.
StepsPre-reqsHave node.js installedAnd docker installed (make sure you have docker-compose as well)Create an simple node app using expressjs and mongooseModify your container and create a docker-compose fileBuild and Run your new container Create your simple node appInitialize the node appnpm initInstall the dependencies for our appnpm install --save express mongoose Create the database.jsCreate the index.js Create a dockerfileInclude container with node preinstalled: FROM nodeCreate default/working directory: WORKDIR /usr/src/appCopy package.json to workdir and install dependencies (which we will need in this case😊): COPY package.json .RUN npm install Copy the rest of the app (just the index.js file in this case)COPY . .Expose the port required for reaching our expressjs appEXPOSE 3000Add a command to run when this container is star…

Creating a Mongo replicaset using docker: Mongo replicaset + Nodejs + Docker Compose

This is a Docker tutorial for creating a Mongo replica set using docker compose and also a couple more containers to experiment with the replica set, above is the vid and below you will find some of the steps followed.
StepsPre-reqsHave node.js installedAnd docker installed (make sure you have docker-compose as well)Create a container for defining configurations for a mongo instanceCreate a container for setting up the replica setCreate a simple node app using expressjs and mongoose (A modified version from the previous video)Create a docker-compose file with the mongo and setup containers and two additional containers for experimenting with the replica setBuild, Run and experiment with your new containers Create a dockerfile for the first mongo container (not really needed but you could configure more stuff if needed)Include container with mongo preinstalled: FROM mongoCreate default/working directory: WORKDIR /usr/src/configsCopy mongo's configurations file into the container
C…

Creating a tensorflow.js + vue.js simple application in javascript

This is a Tensorflow.js tutorial for creating a simple application using Vue.js, above is the vid and below you will find some of the steps followed. Steps Pre-reqs Have node.js installed Create the Vue.js application using nuxt.js Add support for tensorflow.js in vue.js and add a simple model Add the simple tensorflow.js model using vue.js into github pages Create the Vue.js application using nuxt.js Install vue.js cli npm install -g vue-cli Create a base Vue.js app using the starter kit from Nuxt vue init nuxt-community/starter-template simple-vue-tensorflow Start the dev server npm run dev Create empty component components/TensorflowExample.vue Add the component into the page pages/index.vue …