Thursday, July 9, 2009

Software testing & C programming?

I have a non IT degree and I am planning to make software testing course.For that I'm referring ANSI C by E.Balagurusamy.I find the book really good but I must put great effort to go through...I just want know whether a sound knowledge in Programming is really required to take up software testing course?If I had an option to skip 'C'then i would be more happy and relieved:-)some of my friends (software testers) tell that Programming knowledge is not required for the job and they don't know that either.To what extent is it true?

Software testing %26amp; C programming?
well i believe that for a software testing job u must know more of sql like databases than programming,programming wouldnt help u tht much for software testing





u must like know the different software development life cycles


and maybe do a software testing course by some of the institutes that guarntee placement also,


better readin than C read sql


u must have a strong sql for software testing


actually u should have just normal sql skills cause while testing u use all those automated tools where only small amount of sql would be necessary,its like u will learn as u do the job
Reply:I am an Information Systems Major and a Computer Science Minor. I study the management of computers and the code that creates the computers.





Software Testing: vague definition. Are you going line-by-line to analyze the code structure or testing the user interface for ease of use?
Reply:I believe it's true. You don’t need any programming skills to instruct testing courses. Instead you might need auditing skills. That doesn’t mean you wouldn’t need technologies skills. We usually use QA skills for testing and also, as written in my website http://www.2all.co.il/web/Sites/ShoshaSi... with technical writer's and audit's skills. Soon I would translate my website to English and so I hope it shell help you more in that issue. If you can read Hebrew I believe you would like to read the related http://www.2all.co.il/web/Sites/ShoshaSi... and more http://www.shoshasi.tops.co.il
Reply:If you are doing end user testing, you don't need much more than rudimentary computer skills... point and click, web surfing, typical office product use skills. You will, however, need exceptional language skills. It is paramount to communicate to the developers exactly what you were doing when the software broke.





I don't think this is the type of testing you are talking about, though.





Real software testing can get very low level. You might even be asked to write a few lines of code in order to execute multiple tests or stress tests. Likely, you will be working with automated build tools and regression test tool suites that collect parameters and build scripts from you or the developers, and generate metrics for you to include on your reports and briefs.





Should you understand code to do that job? Yah, it would help. If I'm hiring someone to fill a position like this, and the distinguishing factor is 'programming knowledge and capabilities', I know which one I'm picking!





As for the difficulty in those courses, if you are not a 'math' person, I fear you will struggle a bit. The concepts are fairly straighforward. However, some of the theory can get a bit wormy if you have a rough time compartmentalizing data in discrete chunks. You will go far in computing if you have an aptitude for boolean logic and solid math skills through college level Calculus.
Reply:my god, I could write a book here. However, if you're a C programmer and therefore most focused on white box testing I recommend the book: "Code Complete" from Microsoft. Really goes through defensive programming, white box testing, and tools like static analysis. Techniques like sparse matrix generation using mutually orthogonal latin squares etc shed a light on testing huge combinations of interacting variables (how many possible values can you plug into that api?).





If you want to know about the software development lifecycle in general and the test life cycle in particular I recommend "Black Box Testing", "Software Test Techniques", and "System Testing and quality Assurance" all by by Boris Beizer.





For a view of process quality pick up the capability maturity model (CMMI).





wrt programming knowledge being required - it should be for all test jobs! You certainly need to know how computers and groups of computers, and the software they run work to understand how to test.


white box testing necessitates programming skills


feature testing benefits from programming skills - you gonna script that?


system testing benefits from computer system understanding and a clear understanding of how sw products are used, what stresses they will be subjected to, and where weak areas might be.





As several of the pundits (Cem Kamer etc) have said "the cubicles of the testers should have the same technical references as the developers"


No comments:

Post a Comment