Java代写:FIT5171 Test A Web Application




Rockets are fascinating. There are many different systems of rockets that launch satellites and other payloads into space (and back). In this semester-long project, we will develop and test a simple Web application,, that registers and maintains orbital rockets, launches, and launch service providers.

Functional Specification

As a small software development house, you and your partner(s) have been contracted to build an online application ( for maintaining information about orbital rockets. The system will support the following functionality:

  • User authentication
  • Showing rocket-related information: rockets, launches, launch service providers.
  • Add/update information about the above entities.

Main Technologies

Each project group will have the following tools set up for it on a server hosted by the university.

  • GitHub ( a code hosting platform for version control and collaboration. Each project group will setup a private repository name as fit5171_2019_X, where X is your team number you selected on Moodle. If your team members are from multiple tutorials, please select one tutorial for demonstration and interview purposes.
  • Jenkins ( a continuous integration tool. Each group’s project name will follow that of the GitHub repository’s name, e.g., fit5171_2019_3.
  • SonarQube ( a code quality monitoring tool. Each group’s code base will be continuously monitored and analysed by SonarQube, towards the end of the semester.

In your development and testing, we will make use of the following main languages/frameworks/technologies. These technologies will not all be needed at the start, and they will be gradually introduced into the assignments.

  • The Spark Framework ( a tiny Java framework for creating Web applications.
  • OrmLite ( a lightweight object-relational mapping framework in Java, so that you can interact with the database by writing Java code, but not SQL code.
  • Freemarker ( a template engine in Java that allows easy creation of HTML pages through templating.


This project will be divided into three parts: unit testing, integration testing and system testing. You will continually add functionality to the project and test it. An overview of the three assignments is as follows.

Phase 1

Test planning and system setup: plan the testing approach, correctly setting up development and testing environment, and understanding and extending the code base provided (using a TDD approach).

Phase 2

Unit (and some integration) testing: perform unit testing on the system and develop a plan for integration testing.

Phase 3

Integration testing and software quality: continue to write unit tests and integration tests for the system. These tests will also need to be automatically executed on the continuous integration server.