Development Engineer VS Test Engineer VS Test Development Engineer

Every year after officially starting work, I will be very busy, and this year is no exception. Our company is also very busy now, and we don’t have time to write my automated testing tutorial. But don’t worry, I will continue to write, but the updates may not be so fast. I was recently asked a question by a colleague, what is the difference between development, testing and test engineers? Is it better to convert development to testing than our testing? Then let me talk about my own views:

First of all, let’s talk about development engineers. As the name implies, they are engineers who use programming languages ​​to develop applications, websites, services and other computer-related applications. This requires the corresponding personnel to have programming capabilities in one or several languages, such as c series, java series, python series or network programming series, etc., and must master the application of corresponding databases. For development engineers, they need to have a deeper grasp of the corresponding language and be able to apply it proficiently to solve practical problems. Of course, it is not that the more you master, the better. If you say during the interview that you not only know C series, but also Java series and other languages, the interviewer may not think that you are good, but will feel that you have not mastered anything well. Because what development projects need is refinement, not breadth. This corresponds to java development engineers, c++ development engineers, android development engineers, IOS development engineers, etc., rather than simply being a development engineer.

What about test engineers? Generally speaking, it is from the user's perspective to test whether what the development engineer makes meets the needs of the product, or whether the user's physical examination is good? There is no requirement to have too much professional knowledge, but you need to be careful and sensitive to the product. Therefore, many people who are not computer professionals can still be test engineers, because our products require different people to speak for them. There are also more professional white-box or gray-box tests, which require testers to know some programming skills, but the requirements are not too high. It is not necessary to know advanced programming in a certain language. It is enough to be able to understand ordinary applications or code snippets. Problems must be considered comprehensively, meticulously, and principled, and cannot be followed by development and products. This is a requirement for testers.

Test development engineers are a type of engineer between development and testing. Generally, you need to write testing tools, automate test code, and also need to do ordinary functional testing or white-box testing. The requirements for engineers are also different from the other two types of engineers. They cannot have a program-based thinking mode for development, but they have coding skills to be developed; they do not have to master a coding language as deeply as development, but they need to master scripting languages. Many, such as java, python, php, shell, and sometimes c, c++, ruby ​​and other programming languages. And it is even more necessary to have a keen thinking in test engineering, be able to solve problems from the perspective of user experience, write test tools, etc.

So it is not easy to switch from development to testing, but difficult to switch from testing to development. It depends on personal development and experience. If a developer has been doing one type of development or one product, there is no problem if he is transferred to the testing of this test; but if he is transferred to the testing of other products, it is not good, because he is susceptible to the influence of past development thinking. impact, thereby ignoring the user's perspective to find the problem. If the test coding ability is good, and you understand the business logic, then it is not difficult to switch to development! You should arrange your work reasonably according to your own conditions and future development direction. Happiness is the most important thing!

[Full 200 episodes] A collection of super detailed advanced tutorials on automated testing of Python interfaces, truly simulating the actual combat of enterprise projects.

Guess you like

Origin blog.csdn.net/mashang123123123/article/details/132806712