Are you a software tester trying to break into automation? Need pointers to get your first job? Although I only have three years of experience as an automation developer, I may be able to point you in the right direction.
Step One: Take a Coding Class
When you are writing automation, you aren’t simply tinkering with a new toolset or technology. You are writing software in order to test software. It will definitely help you if you start learning how to code. With your first job, you won’t need to know how to write clean code or refactor tests right away, but if your job interviews are anything like the ones I had, you will have to demonstrate some knowledge of a programming language during your job interview.
My biggest recommendation if you are brand new to coding? Check out your local community college to see what programming classes they offer. Testing and developing are completely different mindsets. Learning from and interacting with a teacher, bouncing ideas off of students, and forming up study groups will help with the ever growing frustration as you are learning this brand new skill. You will hit wall after wall trying to understand the basic concepts. Your study group can be your wrecking crew. It also helps that everyone in the class are tackling the same concepts at the same pace.
Yes, you could learn how to practice coding as a newbie on your own by reading Zed Shaw’s free eBooks Learning Python 3 the Hard Way, Learning Ruby the Hard Way, or any in his Learning Code the Hard Way series. You could take Codecademy’s freeLearning Ruby, Python, or JavaScript courses. You could purchase Alan Richardson’s book, Java for Testers. Or you could teach yourself with the official Java Learning Trails. If you do it this way, when you get stuck, you will be struggling alone and have to somehow find the wherewithal to persevere and work your way through your growing frustration. Getting help from fellow students in a classroom is a lot easier than attempting to figure out questions and answers on StackOverflow.
My biggest recommendation if you are brand new to coding? Check out your local community college to see what programming classes they offer. Testing and developing are completely different mindsets. Learning from and interacting with a teacher, bouncing ideas off of students, and forming up study groups will help with the ever growing frustration as you are learning this brand new skill. You will hit wall after wall trying to understand the basic concepts. Your study group can be your wrecking crew. It also helps that everyone in the class are tackling the same concepts at the same pace.
Yes, you could learn how to practice coding as a newbie on your own by reading Zed Shaw’s free eBooks Learning Python 3 the Hard Way, Learning Ruby the Hard Way, or any in his Learning Code the Hard Way series. You could take Codecademy’s freeLearning Ruby, Python, or JavaScript courses. You could purchase Alan Richardson’s book, Java for Testers. Or you could teach yourself with the official Java Learning Trails. If you do it this way, when you get stuck, you will be struggling alone and have to somehow find the wherewithal to persevere and work your way through your growing frustration. Getting help from fellow students in a classroom is a lot easier than attempting to figure out questions and answers on StackOverflow.
STEP TWO: PICK A LANGUAGE. ANY LANGUAGE!
According to SmartBear’s The State of Software Testing 2017 Industry Report, the top languages used when writing automation are Java -- by a landslide -- followed by JavaScript / Node.JS, C#, and Python 3. Pick one! It really doesn’t matter what you pick as a first programming language to start learning as long as you practice learning how to code.
If you are working as a software tester, find out what your company is using for automation, and study that. Maybe there is room in the training budget so you can take a course at a reduced cost?
- Want to start off with a complex programming language learning solid object oriented programming skills? Pick Java or C#.
- Want to study the language used to design many of the front-end web based user interfaces? Pick JavaScript.
- Are you into data analysis? Pick Python 3.
- Are you going to be using Chef or TestKitchen to spin up Amazon Web Service Instances? That is what I am doing, which is why I selected Ruby for our automation framework. Does your company use Ruby on Rails to create your web application? That is another great reason to pick Ruby.
Whatever language you pick, be confident that you will be learning good coding principles that will help you to create automation, and that you will be asked to learn a whole new programming language in three year’s time.
STEP THREE: LEARN THE FUNDAMENTALS OF THE LANGUAGE
Do you know the programming language enough to go to a whiteboard and sketch out an answer to a simple coding question such as FizzBuzz or How To Tell If a String is a Palindrome? These are the questions that I kept getting asked.
Know the language enough to:
- Determine if the contents of a variable is an Integer, String, Decimal, etc.
- Find the first and last word in a string
- See if a String contains a certain word
- How to convert an integer into a String
- Solve a problem by coming up with an algorithm
STEP FOUR: PAIR THE LANGUAGE WITH AN AUTOMATION FRAMEWORK
Now that you started learning how to code, you will find learning how to to write tests in an automation framework a lot easier. A common framework used today is Selenium WebDriver, which can be paired with a programming language such as Java, Python, C#, or JavaScript.Whatever the language, you are sure to find a Selenium Guidebook by Dave Haeffner that will walk you through, step-by-step, how to start writing an automation framework.
- Are you using Java? Check out Alan Richardson’s Selenium WebDriver with Javacourse and all his resources he has on EvilTester.com.
- Are you using Ruby? Pair it with Capybara or Watir.
- Are you using JavaScript and Angular.JS? Try Protractor: It takes the measure of Angular.
- Using JavaScript? Try Cypress.io.
- Using Python? Tinker with Robot Framework.
I am rather toolset and programming language agnostic. I don’t really think it matters what you build your automation framework with. It is more important to find out who is relying on the automation, and what metrics are important to them.
Using the programming language and the automation toolset, attempt to see if you can figure out how to write a simple test of sample sites such as:
- Dave Haeffner’s test site, The Internet.
- ToDo MVC
… But how can you display the sample automation framework you are developing?
STEP FIVE: SHOW YOUR WORK!
Sign up for an account at GitHub, a free open-source code repository. Proud of any projects you have created while going through this process? Upload them to GitHub, and stick the link to your GitHub account onto your resume, and future employers can evaluate your code samples.
NEED MORE HELP?
Need more help? You can read other articles I have written, review sample automation frameworks I have put together, or follow and reach out to me on Twitter! I am @tjmaher1, and I practically live online.
Make sure to check out this month’s offerings at SmartBear Academy and SmartBear’s many webinars.
Looking for a networking group? I am the Meetup Organizer of the Ministry of Testing - Boston. We meet once or twice a month, with events held all over Cambridge and Boston, Massachusetts. Join today!
And thank you, SmartBear for being such a wonderful sponsor for the Ministry of Testing - Boston.
This article was originally published on April 9, 2018 on SmartBear's Test and Monitor Blog
Happy Testing!
-T.J. Maher
Sr. QA Engineer, Software Engineer in Test
Meetup Organizer, Ministry of Testing - Boston
Twitter | YouTube | LinkedIn | Articles
Happy Testing!
-T.J. Maher
Sr. QA Engineer, Software Engineer in Test
Meetup Organizer, Ministry of Testing - Boston
Twitter | YouTube | LinkedIn | Articles
23 comments:
Great Post with valuable information.I am glad that I have visited this site.Share more updates.
selenium training in OMR
selenium training in anna nagar
Java Training in OMR
Java course in Tambaram
DevOps Training in Anna Nagar
Digital Marketing Course in Anna Nagar
Software Testing Training in T Nagar
Graphic design courses in Porur
Web Designing Course in T Nagar
PHP Training in Chennai
I must appreciate the work you done here as It is a very informative blog about online software testing training. We can relate to this as we also provides education and training in Software QA and Software Testing to prepare students for doing manual and automated testing of modern software applications according to Information Technology standards. Hitek Computer School is certified by the Minister of Human Resources and Skills Development Canada and registered with PTIB (Private Training Institutions Branch of the Ministry of Advanced Education).
You are doing an awsome job.Great Inspiration!!
https://www.h2kinfosys.com/courses/agile-scrum-training-online-course-details
You are doing an awsome job.Great Inspiration!!
https://www.h2kinfosys.com/courses/agile-scrum-training-online-course-details
Really good job.Keep up the good work!!!
brief https://www.fita.in/fita-anna-nagar-chennai/"java training in chennai"
Thanks for sharing a piece of valuable information.
Spark Training Institute in Chennai
Placement Training in Chennai
Soft Skills Training in Chennai
JMeter Training in Chennai
Appium Course Chennai
Advanced Excel Training in Chennai
This is really great and I obtain a huge of knowledge in this post. I loved it..!
HR Training in Chennai
Corporate Training in Chennai
HR Course in Chennai
Best Training and Placement Institute in Chennai
Java is one of the leading languages and its user- friendliness and flexible features makes it a ‘go-to’ language for most of the web developers.
Java Training Institute in Delhi
Great post. Thanks for sharing.....
Java Training in Bangalore
Java Classes in Pune
Java Training in Hyderabad
Java Training in Delhi
Java Training in Gurgaon
Amazing Information! keep updating your Blog like this.
Tally Institute in Chennai
Tally Training in Chennai
Great post. keep sharing such a worthy information
Cloud Computing Training in Chennai
Cloud Training in Chennai
Great post. keep sharing such a worthy information
Digital Marketing Course in Chennai
Best digital marketing course online
Digital Marketing Courses in Bangalore
The price tag on deep cleaning is dependent upon how big is the house and whether or not it’s merely a single location or the complete house that really needs doing. Incredibly obstinate areas will need more sources and time and energy to clean. Most companies will provide you with a totally free estimate just before they commence. sofa cleaning dubai
Thanks for sharing
Corporate Course in Bangalore
Corporate Classes in Bangalore
Corporate Training in Bangalore
Fabulous blog keep updating like this.....
DevOps certification in Chennai
DevOps Training in Chennai
DevOps course in Chennai
DevOps Training in Bangalore
Best DevOps Training in Bangalore
Apart from, having your own commercial idea clean is definitely advisable, and also an essential necessity. Whether it is a shopping mall, local store, office, or even clinics, you'll have people arriving every day time. And, that suggests why cleansing and correct maintenance is needed. So, leave all of your worries and permit DIALAMAID to consider that obligation. We supply top-class industrial cleaning providers in Dubai to create things easier for you personally.
You have really share good piece of content with us. I have been searching for your content on internet. There are some of site, that is useful for us. Yours is one of them. If you are thinking to Write for us Fashion so you can, and you will get more visitors also. Keep sharing.
This post is so interactive and informative.keep update more information...
Angularjs training in anna nagar
Angularjs Training in Chennai
Mindblowing blog very useful thanks
Hadoop Training in T Nagar
Big Data Training in T Nagar
Iam very pleased to read your article
devops training in hyserabad
nice post, thanks for shearing this wonderful information. MEAN Stack Classes in Pune
Nice comment. Java Training In Pune
Thanks to the dear administrator of this site.
Please always keep your site updated so that we can use and benefit from its posts.
motorcycle accident virginia
Post a Comment