Summary of senior testing experience, APP testing - sorting out key points, avoiding 3 years of detours...


foreword

Where is the key point of APP testing it?

The key to APP testing, if the main business of a company you go to interview is to do an app test, he will definitely ask you a question: How do you do APP testing?

Then we will analyze from the key of app testing.

Can you think about the key points of app testing?

There should be many professional testing techniques immediately in your mind, first of all, an app function, there is no doubt about this, no matter whether you are doing a web terminal, an app or a small program, etc. First of all, you have to test all the functions. In fact, this is not very different from our web test and other tests. It is to test some functions.

For example, Taobao, JD.com, we do a series of functional tests such as adding to the shopping cart and placing an order.
We also need to do some app-specific tests, which include a lot of things.
Of course, there is also our app automated testing, we will consider doing app testing from these major aspects.

function test

I won’t go into details about functional testing. Many partners know how to test functional testing. It’s OK to test this function according to our requirements document.

Special test

The special test includes a lot of things, such as the startup of some apps, everyone opens some apps on their mobile phones every day, then the startup of some of our apps, such as cold startup, and then you open an app homepage and various pages. Load time, this page load time is the user experience.

If you open a page for a long time, more than a few seconds, users will definitely complain. I don’t think this is good, and it’s very uncomfortable to use.

Cold start, page loading time, we can pass some weak network tests, for example, if you are in the subway, underground garage, or elevator, does the loading time meet our needs.

Of course, there is also the running log analysis of the app that we have been using all the time. Where can we analyze this log? Many partners may understand that our app runs through the adb command and grabs logs.

Generally, we can use packet capture. App test packet capture is a very important means to obtain logs, such as which interfaces are requested, and then what are some of its logs like, and then some of our data.

In fact, if you have actually done app testing, you must know that there are third-party platforms, such as our Youmeng, Jiguang, which can directly obtain the error log of the app.

Of course, not only this platform, you can search and learn by yourself. If you don't know these platforms, you will know that you don't have much experience when you ask during the interview.

The app is launched in the application market. For example, after the release of our oppo, Huawei, and Xiaomi application markets, a certain user clicks on this app and reports an error. You can use this platform to obtain its error log (for example, which user crashed) It may be some points that people usually don't pay attention to, but that is actually quite critical.

stability test

There is another one, the stability test, you can only get its error report through packet capture and some third-party platforms, then we want the app to run stably and the user experience is very good.

The app stability test you may know the most is Mokey. I think Mokey is actually more of a stress test. It is to use a Mokey to do some random click events, click anywhere on an app at high speed like a monkey, and observe the app. Will a series of phenomena such as memory overflow and flashback be reported.

automated test

Automated testing, no matter what type of testing you do, automation will be a keyword. How to do automation?
What are the frameworks we are familiar with and commonly used by enterprises for app automation testing?

A framework that everyone is most familiar with - Appium,
of course there are others, such as airtest,
and some frameworks open sourced by our domestic NetEase or Alibaba - macaca, uiautomator
and many other frameworks that support us in automation

appium, airtest, macaca, uiautomator, rf…

Then this is the current mainstream third-party open source automated testing framework for enterprises. I use these frameworks to do app automation. After these app tests are completed, there is still a compatibility behind the automation from special items and functions.

App compatibility: phone model, Android version, resolution

There are many types of compatibility, not only the model and system of the mobile phone, but there are many brands of mobile phones now, including the different resolutions of the mobile phone screens, and some bugs can only be reproduced on a certain brand and a certain model of mobile phones , what should you do at this time? What you need to tell the interviewer is your plan and ideas on how to solve these problems.

After passing the above tests, in general, if you are an experienced software test engineer or intermediate and senior tester in the company, the packaging and release of this kind of app should be done by our testers, because like development He just packs his code, (I will tell you some experience and solutions, how to do it, each needs everyone to think carefully)

Then we usually use Jenkins to build automated packaging, and through a Jenkins task, we directly package our IOS and Android into an application for release, because this kind of release is mostly done on the web side, such as a certain backend service, Build it through Jenkins, and the app can be automatically packaged and generated through our Jenkins to generate apk.

For example, if you want to package a test environment, you don’t need to ask for help from the development. At present, there are more people. If I need to test a new version, I will tell a certain developer, have you finished the development, please help me to create one Packages, you don't need to find development for things like this.

The following is the most complete software test engineer learning knowledge architecture system diagram in 2023 that I compiled

1. From entry to mastery of Python programming

Please add a picture description

2. Interface automation project actual combat

Please add a picture description

3. Actual Combat of Web Automation Project

Please add a picture description

4. Actual Combat of App Automation Project

Please add a picture description

5. Resume of first-tier manufacturers

Please add a picture description

6. Test and develop DevOps system

Please add a picture description

7. Commonly used automated testing tools

Please add a picture description

Eight, JMeter performance test

Please add a picture description

9. Summary (little surprise at the end)

Actively embrace challenges and difficulties, struggle is the fire of growth. Perseverance and courage, only hard work can create brilliance. Believe in yourself, persevere in struggle, and march towards your own glorious voyage! Fearless and ups and downs, venture into the future, and bloom a brilliant chapter of life in the struggle!

With a dream in mind, a flame of hope ignited, struggle is the key to greatness. Bravely break through the confusion and keep exploring. Only by persisting can you bloom your own brilliance. Believe in yourself, pursue your passion, and create your own immortal legend!

Persistent pursuit, down-to-earth, and struggle are the bridges to realize dreams. Persist in honing and meet challenges, only hard work can create extraordinary. Believe in yourself, not afraid of difficulties, embark on the journey, and you will eventually open your own glorious road! Go forward bravely, work hard, and achieve brilliant youth.

Guess you like

Origin blog.csdn.net/x2waiwai/article/details/132104628