Subdomain provisioning bug during premium account creation
This post is part of series on the test IO blog about real bugs that our testers have found during test cycles. In each post, we explore the details of the issue, explain its impact, and discuss what software teams can do to avoid similar problems.
What are subdomains? Why might you want them, and what impact do subdomains have on SEO? Companies and individuals use subdomains to create different websites for niches of users, to separate a blog or e-commerce site from your main website, to create a separate mobile site, or to offer users profiles or subsites on a main, root domains.
A stay-at-home parent with finance tips might want to add a help section to her own personal finance website. A budding teen entrepreneur with an online subscription box wants to put videos on how to use the monthly products on a separate video platform. A bank teller moonlighting as a photographer wants to create a store to buy prints on a subdomain of an ecommerce tool. Subdomains are very useful, but like any other part of a website, they need to work properly!
For our bug of the week, we’re taking a look at a bug with the creation of subdomains for new premium users, one of the key features and up-selling points for a customer.
While testing the paid account creation on a file sharing site, one of our testers found a critical bug while performing functional testing on the user onboarding process. The tester successfully set up an account and payment, but was not able to access their chosen subdomain shortly after as expected. The tester could create a profile and select a subdomain name. The site appeared to confirmed that the subdomain was available and created it. Yet, when the tester tried to access the subdomain, a message displayed stating the page could not be reached.
The bug was initially discovered on Windows 10, IE 11. However, it ended up being reproducible across browsers and platforms.
What we can learn from this bug is the importance of properly maintaining your company’s DNS servers and make sure any changes, like creation or deletion of subdomains as well as the provisioning of sites for these subdomains propagate correctly. For this bug, there are any number of reasons why the subdomain was unavailable. For example, the user might have previously created the subdomain and that account could now be expired. The subdomain could have been used on the platform previously by another user, but transferred to another platform. There could also be a problem between the subdomain creation interface and the updating of the DNS servers.
Here are some best practices If your website or app uses subdomains. Set up an automated check of your system’s inactive subdomains and domains. The first step would be to put a process in place to close any accounts that have expired or are no longer active. Closing those accounts could also possibly include completely wiping out the subdomain if it is no longer in use anywhere. If you’re looking to resolve subdomain problems on an individual basis, checking cPanel for traces of the domain utilizing grep commands, and rebuilding your Apache configuration and making sure Apache is running with all traces of the deprecated domain removed.
Your company’s subdomain and domain availability check should only have to check once to determine if a subdomain or domain is available. DIY users are looking for a service they can trust, one that’s flexible and easy to use.