In March, my interview with Huawei was rejected, and I prepared for half a year. In September, Huawei finally came to the shore after World War II. 27K is not too much, right?

Finally, World War II came to shore. In World War II, Huawei did not say that Huawei was the only choice. I just felt that I was holding my breath. This led to me having other better offers at the time, but I did not go. I just wanted to come to Huawei to prove myself. Now, I also I finally got my wish, let me share it with you all~

Personal situation

I am a computer major at a top 211 college. Computer science is not a good major in our school. It is considered a relatively poor major. My coding ability is average. I have had two internships and a school project experience before. The first internship was to do front-end development at an Internet company in Shenzhen during the summer of my sophomore year. The second internship was because I had a short time to return to China during the summer of my junior year (less than two months), so I found an internship to do testing in a start-up company. .

After the internship, I saw at school that Huawei headquarters was recruiting students. I was quite shocked at the time. Maybe I was a little presumptuous and felt that Huawei should not come to a school like ours with a relatively poor computer major to recruit programmers. At that time, I I prepared a little and submitted my resume. As expected, on the day of the interview, I met the top ten people in our major who have always dominated the rankings. Logically speaking, they should all be in the library preparing for the postgraduate entrance examination. Today, all of them actually Can meet them. Not surprisingly, I was rejected. I didn’t even pass the first round, which inspired me to be competitive. After all, I am also an outstanding student in my major. Although I am not a cutting-edge student, I am not too bad. I started studying hard when I got back. I learned from the employment teacher at my university that Huawei was having a job fair at my school, so I started to prepare in advance.

I am interviewing for a test development position. During this period, I went through the written test -> personality test -> technical side -> technical side two -> third side -> OC, basically completing one link every week. Since Huawei requires review after the interview process is completed (about more than a month), it takes about 2 months from application to OC. I also finally received an offer from Huawei.

The basic idea

I summarized several basic ideas for interviews:

1. Lay a good foundation. Poor skills are useless.
2. Adjust your mentality. Interviews actually depend on luck. No matter how good you are, it is difficult to say that you can 100% pass a certain company.
3. Work step by step, start with the easy ones and then the difficult ones. Put companies and companies you don’t really want to go to in front of you to practice + get offers and use them to increase your salary.
4. Review the results in a timely manner, sum up experience, and submit more

1. Lay a good foundation.
First of all, my own front line is actually very long. As I said at the beginning, my skills are far from superb. Most of them are just used and I don’t understand the principles. However, I am relatively well prepared this time.

Start preparing. Understand all the common interviews and question outlines on the market, and then study them one by one. Testing framework, performance, security, test development platform, etc. are all top priorities and will not be discussed in detail here. When I started preparing, I roughly estimated the study time and set a goal for myself, which was about half a year. I made up my mind to start interviews, and then worked backwards to make plans.

Then it’s about studying hard. I’m not busy and I have free time most of the time. Besides eating and bathing, I basically spend time reading, taking notes, writing code, and brushing Leetcode. Because I’m a night owl, and I hold my breath in my heart, I can basically learn one or two in the evening. , so I persisted for half a year.

2. Adjust your mentality.
Your mentality is very important. My own psychological endurance is actually very poor, and I get nervous easily, but I still have the basic principles in mind.

First of all, the interview is to judge a person's technical ability and basic qualities in just a few hours, so it is not very accurate and depends on luck. Sometimes even if your skills are very good, the interviewer just doesn't share the same channel with you, so it's no use. So you must keep this in mind and don’t care about it.

Secondly, don’t set your goals too narrowly, such as not going anywhere. The east is not bright and the west is bright. Sometimes a company is not good, and it is not necessarily your own problem. Summarize your experience and you may meet an interviewer you can talk to in the next interview.

But then again, there are actually many departments within large companies. Even if you really want to go to a certain company, if you don’t meet with one department, you still have the opportunity to meet with other departments. I once met an old man who interviewed ByteDance four times. It failed the first three times, and then was picked up three more times, and finally got what I wanted.

So there are a lot of opportunities. Don’t worry about success or failure at one time, just prepare well.

3. Step by step.
Regarding where to invest, this is what I do: first set a rough upper limit based on my ability, and then set a lower limit based on my own acceptance level, separate the levels, and deliver in order from low to high. It doesn't matter if you can't pass the previous one, you won't go after it anyway, just treat it as practice. Once you have a few offers in hand, are in good condition, are no longer afraid of interviews, and have made up for the technical points that you have not mastered accurately, you can start investing in the final few ideal companies. Taking me as an example, this time I made up my mind to go to an Internet company, so I made a list of the big companies on the market and divided them into levels from high to low according to scale, recognition, etc. Followed by:

The final result was that except for Huawei, which had all OD staff, NetEase forgot to invest, and Tencent did not find a suitable position, so all other companies invested. In addition, I invested in several unknown Internet companies to practice my skills. As the number of interviews increases, I become more and more skilled in interviews, and I also check for technical deficiencies, so overall it is getting smoother and smoother. In addition, since it was one interview after another, I could bargain every time I negotiated an offer, and the total package of the final offer was 70,000 to 80,000 yuan higher than the first one.

Sum up experience and continue working hard

Failure once or twice is not terrible. My initial interview was not ideal, which did dampen my self-confidence. But there are also good aspects. I know my weak links and some things I have rarely used before. I didn’t expect that interviews would ask questions frequently, so I quickly added this knowledge. I don’t say how in-depth I can at least answer some simple questions. The interview was awkward.

As you go through interviews like this, you will have fewer and fewer knowledge points that you don’t know, and you will become more and more familiar with things. You will be able to communicate more fluently with the interviewer, and your interview evaluation will become better and better.

Huawei interview experience sharing

Side
1. Understanding of testing/why we do test deployment/thinking about the work of testing deployment
2. Linux command related:
one line to find the pid of the process and kill it; check the system resources; find the process named hello; check the process information; check IP address; search for file abc.txt; check logs; check whether there is a certain string in the text; which Linux commands are commonly used...
3. Test case related:
test user account and password login; post pictures and videos in Moments; file videos, etc. Upload; a playback interface of Kuaishou; send voice on WeChat...
4. Understand the http protocol, what is the content of the request message, and the difference from https
5. The difference between get and post
6. What do you know about the status code, what is 300, What is 304, what is 500, what to do if 502 is returned...
7. The difference between cookie and session, the principle of session
8. TCP’s three-way handshake and four-way wave, what will happen if there are only two handshakes, and the difference between udp and udp
9 .What happens when you enter a URL and press Enter
? 10. What are the seven layers of OSI, and what protocols are there in each layer?
11. The difference between threads and processes
12. The difference between database left joins, right joins, and inner joins
13. Code: output The longest non-repeating consecutive substring in a string

Side 2
1. Deep copy and shallow copy
2. The difference between integer and int
3. Have you tested the code you wrote? Have you ever used a packet capture tool?
4. Why deadlock occurs and how to solve it
5. Java class loading
6. redis
7. Code: compare the size of two numbers, do not use if else statement, logical judgment, greater than or less
8. Code: bracket matching
9. Code : Implement a sorting algorithm (time complexity, best, worst, and bubble comparison) (focus on quick sorting during sorting)
10. Code: find the median after merging two ordered arrays
11. Code: integer Array reversal, such as 123 becomes 321, or string reverse order
12. Code: Swap two numbers without using the third variable

Three aspects
1. What is the atomicity of database
2. How to ensure atomicity in java
3. What is the use of group by in the database and how to make restrictions
4. How to start multiple threads
5. How to lock in java? And what is the difference
6.git command
7.shell command, count the frequency of a word, how does the shell judge equality
8.python modifier
9.linux user mode kernel mode
10.java reflection and principle
11. Understand blocking IO and non-blocking IO Does it block IO?
12. Implement singleton mode (the difference between the lazy man and the hungry man)
13. The difference between StringBuilder and StringBuffer
14. Java gc mechanism
15. The database finds the latest inserted record
16. Several ways to implement multi-threading
17 The difference between .wait and sleep
18. Tell me what modules spring has. Do you know about spring aop?
19. The injection method of springbeen
20. The difference between ++i and i++ 21.
The process of opening an address in python
22. The difference between array and linked list
23. The bytes occupied by each data type in SQL
24. Characteristics of vector
25. Why come to Kuaishou
26. const keyword
27. The difference between black box testing and white box testing, and the method of white box testing
28. Where are global variables, random variables, and static variables in the memory?
29. Intelligence question: There are two cups. One cup can hold 5L of water, and the other can hold 3L of water. Please measure 4L of water.
30. Code: Regular expression Match
31. Code: Find the start and end index of a substring in the large string and output
32. Code: Find the smallest sum in the factor group divided into a number
33. Code: Binary tree pre-order traversal
34. Code: Remove duplicate numbers from the linked list and output
35. Code: Record the number of occurrences of each byte in the string, arrange it in descending order and output
36. Code: Flip the string
37. Code: Count the English and English words in a string The number of numbers, spaces and other characters (mainly depends on the judgment conditions and the processing of the input empty string)
38. Code: one traversal without opening up temporary space to find duplicate numbers in an array
39. Code: two stacks implement a queue

The above is a summary of my process, skills and ideas from preparation to interview in the past six months. Learning is a lifelong thing. In addition to some interview methods and strategies, the more important thing is to accumulate and take the initiative to learn.

Finally,
in order to help friends in need to interview during the Golden Nine and Silver Ten, I have recently taken out most of my rest time to prepare a shortcut to the interview with a big company, and prepared a complete set of software testing review interview questions and The answer, I know that many students don’t know how to review and what are the key points in the learning process, so I hope that these interview questions shared here can help the confused you who are reading this article! I am satisfied!

The content covers: testing theory, Linux basics, MySQL basics, Web testing, interface testing, App testing, management tools, Python basics, Selenium related, performance testing, LordRunner related and other 16 special technical points, all of which are written by the editor in various major manufacturers. Many fans have already obtained offers from many major companies by relying on this PDF to summarize the real interview questions. Today I will summarize and share them with you!

Sharing experience in software testing positions in major manufacturers

Through big data summary, we found that in fact, the interviews for software testing positions are almost the same. Frequently asked questions include the following knowledge points:

Part One, Testing Theory (Testing Basics + Requirements Analysis + Testing Model + Testing Plan + Testing Strategy + Test Cases, etc.)

Part 2, Linux (Linux basics + Linux exercises)

The third part, MySQL (basic knowledge + query exercises + summary of classic interview questions from Wannian Student Table + real questions from database companies)

Part 4, Web Testing

Part 5, API testing

Part Six, App Testing

Part 7, Management Tools

Part 8, Python basics (Python basics + programming questions + collections + functions + Python features, etc.)

Part 9, Selenium related

Part 10, Performance Testing

Part 11, LordRunner related

Part 12, Computer Networks

Part 13, Composition Principles

Part 14, Data Structures and Algorithms

Part 15, Logic Questions

Part 16, Human Resources

Software testing basics

What are the steps of software testing?

How to record a test script?

Test methods should be considered for how to test

How to estimate testing effort?

Test design issues

What are the solutions when an error occurs during the testing process?

Test execution issues

Goals of test evaluation

How to improve testing?

Advantages and disadvantages of C/S mode

Advantages and disadvantages of B/S mode
Insert image description here

What is the difference between Linux
grep and find? What are the uses of grep?

View IP address?

Create and delete a multi-level directory?

Find the haha.txt file in the current user's home directory?

How to query the tomcat process, kill the process, and write linux commands?

View log files dynamically?

What is the command to check the system hard disk space?

Check all the ports that the current machine is listening on?
Insert image description here

Python
counts the number of lines of code in a Python source code file, removes comments, blank lines, and outputs it?

Python calls cmd and returns the result?

Bubble Sort

How many different and non-repeating three-digit numbers can be formed from the four numbers 1, 2, 3, and 4? How many are they?

Please use python to print out symmetric numbers within 10000 (characteristics of symmetric numbers: numbers are symmetrical, such as: 1, 2, 11, 121, 1221, etc.)

Given an integer N and a number K from 0-9, it is required to return the number of times the number K appears in 0-N

Determine how many prime numbers there are between 101-200 and output all prime numbers

A function that inputs a triangle. After the input, the output can form a triangle. For the triangle type, please use the equivalence class-partition method to design test cases.
Insert image description here

MySQL
Which engine do you use? What are the differences between the engines?

How to optimize query commands?

Database optimization?

How does Sql injection occur and how to prevent it?

What is the difference between NoSQL and relational databases?

What is the most basic difference between the nature of MySQL and MongoDB?

How to implement paging in Mysql database?

Mysql database operation?

Optimize the database? Improve database performance?

What is data integrity?
Insert image description here

Web

What is the difference between web testing and app testing?

WEB test environment construction and testing methods

WEB testing tutorial

WEB testing key points and basic methods

Web test page summary

Insert image description here

Interface Testing
What is an Interface

If the module request changes from http to https, how should the test plan be formulated and modified?

What does the commonly used HTTP protocol debugging agent I have? Detailed description of the setting process for capturing the HTTPS protocol?

Describe the hierarchical structure of the TCP/IP protocol and the important protocols in each layer

jmeter, the response result of an interface is as follows:

How to clean up the garbage data generated by the interface

How to deal with interfaces that rely on third parties

Where do you put the test data?

What is data-driven and how to parameterize it?


Insert image description here

Performance Testing
What do you think is the purpose of performance testing? What is the key to doing a good job of performance testing?

From what angles is server-side performance analysis performed?

How to understand stress testing, negative cutting testing and performance testing?

How to determine whether there is a memory leak and the indicators of concern?

Describe the reasons for memory leaks in software and how to check them. (It can be described in combination with a development language)

Briefly describe what is value transfer, what is address transfer, and what is the difference between the two?

What is a system bottleneck?

Insert image description here

How does selenium
build an automated testing framework?

How to design automated test cases:

How does webdriver open and exit a browser?

What is an automated testing framework?

What is Selenium and what are the popular versions?

How do you start Selenium RC from the command line?

On my machine port 4444 is not free. How can I use another port?

What is Selenium Server and how is it different from Selenium Hub?

How do you connect to the database from Selenium?

How do you verify that an object exists on multiple pages?

What is the difference between using single and double slashes in XPath?

How to write user extensions for SeleniumIDE/RC?

How to verify the existence of an element after the page has loaded successfully?

What do you know about Selenium Grid? What features does it provide?

How to start Selenium server from your Java Class?

What are the verification points in Selenium?

What is XPath? When should you use XPath in Selenium?


Insert image description here

Computers and Networks
The IP of a computer is 192.168.10.71, the subnet mask is 255.255.255.64 and 192.168.10.201…

Please briefly describe the concepts of DNS, Active Directory, and domains.

What does 10M broadband mean? What is the theoretical download speed?

What is an IP address?

What is the division of the OSI seven-layer network model?

What is the difference between TCP and UDP?

Which layer of protocol does HTTP belong to?

What is the difference between HTTP and HTTPS?

What is the difference between cookies and session?

What is the difference between HTTP get request and post request?

What is the difference between HTTP1.0 and HTTP1.1

TCP connection establishment process and disconnection process?

The process of the client using DHCP to obtain an IP?

Write the network address and broadcast address of a certain network segment?


Insert image description here

Insert image description here

Human Resources
What is your career path in testing? What do you think are the advantages of testing?

What is the most important factor to consider when you are looking for a job?

Why should we admit you?

Please talk about your greatest personal characteristics.

What qualities and skills should a test engineer have?

Also ask how you ensure software quality, that is to say, how do you think you can ensure software quality to the greatest extent?

Why did you choose to test this line of work?

If I hired you, what contribution would you make to the department?
Insert image description here

How to obtain documents:

This document should be the most comprehensive and complete preparation warehouse for friends who want to engage in [software testing]. This warehouse has also accompanied me through the most difficult journey. I hope it can also help you! All of the above can be shared, you just need to click below to join the group.

Guess you like

Origin blog.csdn.net/chengxuyuznguoke/article/details/132693167