travelmatch acceptance test plan version 1.0travelmatch acceptance test plan chapter 1 introduction...

25
TravelMatch Acceptance Test Plan Version 1.0.2 D.J. van den Brand (0772180) S. He (0810831) J.M.A.P. van Hoof (0778486) G.C. Linders (0815449) M.J.M. Muijsers (0805654) G.H. Santegoeds (0890429) L.D. Stooker (0819041) J.W.J.H. Visser (0828234) 22 nd June, 2015

Upload: others

Post on 07-Jul-2020

13 views

Category:

Documents


0 download

TRANSCRIPT

TravelMatch

Acceptance Test PlanVersion 1.0.2

D.J. van den Brand (0772180)S. He (0810831)

J.M.A.P. van Hoof (0778486)G.C. Linders (0815449)

M.J.M. Muijsers (0805654)G.H. Santegoeds (0890429)L.D. Stooker (0819041)

J.W.J.H. Visser (0828234)

22nd June, 2015

Abstract

This document contains the acceptance tests for the TravelMatch application, which is used to helppeople find their holiday destination. This application is developed in the Software Engineering Projectat Eindhoven University of Technology. The tests in this document are defined in consultation with theclient, Menno Veen, representing iLysian B.V. This document complies with the ESA software standard[1].

TravelMatch Acceptance Test Plan

Contents

Document Status Sheet 2General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2Document history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

Document Change Records 3General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1 Introduction 41.1 Purpose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.2 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.3 Definitions and abbreviations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.3.1 Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.3.2 Abbreviations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.4 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2 Test plan 82.1 Test items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.2 Features to be tested . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.3 Test deliverables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.4 Testing tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.5 Environmental needs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.6 Test case pass/fail criteria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

3 Test case specification 103.1 Constraint requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103.2 General, sidebar menu, registration, login, user details and about . . . . . . . . . . . . 103.3 Vacation details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133.4 Interest Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143.5 Hotel overview and details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153.6 Back end and Artificial Intelligence . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163.7 Content Management System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183.8 Analytics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193.9 Not implemented tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

4 Test procedures 204.1 Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

5 Test reports 21

6 Requirements traceability matrix 226.1 AT to UR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226.2 UR to AT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

1

TravelMatch Acceptance Test Plan

Document Status Sheet

General

Document title: Acceptance Test PlanDocument identifier: TravelMatch.Doc.ATP/1.0.2Authors: D.J. van den Brand (0772180)

S. He (0810831)J.M.A.P. van Hoof (0778486)G.C. Linders (0815449)M.J.M. Muijsers (0805654)G.H. Santegoeds (0890429)L.D. Stooker (0819041)J.W.J.H. Visser (0828234)

Document status: Final document

Document history

Version Date Author(s) Reason0.1 08-06-2015 G.H. Santegoeds Initial setup.0.2 09-06-2015 G.H. Santegoeds First tests added.1.0 15-06-2015 G.H. Santegoeds First full version.1.0.1 16-06-2015 G.H. Santegoeds, J.W.J.H. Visser Latest fixes before demo.1.0.2 18-06-2015 G.H. Santegoeds Final version for Final AT.

2

TravelMatch Acceptance Test Plan

Document Change Records

General

Date: 22nd June, 2015Document title: Acceptance Test PlanDocument identifier: TravelMatch.Doc.ATP/1.0.2

Changes

Version Date Section Reason

3

TravelMatch Acceptance Test Plan

Chapter 1

Introduction

1.1 Purpose

This document describes the plan for testing the TravelMatch application against the user require-ments as defined in the URD [2]. The purpose of these tests is to make sure that the TravelMatchapplication complies with the requirements in the URD [2]. Therefore, this document needs to beagreed upon by the client, Menno Veen. These tests should be executed in the Acceptance Test (AT)phase of the TravelMatch project as described in the European Space Agency (ESA) softwareengineering standard [1].

1.2 Overview

Chapter 2 contains the preconditions needed for execution of the acceptance tests. Chapter 3 containsthe actual acceptance tests, with for each test an input and output specification and also the UCR’sthat are tested with each part of the test. Chapter 4 contains the procedure for the execution of theacceptance tests. Chapter 5 contains reports of performed acceptance tests.

1.3 Definitions and abbreviations

1.3.1 Definitions

Affiliate Network A network that enables you to receive money from customer redirection [18]

Analytics Data The log of analytics events that is recorded and stored on the database.

Android A popular open-source operating system for embedded devices, includingsmartphones and tablets, created by Google.

Angular JS An open-source web application framework maintained by Google.

Cosine similarity A measure of similarity between two vectors of an inner product space thatmeasures the cosine of the angle between them.

Destination advice The city, and selection of hotels, that is advised to a user after performingone or more interest analyses.

Destination attributesor tags

Each destination will have one or more destination attributeswith an associated numerical relative value, those attributes cover the samepreferences as the DNA attribute.

DNA attributeor tags

These are the attributes that the client wants to use to compose the DNAof. In the beginning 10 attributes are chosen and each image shall have arelative numerical value on one or more of the attributes. Attributes can beadded or removed later for new and existing images and DNA.

Google Play Store A public repository of free and paid apps for Android, managed by Google.

Guest user An user that does not provide login details but still uses the TravelMatchapp.

4

TravelMatch Acceptance Test Plan

Hotelstars rating A hotel classification with common criteria and procedures in participatingcountries to rate a hotel’s quality. See [21].

iLysian Short for iLysian B.V., a software engineering company situated in Eind-hoven, Netherlands. The client for the TravelMatch project.

Interest analysis The action the user will do of judging the images.

iOS A popular closed-source operating system for smartphones and tablets cre-ated by Apple.

iOS App Store A public repository of free and paid apps for iOS, managed by Apple.

JWT JSON Web Token: a compact URL-safe means of representing claims to betransferred between two parties, and used in TravelMatch as authenticationtoken, since it is self-validating.

Relational databasemanagement system(RDBMS)

A database management system (a piece of computer software that interactswith users, other applications and a database to capture and analyze data)based on the relational model (commonly based on the relational databasemodel)

TCP/IP A computer networking model and set of communication protocols usedon the internet and similar computer networks, including the TransmissionControl Protocol (TCP) and the Internet Protocol (IP)

Tinder A popular dating application for smartphones and tablets featuring a swipebased interface, where a swipe to the left indicates a dislike and a swipe tothe right indicates a like.

Travel DNA A collection of information about vacation preferences of a specific user or,more specifically, one vacation of that user. This information is stored on theserver in a table with values representing the respective gain per attributefor each image the user has swiped.

TravelMatch An application for smartphones and tablets that assists users in planning avacation. The subject of this project.

TravelMatch team A team of Computer Science students at Eindhoven University of Technologywho will design and implement the TravelMatch application.

User The user of the app.

Waverunner Waverunner Search Service by Pyton Communication Services; a search ser-vice that provides vacation offers and prices of participating travel agencies.

1.3.2 Abbreviations

AT Acceptance TestGUI Graphical User InterfaceNI Not Implemented

1.4 References

[1] ESA PSS-05-0 Issue 2, Software requirements and architecture engineering process, February 1991

[2] TravelMatch team. User Requirement Document. Version 1.2.1. 22 June 2015.

[3] TravelMatch team. Software Requirements Document. Version 1.0. 22 June 2015.

[4] TravelMatch team. Architectural Design Document. Version 1.0. 22 June 2015.

[5] TravelMatch team. Detailed Design Document. Version 1.0. 22 June 2015.

5

TravelMatch Acceptance Test Plan

[6] TravelMatch team. Software User Manual. Version 1.0. 22 June 2015.

[7] TravelMatch team. Software Transfer Document. Version 1.0. 22 June 2015.

[8] TravelMatch team. Unit Test Plan. Version 1.0. 22 June 2015.

[9] TravelMatch team. Integration Test Plan. Version 1.0. 22 June 2015.

[10] TravelMatch team. Acceptance Test Plan. Version 1.0.2. 22 June 2015.

[11] TravelMatch team. Software Configuration Management Plan. Version 1.0. 22 June 2015.

[12] TravelMatch team. Software Project Management Plan. Version 1.0. 22 June 2015.

[13] TravelMatch team. Software Quality Assurance Plan. Version 1.0. 22 June 2015.

[14] TravelMatch team. Software Verification and Validation Plan. Version 1.0. 22 June 2015.

[15] Tom Preston-Werner. Semantic Versioning 2.0.0. Retrieved 6 May 2015. http://www.semver.org/

[16] Coley Consulting. MoSCoW Prioritisation. Retrieved 29 April 2015. http://www.

coleyconsulting.co.uk/moscow.htm

[17] Tinder, Inc. Tinder. Retrieved 29 April 2015. http://www.gotinder.com/

[18] Organized Shopping, LLC. Affiliate Network. Marketing Terms. Retrieved 29 April 2015. http://www.marketingterms.com/dictionary/affiliate_network/

[19] Daiycon. About Daisycon. Retrieved 29 April 2015. http://www.daisycon.com/en/about_

daisycon/

[20] Drifty Co. Ionic: Advanced HTML5 Hybrid Mobile App Framework. Retrieved 30 April 2015.http://ionicframework.com/

[21] Hotelstars Union. Classification criteria 2015-2020. Retrieved 1 May 2015. http://www.

hotelstars.eu/index.php?id=criteria

[22] Django. http://www.django-cms.org/en/

[23] Django administration module. The Django Django admin site. Retrieved 1 June 2015. https://docs.djangoproject.com/en/1.8/ref/contrib/admin/

[24] Django Software Foundation. The Web framework for perfectionists with deadlines — Django.Retrieved 1 June 2015. https://www.djangoproject.com/

[25] Facebook User ID. User IDs and Friends. Retrieved 2 June 2015. https://developers.

facebook.com/docs/apps/upgrading#upgrading_v2_0_user_ids

[26] ImageMagick. ImageMagick: Convert, Edit, Or Compose Bitmap Images. Retrieved 2 June 2015.http://www.imagemagick.org/

[27] Google. AngularJS - Superheroic JavaScript MVW Framework. Retrieved 1 June 2015. https://angularjs.org

[28] Adobe Systems Inc. Phonegap: Home. Retrieved 1 June 2015. http://phonegap.com/

[29] Xamarin Inc. Mobile App Development & App Creation Software - Xamarin. Retrieved 1 June2015. http://xamarin.com/

[30] Eric Raymond. The Jargon File. Version 4.4.7. Retrieved 17 June 2015. http://www.catb.org/jargon/html/

6

TravelMatch Acceptance Test Plan

[31] Python Software Foundation. Classes. The Python Tutorial. Retrieved 18 June 2015. https:

//docs.python.org/2/tutorial/classes.html

[32] Python Software Foundation. PEP 0008 – Style Guide for Python Code. 1 August 2013. https://www.python.org/dev/peps/pep-0008/

[33] Django Software Foundation. Coding style. Retrieved 18 June 2015. https://docs.

djangoproject.com/en/1.8/internals/contributing/writing-code/coding-style/

[34] Django Software Foundation. Writing your first Django app, part 1. Database setup.Retrieved 18 June 2015. https://docs.djangoproject.com/en/1.8/intro/tutorial01/

#database-setup

[35] Massachusetts Institute of Technology. MIT License. Retrieved 21 June 2015. http://

opensource.org/licenses/MIT

[36] Apache Software Foundation. Apache License, Version 2.0. January 2004. http://www.apache.org/licenses/LICENSE-2.0

7

TravelMatch Acceptance Test Plan

Chapter 2

Test plan

2.1 Test items

The software to be tested is the TravelMatch application. The requirements for this software asset in consultation with the client, Menno Veen, can be found in the URD [2].

2.2 Features to be tested

The TravelMatch application must at least meet all the requirements labeled must have in theURD [2]. Also, all requirements that are implemented must be tested and must pass their acceptancetests. Requirements labeled should have, could have, or won’t have that are not implemented and nottested will be marked NI in the tracing table.

2.3 Test deliverables

Before the testing starts the following documents must be delivered:

• URD [2]

• SVVP [14]

• ATP (this document, chapters 1 though 4)

• AT input data

• The TravelMatch application

2.4 Testing tasks

Before any testing in the Acceptance Test phase can be done, the following tasks need to be completed:

• Designing the acceptance tests

• Tracing all test cases to user requirements and/or use cases

• Creation of the Acceptance Test input data

• Ensuring that all environmental needs for the AT have been satisfied

When these tasks are completed, an acceptance test can be performed according to the proceduresdescribed in chapter 4.

8

TravelMatch Acceptance Test Plan

2.5 Environmental needs

To be able to perform the acceptance tests, the following resources are needed:

• A computer with a web browser capable of accessing the Django CMS.

• A smartphone device running Android 4.1 ”Jelly Bean” and up or iOS 7.0 and up.

• A tablet device running Android 4.1 ”Jelly Bean” and up or iOS 7.0 and up.

• The TravelMatch application to be installed on these test devices.

• The Django server to be up and running with the necessary data in the database.

The test devices will be supplied by the client. The TravelMatch installation is provided by theTravelMatch team members. Django is assumed to be running on the TU/e servers.

2.6 Test case pass/fail criteria

Every test describes the criteria that should be met to pass that test. An overall AT pass can only beachieved if all tests described in chapter 3 have been performed and have all passed.

9

TravelMatch Acceptance Test Plan

Chapter 3

Test case specification

3.1 Constraint requirements

The constraint requirements from the URD are not tested in a test case, but considered a preconditionfor all of the other tests.

3.2 General, sidebar menu, registration, login, user details andabout

For this test, please take the iPad, make sure the rotation block is disabled and position yourself atthe home screen with the TravelMatch icon in view.AT 1: UCR1, UCR2, UCR2b, UCR2c, UCR2d, UCR3, UCR4, UCR5, UCR7, UCR10, UCR11, UCR13,UCR17, UCR18, UCR21, UCR22, UCR23, UCR24, UCR25, UCR27, UCR28, UCR30, UCR35, UCR36,UCR37, UCR46, UCR47, UCR48

Input specification: Output specification:Open the TravelMatch application by clickingits icon.

The TravelMatch application opens and showsthe splash screen while loading. (UCR1)After loading the welcome screen is shown. (UCR2)

Click on the log in button, which is the one thatsays ’Inloggen’

TravelMatch displays the login screen.(UCR2b)

Click the back button, which is the ’<’ icon in thetop left corner.

TravelMatch displays the welcome screen.Click on the registration button, which is the onethat says ’Registreren’

TravelMatch displays the registration screen.(UCR2c)

Click the back button.TravelMatch displays the welcome screen.

Click on the connect with Facebook button, whichis the one that says ’Verbind met Facebook’.Log in with a Facebook account that is registeredto test TravelMatch and then authorize it.

TravelMatch shows a login confirmation pop-up. (UCR2d)

Click OK.TravelMatch displays the vacation detailsscreen.

10

TravelMatch Acceptance Test Plan

Input specification: Output specification:Turn the iPad sideways to enter landscape mode.(UCR11)Turn the iPad back upwards to return to portraitmode. (UCR10)Suspend the app by clicking the home button.Double click the home button to see Travel-Match among the suspended apps. (UCR3)Click the TravelMatch app and confirm that itreturns to the last displayed screen. (UCR4)

TravelMatch displays the vacation detailsscreen.

Double click the home button and swipe upwardson the TravelMatch app to shut it down com-pletely.Open the TravelMatch application again.

TravelMatch displays the vacation detailsscreen.

Confirm that you are still logged in by openingthe sidebar menu and verifying that it holds a lo-gout button, which is the one that says ’Uitloggen’.(UCR5)Click the profile button, which is the one that says’Profiel’.

TravelMatch displays the user details screen ofthe logged in Facebook user. (UCR13)

Change your details to Naam: ’Menno’, Geslacht:’Man’ and Geboortedatum: ’01-02-1993’ and clickthe save changes button, which is the one that says’Gebruikersinfo wijzigen’.

TravelMatch displays a pop-up confirming thechanges. (UCR30), (UCR35), (UCR36), (UCR37)

Close the pop-up by clicking OK, open the sidebarmenu and click the about button, which is the onethat says ’Over deze app’.

TravelMatch displays the about screen. Ver-ify that it holds some information about the app(the logo of the company that owns it), a methodto contact that company, and all required licenseinformation. Currently no license information is re-quired because the app is not being distributed yet.(UCR18), (UCR46), (UCR47), (UCR48)

Open the sidebar menu and press the logout button,which is the one that says ’Uitloggen’.

TravelMatch displays a pop-up notifying of thelog out and displays the welcome screen. (UCR17)

Click OK.Click on the login button, then open the sidebarmenu and click the about button.

TravelMatch displays the about screen screen.(UCR23)

Open the sidebar menu and click the register but-ton, which is the one that says ’Registreren’.

TravelMatch displays the registration screen.(UCR22)

11

TravelMatch Acceptance Test Plan

Input specification: Output specification:Turn off all Internet connectivity on the device.Enter email: [email protected], password: test,repeat-password: test and click the register button.

TravelMatch displays a pop-up notifying theuser of the connection error. (UCR7)

Close the pop-up by clicking OK.Turn connectivity back on, re-enter the password:test, repeat-password: test and click register again.

TravelMatch displays a pop-up notifying theuser of the pending registration. (UCR24)

Click OK to close the pop-up.TravelMatch displays the login screen.(UCR21)

Check your email (on the iPad or elsewhere) andconfirm the pending registration by clicking the in-cluded link.

TravelMatch activates the account and displaysa confirmation to the user.

Get back to the TravelMatch application on theiPad.If necessary, enter email: [email protected],password: test and click the login button.

TravelMatch displays a pop-up confirming yourlogin. (UCR27)

Close the pop-up by clicking OK.TravelMatch displays the vacation detailsscreen.

If necessary, close the keyboard view and scrollthrough this view while changing the displayed va-cation details to Vanaf: ’1 september 2015’, Flexi-biliteit: ’2’, Tot: ’10 september 2015’, Flexibiliteit:’0’, Budget per persoon: ’600’, Volwassenen: ’3’and press the start advice button, which is the onethat says ’Start advies’, this is for use in a later test.

TravelMatch displays the Interest Analysisscreen.

Expand the header by clicking the three bars at thetop of the screen, open the sidebar menu, click thelogout button and close the pop-up by clicking OK.

TravelMatch displays the welcome screen.Click the registration button.

TravelMatch displays the registration screen.Click the connect with Facebook button and clickOK in the browser window that opens.

TravelMatch displays a pop-up confirming yourFacebook connection. (UCR25)

Close the pop-up by clicking OK.TravelMatch displays the vacation detailsscreen.

Open the sidebar menu, click logout, close the pop-up by clicking OK and click login.

TravelMatch displays the login screen.Click the connect with Facebook button and clickOK in the browser window that opens.

TravelMatch confirms your Facebook connec-tion with a pop-up. (UCR28)

Close the pop-up by clicking OK.

12

TravelMatch Acceptance Test Plan

Put down the iPad, the first part of this test is finished.

3.3 Vacation details

Now take an Android smartphone running at least Android 4.1 for the rest of the tests. Make surethat rotation blocking is not enabled. Please open the TravelMatch application.

AT 2: UCR6, UCR8, UCR9, UCR49, UCR50, UCR51, UCR52, UCR53, UCR54, UCR55, UCR57,UCR58

Input specification: Output specification:The TravelMatch application opens and showsthe splash screen while loading.After loading the welcome screen is shown.

Click on the log in buttonTravelMatch displays the login screen.

Enter email: [email protected], password: testand click the login button.

TravelMatch displays a pop-up confirming yourlogin.

Close the pop-up by clicking OK.TravelMatch displays the vacation detailsscreen.

Hold the device upright.TravelMatch is displayed in portrait mode.(UCR8)

Rotate the smartphone sideways.TravelMatch does not enter landscape mode.(UCR9)

Rotate the smartphone back upwards.Verify that it contains input fields for the departuredate, return date, budget, nr of adults and nr ofchildren. (UCR49), (UCR50), (UCR51), (UCR53),(UCR54)Verify that these fields contain the information youentered in AT1. (UCR55)Remove the budget limitation by checking the boxthat says ’Verras me’. (UCR52)Open the sidebar menu using the three bars at thetop right in the header and close it using the buttonwith the ’X’ icon at the top right of the header.(UCR58)Set the return date to ’10 augustus 2015’.Scroll down and click the start advice button.

TravelMatch displays an error informing you ofthe incorrect vacation details.

Close the pop-up by clicking OK, reset the returndate to ’10 september 2015’ and click the start ad-vice button.

TravelMatch starts the advice and displays theinterest analysis screen with a loading icon until theimages are loaded. (UCR57), (UCR6)

13

TravelMatch Acceptance Test Plan

3.4 Interest Analysis

The next test continues right where the previous one finished in the interest analysis screen. Addition-ally, on the computer, the CMS admin page must be opened in the browser at http://travelmatch.win.tue.nl:8015/admin to verify some requirements. Access the CMS by entering admin as user-name, kroket as password and clicking the Log In button.

AT 3: UCR59, UCR60, UCR61, UCR62, UCR63, UCR64, UCR65, UCR66, UCR67, UCR68, UCR69,UCR70, UCR71

Input specification: Output specification:Expand the header by clicking the three lines at thetop. (UCR66)Open and close the sidebar menu. (UCR68)Click the back button on the top left to go back tothe vacation details. (UCR67)Scroll down and click the start advice button tohead back to the analysis screen.In the CMS page, click on ’Swipe images’ and verifyif the image shown is present in that list. (UCR60)Like the first image shown by swiping it to the right.(UCR59), (UCR61)

TravelMatch displays the next image.Dislike the next image shown by swiping it to theleft. (UCR62)

TravelMatch displays the next image.Rate some more images and check if the progressbar at the bottom shows your progress in blue.(UCR69)In the CMS page, click on home, click on ’Traveldnas’ and verify if the (dis)likes are being recordedon the server. (UCR70)Rate the rest of the images until the progress bar isfull.

TravelMatch displays the calculating animationfor a certain amount of time. (UCR63), (UCR64)TravelMatch receives a recommendation fromthe back end server and displays this as the hoteloverview screen. (UCR65), (UCR71)

14

TravelMatch Acceptance Test Plan

3.5 Hotel overview and details

The next test continues right where the previous one finished, at the hotel overview screen.

AT 4: UCR72, UCR74, UCR75, UCR76, UCR77, UCR78, UCR79, UCR80, UCR81, UCR82, UCR84,UCR89, UCR96, UCR97, UCR98, UCR99, UCR100, UCR101, UCR102, UCR104, UCR132, UCR137

Input specification: Output specification:Verify that you are in a screen called ’Hotels’, withthe name of your first advice in the header and sev-eral available hotels at that destination being dis-played. (UCR72), (UCR80), (UCR132), (UCR137)Open and close the sidebar menu from the header.(UCR82)Click on the second advice button in the header,which is the one that says ’Tap hier om uw tweedeaanbeveling te zien’ to get a second advice.

TravelMatch displays the second advice hoteloverview. (UCR84)

Click on the first recommended destination in theheader, which is the one that says ’Onze eerste aan-beveling’ to go back.

TravelMatch displays the first advice hoteloverview again. (UCR89)

Scroll through this overview, if there are not enoughhotels, please try this in the second advice hoteloverview. (UCR74)Verify that the hotel overview displays an image andthe total price per person for each hotel. (UCR75),(UCR76)Verify that the hotel overview displays a Hotelstarrating and a user rating when available for that ho-tel. (UCR77), (UCR78)Click on one of the hotel images.

TravelMatch displays the hotel details view in-side the overview screen. (UCR79), (UCR96)

Verify that the hotel details view retains allpreviously displayed information including thehotel name and adds to that a descriptionand a booking button for the hotel that wasclicked. (UCR97), (UCR98), (UCR99), (UCR100),(UCR101), (UCR102)Click the booking button

TravelMatch forwards the user to their phone’sweb browser where the booking page of the selectedhotel is opened. (UCR104)

Switch back to the TravelMatch app.Click on the back button in the header.

TravelMatch displays the vacation detailsscreen. (UCR81)

15

TravelMatch Acceptance Test Plan

3.6 Back end and Artificial Intelligence

For the next tests the computer should be used with the CMS opened at the home page.

AT 5: UCR105, UCR106, UCR110, UCR111, UCR138

Input specification: Output specification:In the CMS click on swipe images.

The stored images are displayed. (UCR105)Click on the image id ’8’

The image is shown with the stored values for theDNA attributes related to it. (UCR110)

Click home and click travel dnasThe Travel DNAs consisting of likes and dislikes areshown. (UCR106), (UCR111)

Click home, click trip offers and delete all TripOffersfrom the database.Click home, click affiliate feeds and check the boxesfor all affiliate feeds in the list.In the dropdown menu labeled ’Action’, select’Parse the feed’ and click on ’Go’.

TravelMatch parses all the feeds and adds theavailable trip offers to the database.

Now click on ’Home’, click on trip offers and clickon one of the hotel names to open the offer.

A trip offer that has just been cached and parsedfrom the Arke feed is displayed. (UCR 138)

16

TravelMatch Acceptance Test Plan

The following AT tests for correctness of the implemented artificial intelligence. Starting at the 6thimage, the interest analysis is influenced by all the previous images rated by the user. Therefore, thistest is written to check for a relative output depending on the first part of the interest analysis.For this part of the test, on the computer, open three browser windows with the CMS logged in at thehome page to monitor the AI performance. In the first one, click on ’Vacation details’, at the secondone, click on ’Travel dnas’ and in the third one click ’Tags’.Additionally, in the TravelMatch app, navigate to the about screen.

AT 6: UCR133, UCR135a, UCR136

Input specification: Output specification:In the first CMS web page, delete all vacation detailsentries from the database.

TravelMatch deletes all Vacations details in-cluding all related travel dnas and blacklist items.

On the smartphone, in the TravelMatch app,open the sidebar menu, click ’Vakantiedetails’, thenscroll down and click ’Start advies’.

TravelMatch creates new a vacation details,blacklist and travel dna and starts the analysis bysending 5 random non-duplicate images to the user.

Rate the first 5 images by liking anything relatedto winter sports, adventure or flying and dislikinganything else.

TravelMatch displays a new image after eachswipe.In the meantime, the TravelMatch algorithmcalculates which tag has received the least infor-mation and has the highest priority in the CMS todecide which (not previously shown) image to showthe user.TravelMatch sends this to the user as the 6thimage.

In the third CMS window check which tags havefirst priority, then see if this tag was already ratedamong first 5 (dis)likes by refreshing the secondCMS window.The first 5 priorities are: 1-Flight, 2-Culture, 3-Beach, 4-Nightlife, 5-Sunny.If it was already rated, look up the next rankingpriorities until you reach one that was not yet rated.When you reach a tag that was not yet rated,verify if the 6th image is indeed about this tag.(UCR135a), (UCR136)Continue rating the rest of the images using thesame preference rules as before.

After the 20th image was swiped TravelMatchdisplays the calculating animation while calculatingthe best matching destination.TravelMatch displays its first recommendeddestination to you in Hotel overview screen.

Judge whether this destination indeed matches theset of (dis)likes you did. Most likely this will beOslo. (UCR133)

17

TravelMatch Acceptance Test Plan

3.7 Content Management System

Please log out of your previous session of the CMS by clicking ’Log out’ in the top right corner.

AT 7: UCR112, UCR116, UCR117, UCR119, UCR120, UCR121, UCR122, UCR124, UCR125,UCR126, UCR127, UCR128, UCR129, UCR131

Input specification: Output specification:Enter the URLhttp://travelmatch.win.tue.nl:8015/admin

in the web-browser.Access the CMS by entering admin as username,kroket as password and clicking the Log In button.

The site administration page opens. (UCR112)Click the add button to the right of Swipe Images.

The add swipe image screen is displayed.Click the button that allows you to choose a file, thiswill be labeled something like choose file dependingon the browser. Select an image to be uploadedand click the Choose button to confirm.At Image tag # 1, add a tag by selecting the fol-lowing tag from the list: Adventure and fill in 70 atits value field.At Image tag # 2, add another tag by selecting thefollowing tag from the list: Sunny and fill in 30 inits value field.Un-check the tick-box at Active.Click the Save button.

The image and the attributes of the image will besaved as draft inside the database.

Scroll to the image which was uploaded and clickon the image itself.

The CMS displays the image with all its attributes.Confirm that the values are indeed set as desiredand that the check-box called Active is unchecked.(UCR116), (UCR117), (UCR124), (UCR126)Change the value for tag Sunny to 0.Change the value for tag Adventure to 40.Check the tick-box at Active.Click Save and continue editing at the bottom ofthe screen.

The Sunny tag will be removed and the Adventuretag will be changed to value 40. The image will beactive. (UCR122), (UCR127)

Click Delete in the lower left corner of the page.Click Yes, I’m sure,

The image with its attributes is removed from thedatabase. (UCR125)

Click on Home in the top left corner.

18

TravelMatch Acceptance Test Plan

Input specification: Output specification:Click on Add to the right of Tags.

The add tag screen is displayed.Type in Forest at the Name field.Verify that the check-box named Active isunchecked.Click on Save.

TravelMatch saves the tag and displays this toyou in the tags screen.

Verify that the tag was indeed added in this list andis currently inactive. (UCR119), (UCR121)Click on Home in the top left corner.Click on Add to the right of Locations.

The add location screen is shown.Type in Eindhoven at the City name field.Type in Nederland at the Country name field.At Location tag # 1, add a tag by selecting theSunny tag from the list and fill in 70 at its valuefield.Click on Save.

The Location will be saved in the database.The locations screen is shown.

Click on the Loc id number next to Eindhoven.Confirm that the values were indeed saved as spec-ified and that the other attributes are initialized as0. (UCR120), (UCR128), (UCR129)Click on Home in the top left corner.Click on Trip offers.

The trip offers screen is displayed.Click on the name of the first trip offer in the list.

The trip offer object screen is displayed.Scroll down to the priority field and change its valueto 9999 (this gives it a very low priority) and clickSave and continue editing.

TravelMatch saves the change and informs youof this.

Scroll down to confirm the change was saved cor-rectly. (UCR131)

3.8 Analytics

The client agreed that Google analytics was ineffective for this project. Currently, all required analyticsevents are measured and recorded locally on a user’s device but a new analytics provider has yet to bechosen to send them to. Therefore, the test would consist of checking whether these events are indeedsent nowhere and is, for simplicity’s sake, left out.

3.9 Not implemented tests

Some requirements labeled should have, could have or won’t have did not make it into the versiondelivered at the end of this project. These requirements are therefore not included in this chapter.Which these are exactly can be found in the traceability table as (NI) entries, not implemented.

19

TravelMatch Acceptance Test Plan

Chapter 4

Test procedures

4.1 Testing

Make sure you have TravelMatch installed on an iPad running at least iOS 7.0, and an Androidsmartphone running at least Android 4.1. Also make sure you have a computer available with a webbrowser ready to access the CMS web page.Perform all tests in the order in which they appear in chapter 3.

20

TravelMatch Acceptance Test Plan

Chapter 5

Test reports

See chapter 5 of the STD [7].

21

TravelMatch Acceptance Test Plan

Chapter 6

Requirements traceability matrix

These tables provide a quick method to look up where each user requirement is tested in the ATP.The UCR’s are numbered as in version 1.2.1 of the URD. Some of the requirements from the firstversion of the URD have been removed in agreement with the client due to changes in the source ofvacation offers used. These requirements are indicated by strike-through in the traceability table. Notimplemented requirements are labeled as NI in the table. Some other requirements have been modifiedor added in agreement with the client. The exact changes and reasoning behind these can be found inthe URD under section 3.3.Finally, requirements 144-155 of the URD were not testable in this ATP due to a change in analyticsprovider as discussed with the client. This is explained in more detail in section 3.8.

6.1 AT to UR

AT UR1 1, 2, 2b, 2c, 2d, 3, 4, 5, 7, 10, 11, 13, 17, 18, 21

22, 23, 24, 25, 27, 28, 30, 35, 36, 37, 46, 47, 48

2 6, 8, 9, 49, 50, 51, 52, 53, 54, 55, 57, 58

3 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71

4 72, 74, 75, 76, 77, 78, 79, 80, 81, 82, 84, 89, 9697, 98, 99, 100, 101, 102, 104, 132, 137

5 105, 106, 110, 111, 133, 136, 138

6 133, 135a, 136

7 112, 116, 117, 119, 120, 121, 122, 124, 125, 126127, 128, 129, 131

22

TravelMatch Acceptance Test Plan

6.2 UR to AT

UR AT UR AT UR AT UR AT1 1 41 81 4 121 72 1 42 82 4 122 72a NI 43 83 NI 123 NI2b 1 44 84 4 124 72c 1 45 85 125 72d 1 46 1 86 NI 126 73 1 47 1 87 127 74 1 48 1 88 NI 128 75 1 49 2 89 4 129 76 2 50 2 90 NI 130 NI7 1 51 2 91 NI 131 78 2 52 2 92 NI 132 49 2 53 2 93 NI 133 610 1 54 2 94 NI 134 NI11 1 55 2 95 NI 135 NI12 NI 56 NI 96 4 135a 613 1 57 2 97 4 136 614 NI 57a NI 98 4 137 415 NI 57b NI 99 4 138 516 NI 57c NI 100 4 139 NI17 1 57d NI 101 4 140 NI18 1 57e NI 102 4 141 NI19 NI 58 2 103 NI 142 NI20 NI 59 3 104 4 143 NI21 1 60 3 105 5 144 NI22 1 61 3 106 5 145 NI23 1 62 3 107 146 NI24 1 63 3 108 NI 147 NI25 1 64 3 109 NI 148 NI26 NI 65 3 109a NI 149 NI27 1 66 3 110 5 150 NI28 1 67 3 111 5 151 NI29 NI 68 3 112 7 152 NI30 1 69 3 113 153 NI31 NI 70 3 114 154 NI32 NI 71 3 115 NI 155 NI33 NI 72 4 116 734 NI 73 117 735 1 74 4 118 NI36 1 75 4 119 737 1 76 4 120 738 NI 77 439 NI 78 440 NI 79 4

80 4

23