I have been working as a QA for a while now and never had to write much code. Now our QA department is moving towards automating Test. I have to contribute but I don't know the best way to proceed on how to learn to code.
Please help me.
Obey The Testing Goat!. Get yourself the book
Test-Driven Development with Python. It will turn you into a an automated testing wizard. it is a great book and you will learn in no time how to run your automated tests. Then learn Docker and be amazed on how you can use Docker + Jenkins to do automated testing. You will be a God among the QA team and the devs will have lots of respect for you.
Speaking as someone who was once in your shoes, by far the fastest way to learn to write automated test cases is to learn from existing ones. Suppose someone more senior than you has written a test that does this:<p>- Set up the framework and connect to the app under test
- enter "fred" in the username field
- enter "derf" in the password field
- click the Submit button
- verify that the login is successful<p>Then if you copy-paste that test and spend some time experimenting with it, you can probably turn it into a test that enters an incorrect password and verifies that it is unsuccessful without really doing any actual "coding". That's the best way to contribute while you come up to speed - the more cases you write, the more comfortable you will get with the language and with the framework.<p>If you don't have someone senior to copy off of, you can still do it, it'll just go slower. "How do I get selenium to click a button" plus an afternoon will get you well underway. Steer clear of any "programming fundamentals" - you don't need to understand classes and interfaces and the difference between "final" and "static" yet, you just need enough basic syntax to get some simple tests built so you can experiment with them.<p>Good luck!
The way I learned was through books and BBS's but that may not be as applicable anymore. What type of environment do you work on? Languages, frameworks, and tools?<p>I would suggest if you have the option that you pair with one of the programmers at your company. One of the best ways to learn is to jump right in and do it with someone more senior than you are. If they are willing to take a few minutes or hours a day to allow you to really pair with them, you'll learn quickly!
I recommend going through this python tutorial: <a href="http://automatetheboringstuff.com/" rel="nofollow">http://automatetheboringstuff.com/</a>
A QA is a squire. Squires become knights.<p>You get to see the code and architectural decisions your engineers make when you move into automated testing. In many cases, you're in a position to be paid to learn.<p>What programming language / framework is the code in?