Augmented Reality & Virtual Reality is trendy topic in software development circles. These technologies will give us access to just-in-time information, anytime, anywhere. These technologies will empower people to time travel into the past from anywhere using a simple headset or other immersive device, enhancing educational and travel experiences. During this covid-19 pandemic, very much helped the students to learn the things from online. Teachers are started using these AR/VR products for educational purposes. Even the industries are appreciating their employees and scheduling the meeting in the form of Augmented Reality to create an office environment in their homes. Day by day the usage of technology increases and market also very much open.
If your business is planning to launch an AR/VR application project, you probably know that there are few crucial activities that will define user satisfaction with the final product. The quality assurance is one of them.
In this article, I would be talking about the approach to test AR/VR and how to ensure Quality in AR/VR products.
Identify the end users of AR/VR and other products
Understand the difference between AR/VR and other products such as Banking, ERP, CRM etc.,
As a tester we need to look into all the aspects of product. End users purposes will vary for AR/VR and other products. According to that testers needs to design their strategy. Take an example of Banking, ERP and CRM products. These products are mainly focusing on cash transaction, goods tracking and complaint management . So the user’s entertainment and learning is the big question. But AR/VR products are education, demonstration (Tourism & Product manual), gaming and of course cash transaction (very less products) oriented. So user’s entertainment and excitement factors are more important, compared to other products.
Prepare yourself before the release of testing build
- Of course reading/analyzing the business requirement is the first task of testers.
- As software testers, we’re in an awesome position to align ourselves with the development team because the technology is so new.
- Learn the technology by experiencing the same AR/VR products of other organizations.
- For some of the developers working on your projects, it might be their first time working with these APIs, so it’s a great time for you to educate yourself as well.
- The best way to learn is to get your hands dirty- there are a couple of opensource and freeware tools available to create AR/VR apps, try creating your own app and this exercise will give you valuable perspective, in context, about how these apps are created as well as ideas on how to approach testing them. Yes! I repeat, try creating your own sample apps.
- Know the technical limitations before developers telling you in the testing phase.
- Ready to work collaboratively with developers.
You should have multiple personality disorder
Personally, I think this disorder is a skill set of testers. As I told in the identify the end users section, list out your usage of industries. Based on the industry will identify the users. To make your life easy I gave you the list.
AR : Healthcare, Manufacturing, Education, Automotive, Military, Retail, Gaming, Real estate and Social media.
VR : Cinema & Entertainment, Diagnostics, Virtual tourism, Shopping, High-Risk Job Training and Surgeon and Medical Student Training.
While testing the application, you need to behave them as a users. Take an example of High Risk job training. The users are fire fighters, cops, soldiers – these are all workers who may benefit from VR training to practice routine emergency procedures to learn the dos and don’ts in a consequence-free virtual environment. So you need to assume yourself as a cop, fire fighter to test the application. This disorder, definitely give you the more results on the testing phase.
Step 1 : Understand the requirements
- Examine the product requirements beforehand to see the conditions under which the product will be used.
- Figure out the devices and types of interaction supported by the product.
- Check for the copyright content and solution in the requirement.
- Understand the approximate engagement time of users. Because end users wont spent hours of time with AR/VR apps. Especially not with VR apps. Spending more time with VR apps are bad for health. If the requirement goes below this condition, ask questions to project manger. (Depends on your working culture)
Step 2 : Freeze the scope of testing
- UI/UX is more important. This is top priority.
- Compatibility. This is secondary priority
- Verify if AR/VR model redirects to the desired information..
- Architecture and limitations of third party plugins
- Verify if environment scanning is working properly.
- Verify if 2D/3D objects used in the product is registered.
- Quality of 2D/3D objects
- App performance
- Internet on/off conditions.
- User’s privacy
Step 3 : Decide the types of testing to be performed
- Functional Testing – in which the system is tested against the functional requirements and specifications. Functional testing ensures that the requirements or specifications are properly satisfied by the application.
- Usability Testing – is the process of collecting information about usability and overall user experience from actual users during the design process. This is done through a variety of user testing methods, including card sorting, surveys, interviews, and observation.
- Compatibility Testing – is to check whether your software is capable of running on different hardware, operating systems, applications, network environments or Mobile devices.
- Accessibility Testing – Ensure the AR/VR app can be used irrespective of age and physical condition, reduce discomfort and ensure quick and natural navigation.
- Immersive Testing – Characteristically VR requires distinct hardware to function. We ensure that the device works well and remains compatible with existing software and devices for successful simulation.
- Performance Testing – is to determine the system parameters in terms of responsiveness and stability under various workload. Performance testing measures the quality attributes of the system, such as scalability, reliability and resource usage.
- Security Testing – is to uncovers vulnerabilities of the system and determines that the data and resources of the system are protected from possible intruders. It ensures that the software system and application are free from any threats or risks that can cause a loss.
- Automation Testing – Less number of features can be automated in these technology.
Step 4 : Don’t panic
- Use your creative side.
- Mostly we wont get the solution in google. So don’t panic and try to do “Pair Testing”
- Always arise a question to developer, business analyst, project architect or senior tester.
- As a tester, you should try all scenarios that could possibly happen in the real world or those that cannot be tried in real-time or edge cases that are so rare to happen in real-time.
- Collect the test data as more as possible.