📱 Manual Mobile Testing in Xcode: How to Test iOS Apps and Websites in the Simulator

📱 Manual Mobile Testing in Xcode: How to Test iOS Apps and Websites in the Simulator

Over the past few months, I’ve worked on multiple mobile projects where I didn’t always have a physical iPhone — but still needed to test like a real user.

Instead of jumping straight to automation, I leaned heavily on manual testing using Xcode’s iOS Simulator — and it worked perfectly.

In this article, I’ll show you how I personally tested:

  • ✅ A real iOS app build (by running Apple’s Sample Food Truck project in Xcode)
  • 🌐 A live website in Safari on a simulated iPhone
  • 🔌 A real website opened on my iPhone — with Safari DevTools connected from my Mac


✅ Example 1: Testing a Sample Project in the iOS Simulator

When I first started learning how to manually test iOS apps, I didn’t even have a developer build. So I decided to use a public project to practice.

I cloned Apple’s official Sample Food Truck app from GitHub. This was my first real chance to open a full iOS project, build it in Xcode, and see how it runs in the simulator.

Here’s what I did:

  • Opened the .xcworkspace in Xcode
  • Selected iPhone 15 simulator from the top bar
  • Clicked ▶️ Run

Once it launched in the iOS Simulator, I explored all the flows:

  • Navigating between screens
  • Tapping on menu items and placing test orders
  • Observing layout behavior on different device sizes
  • Testing in both light and dark mode

💡 That’s when I first noticed a layout bug on the confirmation screen — it looked fine on iPhone 15, but clipped badly on iPhone SE in dark mode.

Even though it wasn’t my app, using this public project helped me fully understand how to test builds manually and simulate user behavior without needing a physical device.


🌐 Example 2: Testing a Website via Safari in the Simulator

In another case, I needed to test a mobile version of a website that was only validated on desktop so far.

Rather than testing on my physical phone, I used Safari inside the iOS Simulator.

Here’s what I did:

  • Opened the Simulator via Xcode > Open Developer Tool > Simulator
  • Launched the Safari app inside the simulator
  • Entered the URL: https://ifindcheaters.com

From there, I manually tested:

  • Navigation menus and page layout
  • Scrolling and fixed elements
  • Form inputs and button behavior
  • How it looks in dark mode
  • How it behaves when rotated

It was fast, realistic, and I could simulate everything from a user’s perspective — all from my Mac.

🔌 Example 3: Testing a Live Website on a Real iPhone Using Safari DevTools

At one point, I wanted to test how a live website behaves on a real iPhone — but I also wanted to see what’s happening under the hood: layout issues, JavaScript console logs, and network activity.

Here’s what I did (and still do when needed):

  1. Opened Safari on my Mac
  2. Connected my iPhone to my Mac using a USB cable
  3. On my iPhone, I opened the website I wanted to test (e.g., https://ifindcheaters.com)
  4. On my Mac, in Safari’s top menu, I went to: Develop > [My iPhone] > [Safari tab]

That opened Safari DevTools — just like for desktop, but it was inspecting my iPhone's Safari browser in real time.

This let me:

  • Inspect and debug the mobile DOM
  • View console logs directly from the device
  • Check how scripts and layout behave on real hardware

💡 It was especially useful when I noticed a form field acting weird on mobile — something that worked fine in the simulator but behaved differently on a real device.

This method is perfect for testing responsive design, mobile-specific bugs, or just confirming that everything runs smoothly in Safari on iOS.

🔧 My Go-To Tools in Xcode While Testing

Here are the tools I use most during manual testing with the iOS Simulator:

  • Simulator (multiple devices): I switch between iPhone 15, SE, and iPads to check layout responsiveness, rotation, and dark mode.
  • Console (⌘⇧C): I use print() to track button taps, validation triggers, and screen transitions during testing.
  • View Debugger: Great for spotting hidden or overlapping elements. I use it when layouts don’t behave as expected.
  • Accessibility Inspector: I test how screen readers handle labels and interactive elements. It helps catch usability issues early.
  • Live Preview (SwiftUI): For apps using SwiftUI, I use Live Preview to check UI updates instantly without rebuilding the app.
  • Keyboard & Input Checks: I always test field types, keyboard behavior, and how the UI reacts when the keyboard opens or closes.

These tools help me simulate real user behavior and catch bugs that automated scripts might miss.

👨🔧 Why Manual Testing on Simulator Still Matters

While automation is great, some bugs only show up when:

  • A human taps too quickly
  • A layout shifts slightly on rotation
  • Dark mode breaks contrast
  • Validation fails in strange edge cases

That’s why I love combining Xcode’s simulator tools with a hands-on testing mindset. It helps me test like the user — not just the code.


Indraja Beesetty

QA Test Engineer| ISTQB certified | TOSCA | Generative AI | Automation Manual | LLM Testing | API | Mobile | AI Testing | 4+ year experience in Testing | Software Engineer Intern at DOIT | Master's student in MIS at UIS

1mo

Hi Igor (Greg) Propsht Great post! I’ve worked on IO Webdriver as well for mobile testing and found it really useful for testing web apps across different mobile viewports. Along with that, I’ve used Chrome DevTools for Android and recently started exploring Xcode Simulator for iOS testing. Thanks for sharing your experience—it’s encouraging to see others using similar tools! Would love to know if you’ve tried any cross-platform tools like BrowserStack or Sauce Labs for manual mobile testing too.

To view or add a comment, sign in

Others also viewed

Explore topics