Ver 0.9.10
Test Manager

Anantha

Test Manager

AI Test Report

Issues: 6
Feedback: 3
Tests: 9

The KAYAK app's HOME page presents a concerning level of technical debt and compliance oversights, hindering user experience and raising security concerns. While the page earns a decent overall score of 7, the presence of 12 bugs across a spectrum of critical areas demands immediate attention. Performance suffers significantly from multiple resource loading failures caused by DNS resolution errors and outdated polyfill libraries. GDPR compliance emerges as a prominent area of weakness, with concerns spanning data retention policies, third-party tracking practices, and implicit consent management issues. Furthermore, accessibility falls short with missing alt text for images, inadequate text contrast, and lack of focus indicators on skip links.

Best Aspects

The app is still functional and provides travel information to users.

Areas for Improvement

Multiple performance, security, and GDPR compliance issues on the HOME page create a poor user experience and pose potential risks.

Key Suggestions

  • Prioritize fixing the DNS resolution errors and updating the polyfill library to improve performance.
  • Address all GDPR compliance issues to avoid legal repercussions and protect user privacy.
  • Implement accessibility best practices to ensure inclusivity and meet WCAG guidelines.
  • Conduct regular security audits to identify and remediate vulnerabilities.
Alejandro's profile

Alejandro

Accessibility Tester

Missing Focus Indicator on Skip Link

Priority: 7/10
Confidence: 9/10
WCAG
Keyboard Navigation
Focus Indicators
Why is this a bug?

The 'Skip to main content' link, which is crucial for keyboard and screen reader users, lacks a visible focus indicator when it receives focus via keyboard navigation. This violates WCAG 2.4.7 Focus Visible, as users cannot visually identify which element has focus, making navigation difficult, especially for users with motor impairments or cognitive disabilities.

Suggested Fix

Implement a clear and visible focus indicator (e.g., a CSS outline or box-shadow) for the 'Skip to main content' link when it receives focus.

Why Fix This?

Addresses WCAG 2.4.7, improves keyboard navigation usability, particularly for users with motor or visual impairments.

Route To

Frontend Engineer

Sharon's profile

Sharon

API and Networking Tester

Outdated Polyfill Library

Priority: 7/10
Confidence: 8/10
general
performance
security
Why is this a bug?

The webpage is loading polyfill.min.js from cdnjs with version 4.8.0. Given that the current year is 2025, version 4.8.0 is significantly outdated. Using an outdated polyfill library can lead to missing necessary polyfills for newer browser features, potential compatibility issues with modern browsers, and known security vulnerabilities that have been addressed in newer versions. Newer browser feature support will be degraded, as the polyfills provided in version 4.8.0 might not include the latest fixes and features.

Suggested Fix

Update the version of polyfill.min.js to the latest stable version available on cdnjs. Evaluate modern toolchains that handle polyfilling automatically such as Babel or a modern bundler.

Why Fix This?

Fixing this will ensure compatibility with newer browsers, improve performance by only including necessary polyfills, and mitigate potential security vulnerabilities associated with outdated libraries.

Route To

Frontend Engineer

Relevant Network Call
https://cdnjs.cloudflare.com/polyfill/v3/polyfill.min.js?version=4.8.0&features=es2015%2Ces2016%2Ces2017%2Ces2018%2Ces2019%2Cfetch%2CAbortController%2CIntersectionObserver%2CResizeObserver%2CstructuredClone%2CCustomEvent%2CArray.prototype.at%2CArray.prototype.flatMap%2CObject.entries%2CObject.fromEntries%2CNodeList.prototype.forEach%2CElement.prototype.closest%2CElement.prototype.append%2CElement.prototype.remove%2CString.prototype.replaceAll%2CString.prototype.matchAll%2CIntl.PluralRules
Jason's profile

Jason

AI Tester

Multiple resource loading failures due to DNS resolution errors.

Priority: 7/10
Confidence: 8/10
network
performance
Why is this a bug?

The console log contains numerous 'Failed to load resource: net::ERR_NAME_NOT_RESOLVED' errors. This indicates that the browser is unable to resolve the domain names of the resources, leading to failed requests and potentially broken functionality.

Suggested Fix

Investigate the DNS configuration of the application and the server hosting the resources. Ensure that the domain names are correctly configured and accessible. Check network connectivity and firewall rules.

Why Fix This?

Resource loading failures can lead to broken images, stylesheets, scripts, and other essential components, resulting in a degraded user experience or complete application malfunction. The occurrence of many of these errors implies a serious system issue.

Route To

DevOps Engineer, Backend Engineer, Network Engineer

Relevant Network Call
Examine network calls to identify the failing resources.
Pete's profile

Pete

Privacy and Security Tester

Lack of explicit data retention policy

Priority: 7/10
Confidence: 8/10
GDPR Compliance
Data Retention Policy
Why is this a bug?

The website does not appear to provide a clear and easily accessible data retention policy outlining how long user data is stored and processed. GDPR mandates this transparency. Without a specified data retention policy, it's impossible to determine if the website is adhering to the principle of storage limitation.

Suggested Fix

Implement a clear and easily accessible data retention policy outlining the types of data stored, the purpose of storage, and the retention period for each type of data. This information should be included in the privacy policy and potentially summarized in a user-friendly manner within the user's account settings.

Why Fix This?

Failure to provide a clear data retention policy violates GDPR and can lead to legal repercussions. It also undermines user trust and transparency.

Route To

Legal/Compliance, Backend Engineer

Pete's profile

Pete

Privacy and Security Tester

Third-party tracking without explicit disclosure or consent

Priority: 7/10
Confidence: 8/10
Third-Party Tracking
GDPR Compliance
Data Collection Transparency
Why is this a bug?

The network requests to `https://www.kayak.com/i/api/fullstory/v1/get` and `https://72164059993b.cdn4.forter.com/sn/72164059993b/script.js` indicate the use of FullStory and Fortter, respectively. FullStory is a session replay tool that records user interactions, and Fortter is a fraud prevention service. Using these tools without clearly disclosing their presence and obtaining explicit consent from users violates GDPR's transparency and consent requirements. The Privacy Policy needs to disclose these third-party trackers, and users should be able to disable them. The request URLs imply a lack of user opt-in or sufficient notification.

Suggested Fix

Implement a consent management platform that allows users to opt-in or opt-out of tracking by FullStory and Fortter. Clearly disclose the use of these tools in the privacy policy, including the types of data collected and their purposes. Ensure data collected by these tools is anonymized or pseudonymized where possible.

Why Fix This?

Failure to disclose third-party tracking and obtain user consent violates GDPR and undermines user trust. Misuse of session recording tools can also raise ethical concerns.

Route To

Frontend Engineer, Legal/Compliance, Backend Engineer

Relevant Network Call
https://www.kayak.com/i/api/fullstory/v1/get, https://72164059993b.cdn4.forter.com/sn/72164059993b/script.js
Isabella's profile

Isabella

Usability Tester

Travel deal dates are in the past

Priority: 7/10
Confidence: 9/10
general
date
Why is this a bug?

The 'Travel deals under $210' section displays deals with start and end dates in July 2024. The current date is June 4, 2025. These deals are no longer valid and should either be updated or removed, since the dates are in the past. A user arriving on this page in 2025 would be confused and waste time on deals that are no longer bookable.

Suggested Fix

Update the travel deals to reflect current or future travel dates.

Why Fix This?

Prevents user frustration and wasted effort by displaying valid, bookable travel options.

Route To

Backend/Data Engineer

AI Generated Functional Test Results

Start Page: HOME

samantha
Samantha Edge Testing Specialist

Open the number of passengers popup

Passed

This test verifies that a user can open the number of passengers popup to configure the number of adults, children and infants for the flight searches.

Test Step Screenshot
1
Test Step Screenshot
2
Test Step Screenshot
3
Step Details

Select a step to view details

Select Round-trip option

Passed

This test verifies that a user can select the Round-trip option for flight searches. It ensures the selected option is correctly reflected in the UI.

Test Step Screenshot
1
Test Step Screenshot
2
Test Step Screenshot
3
Step Details

Select a step to view details

Flight destination autocomplete

Passed

This test verifies that when a user types into the destination airport field, it will provide a list of matches that autocomplete the text entered.

Test Step Screenshot
1
Test Step Screenshot
2
Test Step Screenshot
3
Step Details

Select a step to view details

Change to one way trip

Passed

This test verifies that a user can select the One-way option for flight searches. It ensures the selected option is correctly reflected in the UI and the date fields change to accommodate one-way flight.

Test Step Screenshot
1
Test Step Screenshot
2
Test Step Screenshot
3
Test Step Screenshot
4
Step Details

Select a step to view details

Submit Empty Flight Search

Passed

This test verifies that submitting a flight search form with empty fields results in an appropriate error message or no results are displayed.

Test Step Screenshot
1
Test Step Screenshot
2
Test Step Screenshot
3
Test Step Screenshot
4
Step Details

Select a step to view details

aiden
Aiden Skip_To_Main_Content_Link Testing Specialist

Verify the aria-label of the Skip to Main Content link is appropriate

Failed

This test verifies that the aria-label of the Skip to Main Content link is set to a descriptive value that lets screen-reader users know the functionality of the link.

Test Step Screenshot
1
Test Step Screenshot
2
Test Step Screenshot
3
Test Step Screenshot
4
Test Step Screenshot
5
Test Step Screenshot
6
Test Step Screenshot
7
Test Step Screenshot
8
Test Step Screenshot
9
Test Step Screenshot
10
Test Step Screenshot
11
Test Step Screenshot
12
Test Step Screenshot
13
Test Step Screenshot
14
Test Step Screenshot
15
Test Step Screenshot
16
Test Step Screenshot
17
Test Step Screenshot
18
Test Step Screenshot
19
Test Step Screenshot
20
Step Details

Select a step to view details

Skip to main content link visibility

Failed

This test verifies that the 'Skip to main content' link is initially hidden and becomes visible when the page loads or gains focus, as it is typically designed for screen reader users and keyboard navigators.

Test Step Screenshot
1
Test Step Screenshot
2
Test Step Screenshot
3
Test Step Screenshot
4
Test Step Screenshot
5
Test Step Screenshot
6
Test Step Screenshot
7
Test Step Screenshot
8
Test Step Screenshot
9
Test Step Screenshot
10
Test Step Screenshot
11
Test Step Screenshot
12
Test Step Screenshot
13
Test Step Screenshot
14
Test Step Screenshot
15
Test Step Screenshot
16
Test Step Screenshot
17
Test Step Screenshot
18
Test Step Screenshot
19
Test Step Screenshot
20
Step Details

Select a step to view details

Skip to main content link href target

Passed

This test verifies that the 'Skip to main content' link's `href` attribute correctly points to the main content area, ensuring focus is moved to the appropriate section.

Test Step Screenshot
1
Test Step Screenshot
2
Test Step Screenshot
3
Test Step Screenshot
4
Test Step Screenshot
5
Test Step Screenshot
6
Step Details

Select a step to view details

Skip to main content link not present

Passed

This test verifies that when the 'Skip to main content' link is not present on the page (e.g., due to a rendering issue or A/B test), the page functions gracefully without it. The page should not throw errors or have unexpected behavior.

Test Step Screenshot
1
Test Step Screenshot
2
Test Step Screenshot
3
Test Step Screenshot
4
Test Step Screenshot
5
Test Step Screenshot
6
Step Details

Select a step to view details

Skip to main content link screen reader announcement

Passed

This test verifies that the 'Skip to main content' link is properly announced by screen readers, providing useful context to visually impaired users.

Test Step Screenshot
1
Test Step Screenshot
2
Test Step Screenshot
3
Step Details

Select a step to view details

Skip to main content link tab navigation - default

Failed

This test verifies that the 'Skip to main content' link correctly focuses the user on the main content area of the page and allows for proper tab navigation within that area. It validates the accessibility and usability of the webpage for users who rely on keyboard navigation.

Test Step Screenshot
1
Test Step Screenshot
2
Test Step Screenshot
3
Test Step Screenshot
4
Test Step Screenshot
5
Test Step Screenshot
6
Test Step Screenshot
7
Test Step Screenshot
8
Test Step Screenshot
9
Test Step Screenshot
10
Test Step Screenshot
11
Test Step Screenshot
12
Test Step Screenshot
13
Test Step Screenshot
14
Test Step Screenshot
15
Test Step Screenshot
16
Test Step Screenshot
17
Test Step Screenshot
18
Test Step Screenshot
19
Test Step Screenshot
20
Step Details

Select a step to view details

Verify 'Skip to main content' link 'href' attribute is valid

Passed

This test verifies that the `href` attribute of the 'Skip to main content' link points to a valid anchor within the page (`#main`). A broken or incorrect `href` would prevent the link from working as intended, harming accessibility.

Test Step Screenshot
1
Test Step Screenshot
2
Test Step Screenshot
3
Test Step Screenshot
4
Step Details

Select a step to view details

Skip to main content link with invalid href

Failed

This test verifies that the page handles the case where the 'Skip to main content' link has an invalid or missing `href` attribute gracefully. It prevents unexpected behavior if the link is misconfigured.

Test Step Screenshot
1
Test Step Screenshot
2
Test Step Screenshot
3
Test Step Screenshot
4
Test Step Screenshot
5
Test Step Screenshot
6
Test Step Screenshot
7
Test Step Screenshot
8
Test Step Screenshot
9
Test Step Screenshot
10
Test Step Screenshot
11
Test Step Screenshot
12
Test Step Screenshot
13
Test Step Screenshot
14
Test Step Screenshot
15
Test Step Screenshot
16
Test Step Screenshot
17
Test Step Screenshot
18
Test Step Screenshot
19
Test Step Screenshot
20
Step Details

Select a step to view details

Verify focus trapping within the main content area after skipping

Failed

This test verifies that after using the 'Skip to main content' link, keyboard navigation (Tab key) is properly contained within the main content area and does not accidentally move focus outside of it until explicitly closed, aiding accessibility.

Test Step Screenshot
1
Test Step Screenshot
2
Test Step Screenshot
3
Test Step Screenshot
4
Test Step Screenshot
5
Test Step Screenshot
6
Test Step Screenshot
7
Test Step Screenshot
8
Test Step Screenshot
9
Test Step Screenshot
10
Test Step Screenshot
11
Test Step Screenshot
12
Test Step Screenshot
13
Test Step Screenshot
14
Test Step Screenshot
15
Test Step Screenshot
16
Test Step Screenshot
17
Test Step Screenshot
18
Test Step Screenshot
19
Test Step Screenshot
20
Step Details

Select a step to view details

Overall Metrics

Overall Score

Overall, the site is very useful for travel planning. It is easy to use and provides a lot of information. The design is modern and appealing. However, there are a few things that could be improved, such as the accessibility for users with disabilities. Also, the site could benefit from a more personalized experience.

Visual Design

Visually appealing, easy to navigate and has a modern design.

Usability

The site is very easy to use. The search functionality is excellent, and the results are displayed clearly. The filtering options are also helpful.

Content Quality

The content is relevant and informative. The site provides a wide range of travel options and helpful planning tools.

Priya Patel's profile

Priya Patel, 32

Priya is a software engineer who enjoys traveling during her vacation time. She typically plans trips 2-3 months in advance and is always looking for the best deals on flights and hotels.

I love how easy it is to compare prices from different airlines and hotels. The price alerts feature is also really helpful for tracking price changes. The KAYAK.ai feature looks interesting, but I'd want to see it fully developed before relying on it.

Actions
  • Search for flights to Europe
  • Set up price alerts for specific destinations
Suggestions
  • Add personalized travel recommendations.
  • Integrate with calendar applications.
David Chen's profile

David Chen, 65

David is a retired engineer who enjoys traveling with his wife. He is not very tech-savvy and prefers simple, straightforward websites. He often travels to visit his grandchildren.

The website is a bit overwhelming for me. There's too much information on the screen, and it's hard to know where to start. I wish it was simpler and more straightforward.

Actions
  • Search for flights to visit family
  • Look for hotel deals in specific cities
Suggestions
  • Offer a simplified version of the website for less tech-savvy users.
  • Increase the font size and improve the contrast for better readability.
Ava Rodriguez's profile

Ava Rodriguez, 24

Ava is a recent college graduate working as a social media manager. She's always on the lookout for the best travel deals to share with her followers and loves discovering hidden gems.

I'm really impressed with the variety of travel options and the cool tools like KAYAK.ai. It's a great resource for finding inspiration and planning my next adventure. I like all of the options of different forms of travel.

Actions
  • Explore travel deals under $210
  • Use KAYAK.ai to get travel recommendations
Suggestions
  • Add more filters for sustainable travel.
  • Highlight eco-friendly accommodations and activities.