public void ShouldBookRandomSupplier_ForDestination_Majorca() { //Select the uk location HomePage.TopPanel.ClickLocation(Location.UnitedKingdom); //Enter Hotel only search data HomePage.SearchFor().HotelOnly().ToDestination("Majorca").FromCheckIn(Calendar.PickRandomCheckInDate()) .ToCheckOut(Calendar.PickRandomCheckOutDate()).SearchAndCapture(); //Check if result page is displayed within 60 sec Assert.That(HotelResultsPage.IsDisplayed(), Is.True, "Hotel Search Result Page isn't displayed within 60 sec"); //Check if any hote results are displayed for the search Assert.That(HotelResultsPage.AreResultsDisplayed(), Is.True, "No Results are available for the hotel search"); //Select random hotel from the first result page HotelResultsPage.ClickHotelNumber(HotelResultsPageRnd.PickRandomHotel()); //Check HotelDetailPage is displayed Assert.That(HotelDetailPage.IsDisplayed(), Is.True, "Hotel Detail page is not displayed"); //Select the first available room from the list HotelDetailPage.SelectRoom().OnlyOneRoomWithAvailableRoom(1).ContinueAndCapture(); //Check if the extra page is displayed Assert.That(ExtrasPage.IsDisplayed(), Is.True, "Extras page is not displayed"); //Click Booknow button ExtrasPage.BookHotel().ContinueAndCapture(); //Check Payment Page is displayed Assert.That(PaymentPage.IsDisplayed(), Is.True, "Payment page is not displayed"); }
public void ShouldBookFromSupplier_Sol_ForDestination_Benidorm() { //Enter Hotel only search data HomePage.SearchFor().HotelOnly().ToHotelName("Benidorm").FromCheckIn(Calendar.PickRandomCheckInDate()) .ToCheckOut(Calendar.PickRandomCheckOutDate()).Search(); //Check if result page is displayed within 60 sec Assert.That(HotelResultsPage.IsDisplayed(), Is.True, "Hotel Search Result Page isn't displayed within 60 sec"); //Check if any hote results are displayed for the search Assert.That(HotelResultsPage.AreResultsDisplayed(), Is.True, "No Results are available for the hotel search"); //check if sol supplier is available from first results page Assert.That(HotelResultsPage.ContainsRoomFromSupplier("SOL (PELICANOS OCAS) (A)"), Is.True, "Sol supplier isn't displayed on first result page"); //Select first room option of the first hotel displayed on the very first result page HotelResultsPage.SelectRoom().ByFirstSupplier("SOL (PELICANOS OCAS) (A)").Continue(); //Check if the extra page is displayed Assert.That(ExtrasPage.IsDisplayed(), Is.True, "Extras page is not displayed"); //Click Booknow button ExtrasPage.BookHotel().Continue(); //Check Payment Page is displayed Assert.That(PaymentPage.IsDisplayed(), Is.True, "Payment page is not displayed"); }
public void ShouldBookFromSupplier_JT_ForDestination_Paris() { //Select the uk location HomePage.TopPanel.ClickLocation(Location.UnitedKingdom); //Enter Hotel only search data HomePage.SearchFor().HotelOnly().ToHotelName("Paris, France").FromCheckIn(Calendar.PickRandomCheckInDate()) .ToCheckOut(Calendar.PickRandomCheckOutDate()).Search(); //Check if result page is displayed within 60 sec Assert.That(HotelResultsPage.IsDisplayed(), Is.True, "Hotel Search Result Page isn't displayed within 60 sec"); //Check if any hote results are displayed for the search Assert.That(HotelResultsPage.AreResultsDisplayed(), Is.True, "No Results are available for the hotel search"); //check if JT supplier is available from first results page Assert.That(HotelResultsPage.ContainsRoomFromSupplier("JT (Y)"), Is.True, "JT supplier isn't displayed on first result page"); //Select first room option of the first hotel displayed on the very first result page HotelResultsPage.SelectRoom().ByFirstSupplier("JT (Y)").Continue(); //Check if the extra page is displayed Assert.That(ExtrasPage.IsDisplayed(), Is.True, "Extras page is not displayed"); //Click Booknow button ExtrasPage.BookHotel().Continue(); //Check Payment Page is displayed Assert.That(PaymentPage.IsDisplayed(), Is.True, "Payment page is not displayed"); }
public void HotelBookingTestPaths() { //Enter flight only search data HomePage.SearchFor().HotelOnly().ToHotelName("Tenerife (Main), Tenerife, Canaries (TFS)").FromCheckIn("20/06/2014") .ToCheckOut("27/07/2014").ForAdults(2).AddAnotherRoom().ForAdults(3).WithChildren(2).OfAges(1, 3).SearchAndCapture(); //Check if result page is displayed within 60 sec Assert.That(HotelResultsPage.IsDisplayed(), Is.True, "Hotel Search Result Page isn't displayed within 60 sec"); Assert.That(HotelResultsPage.AreResultsDisplayed(), Is.True, "No hotel results page are displayed"); //Select first room option of the first hotel displayed on the very first result page HotelResultsPage.SelectRoom().ByHotelName("Iberostar Grand Hotel Mencey").ForRoomNumber(1).WithAvailableRoom(1) .ForRoomNumber(2).WithAvailableRoom(2).ContinueAndCapture(); //Check if the extra page is displayed Assert.That(ExtrasPage.IsDisplayed(), Is.True, "Extras page is not displayed"); ExtrasPage.Save(Information.FlightAndHotel); //ExtrasPage.Confirm(Information.FlightAndHotel); ExtrasPage.ClickBookNow(); Assert.That(PaymentPage.IsDisplayed(), Is.True, "Payment Page not displayed"); PaymentPage.Save(Information.FlightAndHotel); }
public void ShouldBookFromSupplier_M_ForFlightTo_Athens() { //Select the uk location HomePage.TopPanel.ClickLocation(Location.UnitedKingdom); //Enter Hotel only search data HomePage.SearchFor().FlightOnly().ToDestination("Athens, Greece").FromCheckIn(Calendar.PickRandomCheckInDate()) .ToCheckOut(Calendar.PickRandomCheckOutDate()).FromDepartureAirport("London Heathrow, London, United Kingdom (LHR)") .ForAdults(2).WithChildren(2).OfAges(2, 4).Search(); //Check if result page is displayed within 60 sec Assert.That(FlightResultsPage.IsDisplayed(), Is.True, "Flight Search Result Page isn't displayed within 60 sec"); //Check if any hote results are displayed for the search Assert.That(FlightResultsPage.AreResultsDisplayed(), Is.True, "No Results are available for the flight search."); //Search for supplier M Assert.That(FlightResultsPage.ContainsFlightFromSupplier("M"), Is.True, "M supplier is not displayed on first result page"); //Select first room option of the first hotel displayed on the very first result page FlightResultsPage.SelectFlight().ByFirstSupplier("M").Continue(); //Check if the extra page is displayed Assert.That(ExtrasPage.IsDisplayed(), Is.True, "Extras page is not displayed within 60 sec"); //Click Booknow button ExtrasPage.BookFlight().Continue(); //Check Payment Page is displayed Assert.That(PaymentPage.IsDisplayed(), Is.True, "Payment page is not displayed"); }
public void ShouldBookRandomFlightSupplier_ForDestination_Tenerife() { //Select the uk location HomePage.TopPanel.ClickLocation(Location.UnitedKingdom); //Enter Hotel only search data HomePage.SearchFor().FlightOnly().ToDestination("Tenerife").FromCheckIn(Calendar.PickRandomCheckInDate()) .ToCheckOut(Calendar.PickRandomCheckOutDate()).FromDepartureAirport(HomePageRnd.PickRandomFlightDepartureAirport()).SearchAndCapture(); //Check if result page is displayed within 60 sec Assert.That(FlightResultsPage.IsDisplayed(), Is.True, "Flight Search Result Page isn't displayed within 60 sec"); //Check if any hote results are displayed for the search Assert.That(FlightResultsPage.AreResultsDisplayed(), Is.True, "No Results are available for the flight search."); //Select Room 1 of a random hotel from the first result page FlightResultsPage.SelectFlight().ByFlightNumber(FlightResultsPageRnd.PickRandomFlight()).ContinueAndCapture(); //Check if the extra page is displayed Assert.That(ExtrasPage.IsDisplayed(), Is.True, "Extras page is not displayed"); //Click Booknow button ExtrasPage.BookFlight().ContinueAndCapture(); //Check Payment Page is displayed Assert.That(PaymentPage.IsDisplayed(), Is.True, "Payment page is not displayed"); }
public void ShouldBook_1st_MostPopularFlight_Tenerife() { //Enter Hotel only search data HomePage.SearchFor().FlightOnly().ToDestination("Tenerife").FromDepartureAirport("All London (STN,SEN,LTN,LHR,LGW,LCY), London, United Kingdom (LON)") .FromCheckIn(Calendar.PickRandomCheckInDate()).ToCheckOut(Calendar.PickRandomCheckOutDate()) .ForAdults(2).WithChildren(2).OfAges(2, 4).Search(); //Check if result page is displayed within 60 sec Assert.That(FlightResultsPage.IsDisplayed(), Is.True, "Flight Search Result Page isn't displayed within 60 sec"); //Check if any hote results are displayed for the search Assert.That(FlightResultsPage.AreResultsDisplayed(), Is.True, "No Results are available for the flight search"); //Select first room option of the first hotel displayed on the very first result page FlightResultsPage.SelectFlight().ByFlightNumber(FlightResultsPageRnd.PickRandomFlight()).Continue(); //Check if the extra page is displayed Assert.That(ExtrasPage.IsDisplayed(), Is.True, "Extras page is not displayed within 60 sec"); //Click Booknow button ExtrasPage.BookFlight().Continue(); //Check Payment Page is displayed Assert.That(PaymentPage.IsDisplayed(), Is.True, "Payment page is not displayed"); //Fill in Payment Page Details }
public void HotelOnlyDestinationSearch_Benidorm() { //Select the uk location HomePage.TopPanel.ClickLocation(Location.UnitedKingdom); //Enter Hotel only search data HomePage.SearchFor().HotelOnly().ToDestination("Mallorca (Majorca)").FromCheckIn(Calendar.PickRandomCheckInDate()) .ToCheckOut(Calendar.PickRandomCheckOutDate()).SearchAndCapture(); //Check if result page is displayed within 60 sec Assert.That(HotelResultsPage.IsDisplayed(), "Hotel Search Result Page isn't displayed within 60 sec"); //Check if any hote results are displayed for the search Assert.That(HotelResultsPage.AreResultsDisplayed(), "No Results are available for the hotel search"); //Select first room option of the first hotel displayed on the very first result page HotelResultsPage.SelectRoom().ByHotelNumber(HotelResultsPageRnd.PickRandomHotel()).OnlyOneRoomWithAvailableRoom(1).ContinueAndCapture(); //Check if the extra page is displayed Assert.That(ExtrasPage.IsDisplayed(), "Extras page is not displayed"); //Click Booknow button ExtrasPage.BookHotel().ContinueAndCapture(); //Check Payment Page is displayed Assert.That(PaymentPage.IsDisplayed(), "Payment page is not displayed"); }
public void ShouldBook_3rd_MostPopularFlight_Malaga() { //Enter Hotel only search data HomePage.SearchFor().FlightOnly().ToDestination("Malaga, Costa Del Sol, Spain").FromCheckIn(Calendar.PickRandomCheckInDate()) .ToCheckOut(Calendar.PickRandomCheckOutDate()).FromDepartureAirport("London Heathrow, London, United Kingdom (LHR)") .ForAdults(2).WithChildren(2).OfAges(2, 4).Search(); //Check if result page is displayed within 60 sec Assert.That(FlightResultsPage.IsDisplayed(), "Flight Search Result Page isn't displayed within 60 sec"); //Check if any hote results are displayed for the search Assert.That(FlightResultsPage.AreResultsDisplayed(), "No Results are available for the flight search"); //Select first room option of the first hotel displayed on the very first result page FlightResultsPage.SelectFlight().ByFlightNumber(FlightResultsPageRnd.PickRandomFlight()).Continue(); //Check if the extra page is displayed Assert.That(ExtrasPage.IsDisplayed(), "Extras page is not displayed within 60 sec"); //Click Booknow button ExtrasPage.BookFlight().Continue(); //Check Payment Page is displayed Assert.That(PaymentPage.IsDisplayed(), "Payment page is not displayed"); }
public void ShouldBook_1st_MostPopularFlightAndHotel_Benidorm() { //Select the uk location HomePage.TopPanel.ClickLocation(Location.UnitedKingdom); //Enter Hotel only search data HomePage.SearchFor().FlightAndHotel().ToDestination("Benidorm, Spain").FromCheckIn(Calendar.PickRandomCheckInDate()) .ToCheckOut(Calendar.PickRandomCheckOutDate()).FromDepartureAirport(HomePageRnd.PickRandomFlightDepartureAirport()).SearchAndCapture(); //Check if result page is displayed within 60 sec Assert.That(FlightResultsPage.IsDisplayed(), "Flight Search Result Page isn't displayed within 60 sec"); //Check if any hote results are displayed for the search Assert.That(FlightResultsPage.AreResultsDisplayed(), "No Results are available for the flight search."); //Select Room 1 of a random hotel from the first result page FlightResultsPage.SelectFlight().ByFlightNumber(FlightResultsPageRnd.PickRandomFlight()).ContinueAndCapture(); //Check if result page is displayed within 60 sec Assert.That(HotelResultsPage.IsDisplayed(), "Hotel Search Result Page isn't displayed within 60 sec"); //Check if any hote results are displayed for the search Assert.That(HotelResultsPage.AreResultsDisplayed(), "No Results are available for the hotel search"); //Select random hotel from the first result page HotelResultsPage.ClickHotelNumber(HotelResultsPageRnd.PickRandomHotel()); //Check HotelDetailPage is displayed Assert.That(HotelDetailPage.IsDisplayed(), "Hotel Detail page is not displayed"); //Select the first available room from the list HotelDetailPage.SelectRoom().OnlyOneRoomWithAvailableRoom(1).ContinueAndCapture(); //Check if the extra page is displayed Assert.That(ExtrasPage.IsDisplayed(), "Extras page is not displayed"); //check if Airport Transfer is displayed Assert.That(ExtrasPage.IsExtraDisplayed(Extras.Travelinsurance), "TravelInsurrance is not Visible on extra page"); //Expand Car Hire ExtrasPage.ExpandExtraLink(Extras.Travelinsurance); //Confirm if any results are available Assert.That(ExtrasPage.AreResultsDisplayed(Extras.Travelinsurance), "TravelInsurrance results not available"); //Pick a random option from travel insurrance ExtrasPage.PickRandomTravelInsurance(); //Add Airporttranser and click Booknow button ExtrasPage.BookFlightAndHotel().ContinueAndCapture(); //Check Payment Page is displayed Assert.That(PaymentPage.IsDisplayed(), "Payment page is not displayed"); }
public void ShouldBookRandomMultipleRoom_ForDestination_Mallorca() { //HomePage.TopPanel.ClickLocation(Location.UnitedKingdom); HomePage.SearchFor().HotelOnly().ToDestination("Mallorca").FromCheckIn("01/09/2014").ToCheckOut("08/09/2014") .ForAdults(2).AddAnotherRoom().ForAdults(1).WithChildren(2).OfAges(0, 5).Search(); Assert.That(HotelResultsPage.IsDisplayed(), Is.True, "Hotel result page is not displayed"); HotelResultsPage.SelectRoom().ByHotelNumber(5).ForRoomNumber(1).WithAvailableRoom(1).ForRoomNumber(2).WithAvailableRoom(2).Continue(); Assert.That(ExtrasPage.IsDisplayed(), Is.True, "Extras Page not showing"); ExtrasPage.Save(Information.Hotel); Assert.That(HotelResultsPage.Data.HotelName == ExtrasPage.Data.HotelName, Is.True, "Differing hotel names from SR to Extras"); ExtrasPage.BookHotel().Continue(); Assert.That(PaymentPage.IsDisplayed(), Is.True, "Payment page not displaying"); PaymentPage.Save(Information.Hotel); Assert.That(ExtrasPage.Data.HotelName == PaymentPage.Data.HotelName, Is.True, "Hotel name differs from Extras to Payment"); PaymentPage.MakeAHotelBooking() .ForGuestDetailsNumber(1).OfRoomNo(1).WithTitle(Title.Mr).WithFirstName("Test").WithLastName("Test") .ForGuestDetailsNumber(2).OfRoomNo(1).WithTitle(Title.Mr).WithFirstName("Test").WithLastName("Test") .ForGuestDetailsNumber(1).OfRoomNo(2).WithTitle(Title.Mr).WithFirstName("Test").WithLastName("Test") .ForGuestDetailsNumber(2).OfRoomNo(2).WithTitle(Title.Mr).WithFirstName("Test").WithLastName("Test") .ForGuestDetailsNumber(3).OfRoomNo(2).WithTitle(Title.Mr).WithFirstName("Test").WithLastName("Test") .ForContactDetails().AutoFill() .ForPaymentDetails() .WithPaymentType(Card.Mastercard) .WithCardHolderName("Test Test") .WithCardNo("5569510003306537") .WithExpiryDate("03/15") .WithSecurityCode("123") .WithPostCode("S11 8NX") .ForStaffDetails().WithReference("test").WithCustomerPhone("1") .Confirm(); }
public void ShouldBook_2nd_MostPopularFlightAndHotel_Tenerife() { //Select the uk location HomePage.TopPanel.ClickLocation(Location.UnitedKingdom); //Enter Hotel only search data HomePage.SearchFor().FlightAndHotel().ToDestination("Tenerife, Canaries").FromCheckIn(Calendar.PickRandomCheckInDate()) .ToCheckOut(Calendar.PickRandomCheckOutDate()).FromDepartureAirport(HomePageRnd.PickRandomFlightDepartureAirport()).SearchAndCapture(); //Check if result page is displayed within 60 sec Assert.That(FlightResultsPage.IsDisplayed(), "Flight Search Result Page isn't displayed within 60 sec"); //Check if any hote results are displayed for the search Assert.That(FlightResultsPage.AreResultsDisplayed(), "No Results are available for the flight search."); //Select Room 1 of a random hotel from the first result page FlightResultsPage.SelectFlight().ByFlightNumber(FlightResultsPageRnd.PickRandomFlight()).ContinueAndCapture(); //Check if result page is displayed within 60 sec Assert.That(HotelResultsPage.IsDisplayed(), "Hotel Search Result Page isn't displayed within 60 sec"); //Check if any hote results are displayed for the search Assert.That(HotelResultsPage.AreResultsDisplayed(), "No Results are available for the hotel search"); //Select random hotel from the first result page HotelResultsPage.ClickHotelNumber(HotelResultsPageRnd.PickRandomHotel()); //Check HotelDetailPage is displayed Assert.That(HotelDetailPage.IsDisplayed(), "Hotel Detail page is not displayed"); //Select the first available room from the list HotelDetailPage.SelectRoom().OnlyOneRoomWithAvailableRoom(1).ContinueAndCapture(); //Check if the extra page is displayed Assert.That(ExtrasPage.IsDisplayed(), "Extras page is not displayed"); //Click Booknow button ExtrasPage.BookFlightAndHotel().ContinueAndCapture(); //Check Payment Page is displayed Assert.That(PaymentPage.IsDisplayed(), "Payment page is not displayed"); }
public void ShouldMakeFlightOnlyBookingWithRandomData() { //Enter Hotel only search data HomePage.SearchFor().FlightOnly().ToDestination("Malaga").FromCheckIn(Calendar.PickRandomCheckInDate()) .ToCheckOut(Calendar.PickRandomCheckOutDate()).FromDepartureAirport("Dublin, Republic Of Ireland (DUB)") .ForAdults(2).WithChildren(2).OfAges(2, 4).Search(); //Check if result page is displayed within 60 sec Assert.That(FlightResultsPage.IsDisplayed(), "Flight Search Result Page isn't displayed within 60 sec"); //Check if any hote results are displayed for the search Assert.That(FlightResultsPage.AreResultsDisplayed(), "No Results are available for the flight search"); //Search for supplier TP //Assert.That(FlightResultsPage.ContainsFlightFromSupplier("TP"), "TP supplier is not displayed on first result page"); //Select first room option of the first hotel displayed on the very first result page //FlightResultsPage.SelectFlight().ByFirstSupplier("TP").ContinueAndCapture(); //Check if the extra page is displayed //Assert.That(ExtrasPage.IsDisplayed(), "Extras page is not displayed within 60 sec"); FlightResultsPage.SelectFlight().ByFlightNumber(1).ContinueAndCapture(); Assert.That(HotelResultsPage.IsDisplayed(), "Hotel Result page is not displayed"); Assert.That(HotelResultsPage.AreResultsDisplayed(), "No hotel results are available"); HotelResultsPage.SelectRoom().ByHotelNumber(1).ForRoomNumber(1).WithAvailableRoom(1).Continue(); // save flight information on extra page ExtrasPage.Save(Information.Flight); ExtrasPage.Confirm(Information.Flight); //Click Booknow button ExtrasPage.BookFlight().Continue(); //Check Payment Page is displayed Assert.That(PaymentPage.IsDisplayed(), "Payment page is not displayed"); }
public void ShouldBookFlight_For2Adults_ForDestination_Benidorm() { //Enter search criteria on home page and click search HomePage.SearchFor().FlightOnly().ToDestination("ALC").FromCheckIn(Calendar.PickRandomCheckInDate()).ToCheckOut(Calendar.PickRandomCheckOutDate()) .FromDepartureAirport("Manchester Airport, Manchester, United Kingdom (MAN)").ForAdults(2).Search(); Assert.That(FlightResultsPage.IsDisplayed(), "Flights results isn't displayed"); FlightResultsPage.SelectFlight().ByFlightNumber(FlightResultsPageRnd.PickRandomFlight()).Continue(); Assert.That(ExtrasPage.IsDisplayed(), "Extras page isn't displayed"); ExtrasPage.ClickBookNowAndCapture(); Assert.That(PaymentPage.IsDisplayed(), "Payment page isn't displayed"); PaymentPage.MakeAFlightBooking().ForAllGuestDetails().AutoFill().ForContactDetails().WithEmail("*****@*****.**").WithPhoneNumber("07747680480") .ForPaymentDetails().AutoFill().ForStaffDetails().AutoFill().Confirm(); Assert.That(ConfirmationPage.IsDisplayed(), "Booking Confirmation page isn't displayed"); }
public void ShouldMakeFlightAndHotelBooking() { //Enter flight only search data HomePage.SearchFor().FlightAndHotel().ToDestination("Tenerife (Main), Tenerife, Canaries (TFS)").FromCheckIn("20/06/2014") .ToCheckOut("27/07/2014").FromDepartureAirport("London Heathrow, London, United Kingdom (LHR)") .ForAdults(2).SearchAndCapture(); //check if result page is displayed Assert.That(FlightResultsPage.IsDisplayed(), Is.True, "Flight Search Result Page isn't displayed"); Assert.That(FlightResultsPage.AreResultsDisplayed(), Is.True, "No results are displayed"); //Search for supplier //Assert.That(FlightResultsPage.ContainsFlightFromSupplier("TP"), Is.True, "Supplier not found on current select page"); FlightResultsPage.SelectFlight().ByFlightNumber(1).ContinueAndCapture(); //Check if result page is displayed within 60 sec Assert.That(HotelResultsPage.IsDisplayed(), Is.True, "Hotel Search Result Page isn't displayed within 60 sec"); Assert.That(HotelResultsPage.AreResultsDisplayed(), Is.True, "No hotel results page are displayed"); //check if ItalCamel supplier is available from first results page //Assert.That(HotelResultsPage.ContainsRoomFromSupplier("ItalCamel (6)"), Is.True, "ItalCamel supplier isn't displayed on first result page"); //Select first room option of the first hotel displayed on the very first result page HotelResultsPage.ClickAvailableRoom(1, 1); //Check if the extra page is displayed Assert.That(ExtrasPage.IsDisplayed(), Is.True, "Extras page is not displayed"); ExtrasPage.Save(Information.FlightAndHotel); //ExtrasPage.Confirm(Information.FlightAndHotel); ExtrasPage.ClickBookNow(); Assert.That(PaymentPage.IsDisplayed(), Is.True, "Payment Page not displayed"); PaymentPage.Save(Information.FlightAndHotel); }
public void ShouldBook_2nd_MostPopularHotel_Benidorm() { //Enter Hotel only search data HomePage.SearchFor().HotelOnly().ToHotelName("Sol Pelicanos Ocas,Sol Pelicanos Ocas").FromCheckIn(Calendar.PickRandomCheckInDate()) .ToCheckOut(Calendar.PickRandomCheckOutDate()).AddAnotherRoom().Search(); //Check if result page is displayed within 60 sec //Assert.That(HotelDetailPage.IsDisplayed(), Is.True, "Hotel Search Result Page isn't displayed within 60 sec"); //Check if any hote results are displayed for the search //Assert.That(HotelDetailPage., Is.True, "No Results are available for the hotel search"); //Select first room option of the first hotel displayed on the very first result page HotelDetailPage.SelectRoom().ForRoomNumber(1).WithAvailableRoom(2).ForRoomNumber(2).WithAvailableRoom(1).Continue(); //Check if the extra page is displayed Assert.That(ExtrasPage.IsDisplayed(), Is.True, "Extras page is not displayed"); //Click Booknow button ExtrasPage.BookHotel().Continue(); //Check Payment Page is displayed Assert.That(PaymentPage.IsDisplayed(), Is.True, "Payment page is not displayed"); }
public void FlightsOnlyLiveChecks_Tenerife() { //Enter Hotel only search data HomePage.SearchFor().FlightOnly().ToDestination("Tenerife").FromDepartureAirport("London Heathrow, London, United Kingdom (LHR)") .FromCheckIn(Calendar.PickRandomCheckInDate()).ToCheckOut(Calendar.PickRandomCheckOutDate()).SearchAndCapture(); //Check if result page is displayed within 60 sec Assert.That(FlightResultsPage.IsDisplayed(), "Flight Search Result Page isn't displayed within 60 sec"); //Check if any hote results are displayed for the search Assert.That(FlightResultsPage.AreResultsDisplayed(), "No Results are available for the flight search"); //Select first room option of the first hotel displayed on the very first result page FlightResultsPage.SelectFlight().ByFlightNumber(FlightResultsPageRnd.PickRandomFlight()).Continue(); //Check if the extra page is displayed Assert.That(ExtrasPage.IsDisplayed(), "Extras page is not displayed within 60 sec"); //Click Booknow button ExtrasPage.BookFlight().ContinueAndCapture(); //Check Payment Page is displayed Assert.That(PaymentPage.IsDisplayed(), "Payment page is not displayed"); }
public void ShouldBook_4th_MostPopularHotel_Tenerife() { //Enter Hotel only search data HomePage.SearchFor().HotelOnly().ToHotelName("Tenerife").FromCheckIn(Calendar.PickRandomCheckInDate()) .ToCheckOut(Calendar.PickRandomCheckOutDate()).Search(); //Check if result page is displayed within 60 sec Assert.That(HotelResultsPage.IsDisplayed(), Is.True, "Hotel Search Result Page isn't displayed within 60 sec"); //Check if any hote results are displayed for the search Assert.That(HotelResultsPage.AreResultsDisplayed(), Is.True, "No Results are available for the hotel search"); //Select first room option of the first hotel displayed on the very first result page HotelResultsPage.SelectRoom().ByHotelNumber(1).OnlyOneRoomWithAvailableRoom(1).Continue(); //Check if the extra page is displayed Assert.That(ExtrasPage.IsDisplayed(), Is.True, "Extras page is not displayed"); //Click Booknow button ExtrasPage.BookHotel().Continue(); //Check Payment Page is displayed Assert.That(PaymentPage.IsDisplayed(), Is.True, "Payment page is not displayed"); }
public void ShouldBook_2nd_MostPopularFlight_Alicante() { //Enter Hotel only search data HomePage.SearchFor().FlightOnly().ToDestination("Alicante").FromCheckIn(Calendar.PickRandomCheckInDate()) .ToCheckOut(Calendar.PickRandomCheckOutDate()).FromDepartureAirport("London Heathrow, London, United Kingdom (LHR)").SearchAndCapture(); //Check if result page is displayed within 60 sec Assert.That(FlightResultsPage.IsDisplayed(), "Flight Search Result Page isn't displayed within 60 sec"); //Check if any hote results are displayed for the search Assert.That(FlightResultsPage.AreResultsDisplayed(), "No Results are available for the flight search"); //Select first room option of the first hotel displayed on the very first result page FlightResultsPage.SelectFlight().ByFlightNumber(FlightResultsPageRnd.PickRandomFlight()).Continue(); //Check if the extra page is displayed Assert.That(ExtrasPage.IsDisplayed(), "Extras page is not displayed within 60 sec"); //Check if Airport Transfer is visible on extra's page Assert.That(ExtrasPage.IsExtraDisplayed(Extras.AirportTransfer), "AirportTransfer is not Visible on extra page"); //Expand Airport Transfer Link ExtrasPage.ExpandExtraLink(Extras.AirportTransfer); //Confirm if any results are available Assert.That(ExtrasPage.AreResultsDisplayed(Extras.AirportTransfer), "AirportTransfer results not available"); //Pick a random option from travel insurrance ExtrasPage.PickRandomAirportTransfer(); //Click Booknow button ExtrasPage.BookFlight().ContinueAndCapture(); //Check Payment Page is displayed Assert.That(PaymentPage.IsDisplayed(), "Payment page is not displayed"); }
public void ShouldBookRandomSingleRoom_ForDestination_Benidorm() { //HomePage.ClickFlightOnly(); //HomePage.TypeFlightDestination("Benidorm"); //HomePage.SelectCheckIn("01/06/2014"); //HomePage.SelectCheckOut("08/06/2014"); //HomePage.SelectAirport("London (All Airports), London, United Kingdom (LON)"); //HomePage.SelectAdults(2); //HomePage.SelectChildren(2, new int[] {2,3}); //HomePage.ClickSearch(); //HomePage.SearchFor().FlightOnly().ToDestination("Benidorm").FromCheckIn("01/09/2014") // .ToCheckOut("08/09/2014").FromDepartureAirport("London (All Airports), London, United Kingdom (LON)") // .ForAdults(2).WithChildren(2).OfAges(2, 3).Search(); HomePage.SearchFor().HotelOnly().ToDestination("Benidorm").FromCheckIn("01/09/2014") .ToCheckOut("15/09/2014").ForAdults(2).Search(); Assert.That(HotelResultsPage.IsDisplayed(), Is.True, "Hotel result page is not displayed"); HotelResultsPage.ClickHotelNumber(1); HotelDetailPage.ClickAvaliableRoom(1); Assert.That(ExtrasPage.IsDisplayed(), Is.True, "Extras Page not showing"); //TODO ExtrasPage.Save(Information.Hotel); Assert.That(HotelResultsPage.Data.HotelName == ExtrasPage.Data.HotelName, Is.True, "Differing hotel names from SR to Extras"); //Assert.That(HotelResultsPage.Data.Rooms[0].RoomPrice+==ExtrasPage.Data. ExtrasPage.BookHotel().Continue(); Assert.That(PaymentPage.IsDisplayed(), Is.True, "Payment page not displaying"); PaymentPage.Save(Information.Hotel); Assert.That(ExtrasPage.Data.HotelName == PaymentPage.Data.HotelName, Is.True, "Hotel name differs from Extras to Payment"); PaymentPage.MakeAHotelBooking() .ForGuestDetailsNumber(1).OfRoomNo(1).WithTitle(Title.Mr).WithFirstName("Test").WithLastName("Test") .ForGuestDetailsNumber(2).OfRoomNo(1).WithTitle(Title.Mr).WithFirstName("Test").WithLastName("Test") .ForContactDetails().TypeFirstName("Test").WithLastName("Test").WithEmail("*****@*****.**").WithPhoneNumber("08719110030") .ForPaymentDetails() .WithPaymentType(Card.Mastercard) .WithCardHolderName("Test Test") .WithCardNo("5569510003306537") .WithExpiryDate("03/15") .WithSecurityCode("123") .WithPostCode("S11 8NX") .ForStaffDetails().WithReference("test").WithCustomerPhone("1") .Confirm(); //Assert.That(PaymentPage.Check3DSPage(), Is.True, "3DS page not displaying"); Assert.IsTrue(ConfirmationPage.IsDisplayed(), "Confirmation page isn't displayed within 60 sec"); Assert.IsTrue(ConfirmationPage.PNRNoIsDisplayed(), "PNR Number is empty"); //Assert.That(PaymentPage.ValidateConfirmationMsg(), Is.True, "Confirmation page not showing"); }
public void ShouldBookFlight_ForDestination_Benidorm() { HomePage.SearchFor().FlightOnly().ToDestination("Benidorm").FromCheckIn("01/09/2014").ToCheckOut("08/09/2014") .FromDepartureAirport("Manchester Airport, Manchester, United Kingdom (MAN)").ForAdults(2).Search(); Assert.That(FlightResultsPage.IsDisplayed(), Is.True, "Flights results not displaying"); FlightResultsPage.SelectFlight().ByFlightNumber(FlightResultsPageRnd.PickRandomFlight()).Continue(); Assert.That(ExtrasPage.IsDisplayed(), Is.True, "Extras page is not showing"); ExtrasPage.Save(Information.Flight); Assert.That(ExtrasPage.Data.OutboundAirline == FlightResultsPage.Data.OutboundAirline, Is.True, "OutboundAirline differ from flight search results to extras"); Assert.That(ExtrasPage.Data.OutboundArrivalAirport == FlightResultsPage.Data.OutboundArrivalAirport, Is.True, "OutboundArrivalAirport differ from flight search results to extras"); Assert.That(ExtrasPage.Data.OutboundArrivalTime == FlightResultsPage.Data.OutboundArrivalTime, Is.True, "OutboundArrivalTime differ from flight search results to extras"); Assert.That(ExtrasPage.Data.OutboundDepartureAiport == FlightResultsPage.Data.OutboundDepartureAirport, Is.True, "OutboundDepartureAiport differ from flight search results to extras"); Assert.That(ExtrasPage.Data.OutboundDepartureTime == FlightResultsPage.Data.OutboundDepartureTime, Is.True, "OutboundDepartureTime differ from flight search results to extras"); Assert.That(ExtrasPage.Data.OutboundFlightNo == FlightResultsPage.Data.OutboundFlightNo, Is.True, "OutboundFlightNo differ from flight search results to extras"); Assert.That(ExtrasPage.Data.InboundAirline == FlightResultsPage.Data.InboundAirline, Is.True, "InboundAirline differ from flight search results to extras"); Assert.That(ExtrasPage.Data.InboundArrivalAirport == FlightResultsPage.Data.InboundArrivalAirport, Is.True, "InboundArrivalAirport differ from flight search results to extras"); Assert.That(ExtrasPage.Data.InboundArrivalTime == FlightResultsPage.Data.InboundArrivalTime, Is.True, "InboundArrivalTime differ from flight search results to extras"); Assert.That(ExtrasPage.Data.InbounddDepartureAiport == FlightResultsPage.Data.InboundDepartureAirport, Is.True, "InbounddDepartureAiport differ from flight search results to extras"); Assert.That(ExtrasPage.Data.InboundDepartureTime == FlightResultsPage.Data.InboundDepartureTime, Is.True, "InboundDepartureTime differ from flight search results to extras"); Assert.That(ExtrasPage.Data.InboundFlightNo == FlightResultsPage.Data.InboundFlightNo, Is.True, "InboundFlightNo differ from flight search results to extras"); ExtrasPage.ClickBookNowAndCapture(); Assert.That(PaymentPage.IsDisplayed(), Is.True, "Payment page is not showing"); PaymentPage.Save(Information.Flight); Assert.That(PaymentPage.Data.TotalPrice == ExtrasPage.Data.TotalPrice, Is.True, "Total price differs between extras and payment"); Assert.That(PaymentPage.Data.OutboundJourney == ExtrasPage.Data.OutboundJourney, Is.True, "Outbound Journey differs from extras to payment"); Assert.That(PaymentPage.Data.OutboundFlightNo == ExtrasPage.Data.OutboundFlightNo, Is.True, "Outbound flight number differs from extras to payment"); Assert.That(PaymentPage.Data.OutboundDepartureTime == ExtrasPage.Data.OutboundDepartureTime, Is.True, "Outbound departure time differs from extras to payment"); Assert.That(PaymentPage.Data.InboundJourney == ExtrasPage.Data.InboundJourney, Is.True, "Inbound Journey differs from extras to payment"); Assert.That(PaymentPage.Data.OutboundFlightNo == ExtrasPage.Data.InboundFlightNo, Is.True, "Inbound flight number differs from extras to payment"); Assert.That(PaymentPage.Data.OutboundDepartureTime == ExtrasPage.Data.InboundDepartureTime, Is.True, "Inbound departure time differs from extras to payment"); PaymentPage.SelectGuestTitle(1, Title.Mr); PaymentPage.TypeGuestFirstName(1, "Test"); PaymentPage.TypeGuestLastName(1, "Test"); PaymentPage.SelectGuestDoB(1, "01/01/1985"); PaymentPage.SelectGuestTitle(1, Title.Mr); PaymentPage.TypeGuestFirstName(1, "Test"); PaymentPage.TypeGuestLastName(1, "Test"); PaymentPage.SelectGuestDoB(1, "01/02/1985"); PaymentPage.TypeContactFirstName("Test"); PaymentPage.TypeContactLastName("Test"); PaymentPage.TypeContactEmail("*****@*****.**"); PaymentPage.TypeContactNumber("08719110030"); PaymentPage.SelectPaymentType(Card.Mastercard); PaymentPage.TypeCardHolderName("Test Test"); PaymentPage.TypeCardNumber("5569510003306537"); PaymentPage.TypeExpiryDate("03/15"); PaymentPage.TypeSecurityCode("123"); PaymentPage.TypePostCode("S11 8NX"); PaymentPage.TypeStaffReference("smw test"); PaymentPage.TypeStaffCustomerPhone("1"); PaymentPage.ClickConfirmAndCapture(); }
public void ShouldSearch_MostPopularRoutes_ForAllMultiCom_Suppliers(TestScript script) { //Select united kingdom as the user location HomePage.TopPanel.ClickLocation(Location.UnitedKingdom); Assert.That(HomePage.IsDisplayed(), "Home Page isn't displayed within 60 sec"); HomePage.SearchFor().FlightOnly().ToDestination(script.Destination).FromCheckIn(Calendar.PickRandomCheckInDate()) .ToCheckOut(Calendar.PickRandomCheckOutDate()).FromDepartureAirport(script.DepartureAirport) .ForAdults(script.Adults).SearchAndCapture(); //Check if result page is displayed within 60 sec Assert.That(FlightResultsPage.IsDisplayed(), "Flight Search Result Page isn't displayed within 60 sec"); //Check if any hote results are displayed for the search Assert.That(FlightResultsPage.AreResultsDisplayed(), "No Results are available for the Flight search"); //Check if search criteria match flight search header //Assert.That(FlightResultsPage.ValidateSearchCriteria(), "Home Search criteria"); //Confirm all flights depature and return dates are same as the search criteria //Assert.That(FlightResultsPage.ValidateResultDates(),Is.True,"Search criteria dates don’t match with the flight results"); //Confirm all inbond outbond departure airport are correct //Assert.That(FlightResultsPage.ValidateResultDestinations(), "Search criteria destination don’t match with the flight results"); //Find supplier on first result page //Assert.IsTrue(FlightResultsPage.ContainsFlightFromSupplier(script.TestName),"Supplier name not found in staff 'Supplier' and 'Airline' information"); //select the first result from first page FlightResultsPage.SelectFlight().ByFlightNumber(FlightResultsPageRnd.PickRandomFlight()).ContinueAndCapture(); //check extra page is displayed Assert.That(ExtrasPage.IsDisplayed(), "Extras Page isn't displayed"); //Price checks Assert.That(ExtrasPage.ValidatePrice(), Is.True, "Difference in price comparision - Flight price on results page: {0} - Change in Price on Extra Page {1} - Orignal price on extra page: {2}", FlightResultsPage.Data.Price , ExtrasPage.Data.ChangedPrice , ExtrasPage.Data.OrignalPrice); //Check total price against changed price if (ExtrasPage.Data.TotalPrice == 0) { ExtrasPage.Save(Information.TotalPrice); Assert.AreEqual(ExtrasPage.Data.ChangedPrice, ExtrasPage.Data.TotalPrice, "Difference in price comparision - Changed price on extras page: {0} - Total Price on Extras page {1}" , ExtrasPage.Data.ChangedPrice , ExtrasPage.Data.TotalPrice); } //save flight information ExtrasPage.Save(Information.Flight); //Compare selected flight information Assert.AreEqual(FlightResultsPage.Data.OutboundDepartureTime, ExtrasPage.Data.OutboundDepartureTime, "FlightResult page Outbound DepartureTime doesn't match with Extra Page"); Assert.AreEqual(FlightResultsPage.Data.OutboundArrivalTime, ExtrasPage.Data.OutboundArrivalTime, "FlightResult page Outbound ArrivalTime doesn't match with Extra Page"); Assert.AreEqual(FlightResultsPage.Data.OutboundFlightNo, ExtrasPage.Data.OutboundFlightNo, "FlightResult page Outbound FlightNumber doesn't match with Extra Page"); Assert.AreEqual(FlightResultsPage.Data.OutboundDepartureAirport, ExtrasPage.Data.OutboundDepartureAiport, "FlightResult page Outbound DepartureAirport doesn't match with Extra Page"); Assert.AreEqual(FlightResultsPage.Data.OutboundArrivalAirport, ExtrasPage.Data.OutboundArrivalAirport, "FlightResult page Outbound ArrivalAirport doesn't match with Extra Page"); Assert.AreEqual(FlightResultsPage.Data.OutboundJourneyTime, ExtrasPage.Data.OutboundJourneyTime, "FlightResult page Outbound JourneyTime doesn't match with Extra Page"); //Assert.AreEqual(FlightResultsPage.Data.OutboundJourney, ExtrasPage.Data.OutboundJourney); Assert.AreEqual(FlightResultsPage.Data.InboundFlightNo, ExtrasPage.Data.InboundFlightNo, "FlightResult page Inbound FlightNumber doesn't match with Extra Page"); Assert.AreEqual(FlightResultsPage.Data.InboundDepartureTime, ExtrasPage.Data.InboundDepartureTime, "FlightResult page Inbound DepartureTime doesn't match with Extra Page"); Assert.AreEqual(FlightResultsPage.Data.InboundDepartureAirport, ExtrasPage.Data.InbounddDepartureAiport, "FlightResult page Inbound DepartureAirport doesn't match with Extra Page"); Assert.AreEqual(FlightResultsPage.Data.InboundArrivalAirport, ExtrasPage.Data.InboundArrivalAirport, "FlightResult page Inbound ArrivalAirport doesn't match with Extra Page"); Assert.AreEqual(FlightResultsPage.Data.InboundArrivalTime, ExtrasPage.Data.InboundArrivalTime, "FlightResult page Inbound ArrivalTime doesn't match with Extra Page"); //Assert.AreEqual(FlightResultsPage.Data.InboundJourney, ExtrasPage.Data.InboundJourney); Assert.AreEqual(FlightResultsPage.Data.InboundJourneyTime, ExtrasPage.Data.InboundJourneyTime, "FlightResult page Inbound JourneyTime doesn't match with Extra Page"); ExtrasPage.BookFlight().Continue(); Assert.That(PaymentPage.IsDisplayed(), "Payment Page isn't displayed"); //PaymentPage.Save(Information.Flight); //Assert.AreEqual(ExtrasPage.Data.OutboundDepartureTime, PaymentPage.Data.OutboundDepartureTime, "Extra's page Outbound DepartureTime doesn't match with Payment Page"); //Assert.AreEqual(ExtrasPage.Data.OutboundArrivalTime, PaymentPage.Data.OutboundArrivalTime, "Extra's page Outbound ArrivalTime doesn't match with Payment Page"); //Assert.AreEqual(ExtrasPage.Data.OutboundJourneyTime, PaymentPage.Data.OutboundJourneyTime, "Extra's page Outbound JourneyTime doesn't match with Payment Page"); //Assert.AreEqual(ExtrasPage.Data.OutboundJourney, PaymentPage.Data.OutboundJourney, "Extra's page Outbound Journey doesn't match with Payment Page"); //Assert.AreEqual(ExtrasPage.Data.OutboundAirline, PaymentPage.Data.OutboundAirline, "Extra's page Outbound Airline doesn't match with Payment Page"); //Assert.AreEqual(ExtrasPage.Data.OutboundFlightNo, PaymentPage.Data.OutboundFlightNo, "Extra's page Outbound FlightNumber doesn't match with Payment Page"); //Assert.AreEqual(ExtrasPage.Data.InboundDepartureTime, PaymentPage.Data.InboundDepartureTime, "Extra's page Inbound DepartureTime doesn't match with Payment Page"); //Assert.AreEqual(ExtrasPage.Data.InboundArrivalTime, PaymentPage.Data.InboundArrivalTime, "Extra's page Inbound ArrivalTime doesn't match with Payment Page"); //Assert.AreEqual(ExtrasPage.Data.InboundJourneyTime, PaymentPage.Data.InboundJourneyTime, "Extra's page Inbound JourneyTime doesn't match with Payment Page"); //Assert.AreEqual(ExtrasPage.Data.InboundJourney, PaymentPage.Data.InboundJourney, "Extra's page Inbound Journey doesn't match with Payment Page"); //Assert.AreEqual(ExtrasPage.Data.InboundAirline, PaymentPage.Data.InboundAirline, "Extra's page Inbound Airline doesn't match with Payment Page"); //Assert.AreEqual(ExtrasPage.Data.InboundFlightNo, PaymentPage.Data.InboundFlightNo, "Extra's page Inbound FlightNumber doesn't match with Payment Page"); //PaymentPage.Save(Information.TotalPrice); //Assert.AreEqual(ExtrasPage.Data.TotalPrice, PaymentPage.Data.TotalPrice); //PaymentPage.MakeAFlightBooking() // .ForGuestDetailsNumber(1).AutoFill() // .ForGuestDetailsNumber(2).AutoFill() // .ForContactDetails() // .WithEmail("*****@*****.**").WithPhoneNumber("08719110030") // .ForPaymentDetails() // .WithPaymentType(Card.Mastercard) // .WithCardHolderName("Test") // .WithCardNo("5454545454545454") // .WithExpiryDate("10/20") // .WithSecurityCode("123") // .WithPostCode("S11 8NX") // .ForStaffDetails().WithReference("test").WithCustomerPhone("Test") // .Confirm(); //Assert.IsTrue(ConfirmationPage.IsDisplayed(), "Confirmation page isn't displayed within 60 sec"); //Assert.IsTrue(ConfirmationPage.PNRNoIsDisplayed(), "PNR Number is empty"); //Assert.Pass(script.TestName + " Sucessful"); }