Take the 2-minute tour ×
Software Quality Assurance & Testing Stack Exchange is a question and answer site for software quality control experts, automation engineers, and software testers. It's 100% free, no registration required.

I just found this site, and I have a question for everyone who can help me. My new passion for IT made me wish to learn more, and I wish to start with Testing. I've learned HTML5 and CSS3, but now I'm stuck because I don't know how to continue. I am open to suggestions.

share|improve this question
    
HTML/CSS skills will point to career using creativity, like graphic design. Do you consider yourself more artist with creative thinking, or more engineer/scientist with analytical thinking? Do you like algebra? People on this forum do testing, mostly automated, which requires programming and very analytical thinking, and all advice will be skewed that way. Even if true tester should question assumptions :-) Testers need very little HTML and CSS skills - just to understand what is going on, but rarely creating any user-facing pages. Are you sure that you want do testing? –  Peter Masiar Aug 6 at 16:10
    
Yes, I am sure. I don't expect to be easy and I have analytical thinking. This is what I wish to learn and to do. –  user8467 Aug 6 at 16:15
    
Peter, While using CSS and HTML may be quite rare, knowing it is a big plus since a lot of testing will be web based and will help out when attempting to either automate or find the root cause for a defect. The rest of your statement I do completely agree with though. –  PaulDonny Aug 7 at 11:37
1  
Most of these answers focus on tools - the big issue I see with most of our new hires is that they're not good testers. They don't think about edge cases, understand the why when they're running a test case. When you ask them to test a new feature, they do a smoke test and think that the feature is tested, etc. –  ernie Aug 8 at 19:09
    
@PaulDonny I agree that it is helpful to have some understanding of HTML/CSS if you want to write automated tests for web applications, but it is gravy. Main skills are coding, module/OO design and debugging. Which is very different from a way of thinking of a graphic designer, an artist in the core. –  Peter Masiar Aug 14 at 14:35

5 Answers 5

Manual Testing

For the beginning it is very useful to know what kind of tests exists. So you can explore the ISTQB Glossary to discover them and testing terms in general. After that you could try to get involved in some open source projects. You could install and test them and contribute some bug tickets.

  • Mozilla has a QA area. (Other companies / organisations too.)
  • On GitHub are a lot of open source projects.

Test Automation

  1. Learn the basics of a programming language.
  2. Pick one of the unit testing frameworks for your programming language.
  3. Write some simple functions/methods and unit tests for that.
  4. Keep busy with frameworks like Cucumber, JBehave or Selenium and tools like JMeter or SoapUI. It depends on what kind of tests you want to automate.
  5. Try to create automated test cases for open source projects and contribute them.

Pratice is the best way to learn about testing. If you want and can, try to do some testing things at work. But currently I assume that you do not work in this area, therefore the open source points.

share|improve this answer
    
+1 for methods and terms first, tools later –  Lord_Gestalter Aug 11 at 6:55

Personally, I would suggest starting with tools.

A basic list of some tools to be familiar with or at the very least understand what they are:

The next step would be SQL as this is a daily task in the QA roles.

After learning at the very least the basics, utilize some of the open source software in order to get a feel for what you personally enjoy doing and see if you want to find an area of specialty. Personally, my are of specialty is in API testing and Tools development, with a dash of Automation and Load/Performance testing thrown in. I will use this as an example.

Since I develop tools, I use C# and Java. The preferred language would depend on what company you are interested in working for but the 2 languages are very similar and you shouldn't have too many problems switching between them.

For LoadTesting, LoadUI and LoadRunner as well as several other tools are typically utilized. For LoadTesting, I STRONGLY encourage you to avoid loadtesting public sites. Set up a WAMP/LAMP server and load test locally. Loadtesting public sites without permission is considered a DOS attack and can have consequences.

For Automation, there is Selenium (see tools above),HP QTP,Coded UI and several other tools. Again, get some open source tools and just play with these on random websites.

After all of this, I would find a position doing basic manual testing. This will teach you far more about Software Testing than an automation position and give you a chance to get your feet wet. There is some online training places, like the Mozilla project mentioned in another answer, that are worth checking out as well. Manual testing is VERY important in my opinion to being a strong tester with any sort of specialty.

After completing the above steps (about 12 months of steady studying and working if you are quick), you should be able to have a very high demand skill set and get a rather nice position.

share|improve this answer
1  
but if you dont understand testing how do you know what to do with the tools? –  Phil Kirkham Aug 7 at 14:42
    
To me, that is a chicken or the egg type of dilemma. The issue I primarily had when starting in QA was that I did not understand my utilities as well as I would have liked. Not to mention, having experience with tools looks better on a resume than having an understanding of testing. Of course both to some degree are required and the understanding of concepts is more important but I believe that the concepts are something you learn as you grow in QA and the tools are something you just have to become familiar with. –  PaulDonny Aug 8 at 11:54

Now when we confirmed that you think analytically, let's consider next steps on your career into testing, and testing automation.

As automated tester you need to write programs. Competent programmers know multiple languages and can learn new one quickly. Python is commonly considered as best language for beginners, and there are plenty of free online education resources. Learn Python Wiki is one maintained by me. Later, you can learn more languages as you need, but Python will likely remain on your toolset to manage/parse text files, even if your main language may be Java or C#.

Being at least passable system administrator knowing Linux will greatly enhance your possibilities. Most of world computers are running Linux. because it has no license fee, it is trivial to add few servers when needed. Luckily for you, edX.org just started free online course, LinuxFoundationX: LFS101x Introduction to Linux. I highly recommend it.

Also, Selenium WebDriver is upcoming W3C standard for browser automation, so learning it should be your next step if you want to work in web application testing. Luckily for you, Selenium has good Python binding so you can learn it using Python, and CSS locators are used often to locate elements on the page to interact with.

Consider joining relevant Meetups groups in your area, and LinkedIn. This way you start building your professional network, which you will need to find job.

share|improve this answer
    
I started to learn Python, but could please, give me an advice? Should I start whith Python2, or with Python3? –  user8467 Aug 14 at 8:43
    
Depends on the libraries you want to use. Python 2 is safe choice, switching to 3 is not that hard. Some features from newer versions of Python are even reimplemented in older versions, and you can use them by from __future__ import ... trick, if you want to try them. –  Peter Masiar Aug 14 at 14:28
    
Conversion of code from Python version 2 to 3 is mostly automated. It is really nothing to worry about. Use the version provided by your Linux distro and you are fine. There are also tricks to have different versions of libraries installed using virtualenv if you need it - but you don't need to worry about it now. –  Peter Masiar Aug 14 at 14:29

There was a recent thread on this same topic that had some similar commentary that may also help you:

Tips for wanna be testers?

share|improve this answer

you can start with studying Software Engineering and read about Testing Types & study SQL

share|improve this answer
    
It would help if you expanded on your answer. A one-line answer in this case doesn't provide enough information to the OP. –  Kate Paulk Aug 6 at 11:13
1  
i will prepare a long answer and i will post it, thanks –  A.Mo5tar Aug 6 at 11:16

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.