There are some features of iOS apps that don't work from the iOS simulator. Maybe you want to test how your application works with the device camera or send an SMS message from your application. For these examples and more you'll need to test and debug your app using a real device.
First, open the Control Center (or head over to the Settings app) and turn off Wi-Fi. Then, open the Phone app and enter in the following numbers and symbols, exactly as written (including the. Beginning with iOS 11, apps needed to support 64-bit architecture. If an app doesn't, you can't redownload it. Apps that Apple pulled from the market aren't shown on your App Store history and can't be downloaded again. Developer-pulled apps will still show up in your download history. However, you can't download the app to your device. While testing your app before release, it's a good idea to be sure and test the purchases included within it (Free or Paid Subscriptions and individual Issues). This requires setting up a test user.
This post will walk through how to run the Xcode simulator on your iPhone or other iOS device and show you how to fix some common errors you'll see along the way.
How to select your iPhone as the 'Simulator' Device
Simulator is in quotes here since this will create an actual app on your phone; it's no longer a simulation. Open up a project in Xcode and click on the device near the Run ▶ button at the top left of your Xcode screen.
Plug your iPhone into your computer. You can select your device from the top of the list.
Unlock your device and (⌘R) run the application. You'll see Xcode install the app and then attach the debugger. The application should pop up on your phone.
Troubleshooting Common Errors
The first time I tried to connect my iPhone to Xcode it didn't work. According to my best friend, Stack Overflow, I'm not the only one who has had issues. Let's share the fixes to some common errors you might encounter.
'Signing Requires a Development Team'
Xcode requires that you've connected a Team to your project in order to run the simulator on a device. You can do this from the 'General' tab of your Project Settings. As of Xcode 7 this can be any Apple ID.
Open the Team menu that currently says 'None' and select your team. If you don't have a team, select 'Add an Account…' and create one with your Apple ID.
Xcode claims your device is locked when it isn't
This fun bug has been happening since at least Xcode 6. There are a lot of potential solutions in this Stack Overflow post. Here's what worked for me:
- Unplug your iPhone
Reset Location & Privacy
on your iPhone. Found underSettings >> General >> Reset
- Plug in your iPhone
- Hit
Trust
when prompted toTrust This Computer
You can learn more about how trusting computers works from Apple's support.
'iPhone is Busy'
The unsatisfying answer for this one is to just wait.
If you don't have a sword fighting partner, you can try the following:
- Unplug your device
- Restart both Xcode and your iPhone
- Plug in your device
That worked for me, but a lot of folks had luck with 'Solution #3' from this Stack Overflow post.
Activate your Debugging Superpowers
The Jasonette docs FAQ has some more tips if you have other related issues. Now that you've got your application running on a device you can make the most of your testing and debugging experience with these tips:
If you have any questions or run into any other issues, feel free to reach out to me on Twitter @kelleyrobinson.
April 30, 2020
iOS App Testing: 7 Tips on How to Test Your iPhone App
By Tabish Khalid in Smartphones/Mobile ApplicationsTechnologyWeb Development
iOS is one of the two major operating systems for smartphones. With the majority of the enterprise market as its target audience, it allows companies to generate leads from the Western continents, including Western Europe, Australia, and North America.
How To Test My Ios App On Iphone 11 Pro
To have any success with your apps, however, you need to ensure the app functions as expected. That's where developers play a role!
All top-quality, affordable web and app developers you hire will run diagnostics on the app during development, filtering out bugs and errors in the code before your app is ready to publish on app stores.
In this article, we'll cover different forms of testing and how to test your iOS app in the best way possible:
Types of iOS App Testing
One advantage of the iOS platform is that it's restricted to Apple hardware and its devices. It makes testing iOS apps relatively easier than Android apps.
There are multiple ways you can test your iOS apps, divided between two broad categories: Manual and Automated Testing. Let's take a look at the different types of testing before we learn how to test your iPhone app.
Manual Testing
Manual testing involves performing quality assurance tests based on pre-written conditions in test cases. Depending on the method used by experts, it can be divided into two types:
- Using a Device
Manual testing using a device involves running the application on Apple hardware to test its performance. Experts check the proper functioning of the system, app UI, including error messages, and security. They also perform field tests to see how the app behaves on the mobile data network. - Using an Emulator
Instead of an Apple device, your QA team can also run tests with an emulator. It's a form of manual testing that best fits unit and integration testing. Unit testing involves monitoring the functioning of particular source code units or modules. Contrarily, integration testing highlights any errors with the various integration points within an app.Emulators can also run diagnostics for the app UI. It allows developers to test the user interface on multiple Apple devices and OS versions, free of cost.
Alternatively, you can also sort manual testing based on the type of tests done.
- Exploratory Testing
It is a form of low-cost testing without a formal, drawn-out plan. - User Testing
User testing is a form of manual testing that includes testing the app concept, its usability, as well as Alpha and Beta testing.
Automation Testing
Automated testing is a relatively modern technique of quality assurance. It allows your QA team to detect and sort out any bugs and performance issues within the app. It involves the following types of tests:
- Compatibility Testing
- Regression Testing
- Performance Testing
- BVT Testing
Tips on iPhone App Testing
Now that you understand the different types of tests you can run on iOS apps, let's look at what you need to consider when testing your iPhone app:
1. Check Memory Availability
Limited memory availability is a principal reason for app crashing. If the app crash doesn't reoccur after relaunching it, then it's likely because of insufficient memory space on your smartphone.
Therefore, when testing out app performance, check the available memory in your iOS. You can use several tools to calculate free memory. Any memory-related issues will resolve when you have ample memory space on your phone.
2. Test Under Low Memory Conditions
Much like checking memory availability, testing your app under low memory conditions also has its benefits. It will allow you to see how the app will react with limited memory available and if it sends out appropriate responses in case of an app crash or other reasons.
If you have ample memory, you can create low memory conditions by running different background apps to consume some of the storage space.
3. Data Input Analysis
Data input analysis implies adding a sample of texts in respective fields inside the app to check for bugs and coding errors. It is a form of boundary value analysis that determines your app's reaction when a user exceeds the maximum limit of a text field or enters invalid characters.
To see if the app displays appropriate error messages in such cases, you can type in invalid text in every available field. It will help identify bugs present in your code and where they are.
4. Run Background Apps Simultaneously
How To Test My Ios App On Iphones 6
In addition to testing under low memory conditions, running background apps with your app, simultaneously, serves another purpose. It can help you determine if your app functions appropriately when a user runs multiple apps on their iOS.
Testing your app with multiple applications running in the background will allow you to see how it handles interruptions like notifications, reminders, and more. Incoming calls and playing music in the background should also not influence performance.
5. Review Crash Report Log
The crash report log records all instances of when an app freezes and crashes. It has the when and why the app crashed information readily available for your QA team.
So, reviewing a crash report log is vital when testing your iPhone app. It can help in diagnosing the real issue as well as analyzing app performance before it crashed.
How To Test My Ios App On Iphone 11 Pro Max
You can find the crash log via your iPhone Settings through the Diagnostics & Usage section. To access it, connect your smartphone with your iTunes account.
6. Test Connectivity Problems
Since most apps use an internet connection, it's essential to test the app's performance in case of poor or no network in the vicinity. By creating an artificially slow connection or unavailability, you can check how your app behaves, the error messages it displays, and more. You can do so by turning on the iPhone's in-built airplane mode or using a low-speed internet connection.
Improve Your iPhone App with an iOS App Testing Checklist
Apple's App Store has strict guidelines and prerequisites that every app should meet to be published.
I hope this article helped in understanding how to test your iPhone app in the best way possible.
Keeping these tips in mind, test your app for bugs and performance issues to ensure it can pass Apple's quality test. Plus, it will guarantee your users receive the best experience when they use your app.
Tabish Khalid is a Senior Digital Marketing Executive for Applify Labs, a web and mobile app development company headquartered in West Palm Beach, Florida. He enjoys years-long expertise in digital marketing, social media management, search engine optimization, and more. He loves writing about technologies.