Skip to content

npathai/flying-high

Repository files navigation

flying-high

My rendition of https://github.com/wakaleo/flying-high, a web application that provides airline booking service. The service has been created with Outside-In testing using Behavior Driven Development methodology.

The goal of creating this pet project is to learn various technologies in different spaces.

Technologies/Frameworks/Libraries used:

Behavior Driven Development/End to End Testing/Acceptance Testing

Do Agile software development as it was meant to be done!

Thucydidies/Serenity

Serenity is an open source library that helps you write higher quality automated acceptance tests faster. Visit: http://www.thucydides.info/#/whatisserenity

JBehave

Serenity internally uses JBehave stories for creating executable specifications. Visit: http://jbehave.org/

Selenium Webdriver

Selenium automates browsers. That's it! Visit: http://www.seleniumhq.org/

Spring Web Client

Consuming REST webservice for testing web application Visit: https://spring.io/guides/gs/consuming-rest/

Web Application

Angular 2

No words to describe the awesomeness! Used it with TypeScript Visit: https://angular.io/

Angular CLI

It is a savior that generates templates for everything. Saves a lot of time! Visit: https://cli.angular.io/

Angular 2 Bootstrap + Bootstrap Styling

Using bootstrap components in Angular 2 Visit: https://valor-software.com/ng2-bootstrap/#/

Web Services Integration & Unit tests

Spring Boot Integration Test

Integration testing of Spring boot web service Visit: https://spring.io/guides/gs/testing-web/

Spock Unit Test

Why not take unit testing at a new level with Spock, a testing library written in Groovy. What makes it stand out from the crowd is its beautiful and highly expressive specification language. Given, When, Then flow. Visit: http://spockframework.org/

Web Services

Spring Boot

Takes an opinionated view of building production-ready Spring applications. Spring Boot favors convention over configuration and is designed to get you up and running as quickly as possible. Visit: http://projects.spring.io/spring-boot/

Database

MongoDB

A fun NoSQL database with JSON and Javascript in data tier. Visit: https://www.mongodb.com/

Dependency management

NPM for web application

npm is the package manager for JavaScript and the world’s largest software registry. Discover packages of reusable code — and assemble them in powerful new ways. Visit: https://www.npmjs.com/

Maven for Acceptance tesing & Spring Web Services

I so thought of using gradle but already I was boggled with so many new technologies that I preferred not to :) Visit: https://maven.apache.org/

Well that is it for now!