Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Normally unit tests were written by developer who write the code, i.e. Test Driven Development.

So what does Software Engineer in Test do?

share|improve this question

closed as primarily opinion-based by gnat, MichaelT, david.pfx, GlenH7, Doc Brown Jun 9 at 11:57

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise.If this question can be reworded to fit the rules in the help center, please edit the question.

4  
I really don't understand the question - could you rephrase/explain it? –  David_001 Sep 23 '10 at 13:30
    
I mean the job functions –  Yoga Sep 23 '10 at 13:31
1  
en.wikipedia.org/wiki/Software_engineer from wiki I think Software Engineer is a generic term and doesn't point to any particular designation –  Tech Jerk Sep 23 '10 at 13:37
2  
Terrible question. –  luis.espinal Oct 15 '10 at 11:50
2  
This is a perfectly good question, luis.espinal, and has resulted in useful answers. You really need to not call something terrible just because you don't understand it. –  nbolton Mar 31 at 22:31
show 1 more comment

4 Answers

Short answer: SETs (or SDETs as we call them at MS) test well beyond what can be done by unit testing (integration, performance, scale, reliability, etc.), and write programs, tools, and automated tests to aid in the effort. The role is quite similar at Google.

Longer answer: I've written about the role (both directly and indirectly) on my blog. Start with this post on careers, or search the site for SDET.

Longest answer: Read my book.

share|improve this answer
add comment

I currently work as a sort of SET (although my job designation is still SE). What I do mainly is to create unit tests and load tests for the finished application (or almost finished) in addition to those made by the people actually coding on it.

Depending on the app I am testing, it involves the creation of unit tests, automated UI tests, and writing various test scripts to interact with and test the application. Often this involves the use of one or more test tools/frameworks and a small amount of coding.

share|improve this answer
add comment

They write code to test Software Engineers' code. A lot of times they develop automated test tools. AFAIK, Google, Microsoft and other big software companies hire a lot of SETs.

Test engineers utilize three types of testing strategies which are known as black box, white box and gray box testing.

share|improve this answer
    
Yes, but since developer should also write unit tests, so how they work together in fact? –  Yoga Sep 23 '10 at 13:39
    
@Yoga, developer unit test at their component level. Test engineer goes beyond that. I have added two links. –  grokus Sep 23 '10 at 13:58
    
OP asked about SET, not STE. SET usually is used very specifically to refer to someone who codes tests whereas STE is often a catch all term for anyone executing tests. See @MAK's answer. –  MIA Sep 23 '10 at 14:31
add comment

That is what I currently do.

I focus on being the Other Guy, the Adversary who stands in for the customer and tries to break the code.

I write piles of functional tests and supporting libraries.

share|improve this answer
add comment

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