Over the last couple of weeks, I have made great progress on two apps that I’m writing. Working on these two projects every week has been a personal goal of mine since I started this blog, and I’m excited to see what the future holds. However, this progress means that the development process starts to slow down and the testing phase begins. This past weekend, I spent most of my time getting ready to move my apps into testing mode. During this time, I developed some tips in order to help newer developers get ready for testing.
Tip 1: Know Your Testing Infrastructure:
In order to have a successful testing period, its important for developers to understand the testing infrastructure. This means as a developer you should have some basic knowledge of the hardware, software, and services being used to run your code in test. For example, if you’re deploying a .NET application into test you should at least know the following information.
- What version of Windows is being used on the server?
- What version of IIS is being used?
- What version of .NET is running on the server?
- Current methods of deploying applications to the testing environment.
- Can you collect logs from the server during the testing period?
Asking these types of questions ahead of time will help you be more successful because you can take this information, and use it to research potential issues that may come up during the deployment process. In the past, I have run into multiple issues getting apps out of development due to the lack of knowledge about the systems being used to test my app. This tip can save you a lot of headaches in the long run.
Tip 2: Know How to Deploy Your Code:
In my experience, most developers do not know how to deploy the code they write. I find this fact incredibly sad because deploying your application from development to test to production is important. In some companies, a developer will place a build of an application on a network share. Once it has been uploaded, a sysadmin will take the uploaded files and deploy them to the server. Avoid this habit. Instead, take some time to learn the various ways to deploy an app. Depending on your IDE, you may be able to use a one-click publishing tool to upload your code to your server. If you choose this route, you may run into some permission issues. If this happens to you, check with your sysadmin in order to get higher permissions. If you have a more advanced environment, you may utilize a tool like Docker, in order to create a standard deployment method amongst your team members.
Tip 3: Use Source Control:
This last tip might seem like a no-brainer, but use some kind of a Source Control system to keep track of the changes you have made to your codebase. I have been in a few scenarios where a developer has made a change to an application without testing it locally. This poor action has led to some functionality not working. To make things even worse, the developer doesn’t remember where the change was made. This is where Source Control comes into play. These types of systems are designed to track changes to the codebase. Most of these systems offer a way to roll back an application to a working version. More advanced systems offer ways to test code before committing it. One popular Source Control System is Git. Definitely, recommend it.