Automated Functional Tests for a Web Application

Detta är en Kandidat-uppsats från Lunds universitet/Institutionen för elektro- och informationsteknik

Sammanfattning: When developing a large application, many companies use techniques such as Test Driven Development in order to get a range of tests on which they later can validate their code with. This has become the standard in many work environments. Problems arise when an application is already developed and tests has not been written in the course of the development. This makes it near impossible to validate the entire code base without spending hundreds of hours writing unit tests which is a problem when engineers costs a lot of money. It is in a companies interest to then find ways to write tests that cover larger parts of an application. The People Domain team at IKEA has developed an application, where the need for tests was brought to light first when large parts of the application already was developed. This is why this thesis, in coordination with IKEA, investigates and implements an automatic test flow which is run when a developer pushed code to the applications repository. The application is developed by IKEA to make it easier for co-workers to effect their schedule. This is done by creating time slots which are used as requests for when someone want, or does not want, to work. Since there were no previous tests of the UI made by IKEA, this was a new area to discover. It became apparent that it was harder to automate the entire test flow than first believed. This due to problems with the way that the application authenticates users. The authentication is done through Microsofts portal, which means that it is not the application itself that authenticates. It would require a large re-factorization of the applications structure to make tests work as wanted. To implement the test flow, a number of frameworks and libraries were investigated and evaluated and choices were made for the solutions that seemed to fit IKEAs needs the best. With a combination of meetings, interviews and literature studies information was gathered, both about the application and about the testing of software. The thesis concludes in a test suite which automatically tests parts of the application. The tests are written with help from the test framework Cypress, and tests the functionality to create a new time slot.

  HÄR KAN DU HÄMTA UPPSATSEN I FULLTEXT. (följ länken till nästa sida)