• No results found

And I will also show you how you can learn and master Mobile Application testing.

N/A
N/A
Protected

Academic year: 2021

Share "And I will also show you how you can learn and master Mobile Application testing."

Copied!
15
0
0

Loading.... (view fulltext now)

Full text

(1)

Mobile Testing Day 1 Video

1 Welcome to the Day1 for the Mobile Testing Tutorials. So we are going to be talking about how we are going to test MOBILE applications on various devices. Some of the best practices the entire methodology around it and how you can learn to become one of the Mobile application test engineers. So the first session I want to focus on some of basic concepts and I am going to talk about how and what we are going to do in terms of Mobile App testing, we will discuss a little bit about different types of mobile applications and devices, some of the challenges, some of the important items to do and best practices and so on…

And I will also show you how you can learn and master Mobile Application testing.

So the first thing you need to focus on is understand the fundamental concepts in very simple English-What is mobile application testing? – So it’s not the testing of the mobile device, it is not about how does a mobile device work –is iPhone working correctly ,is it hanging, is it throwing an error, is it shutting down or a galaxy note is not working correct –No .It is about testing applications on the mobile devices. Applications that can be either native apps.which you download from things your iTunes or your play store on Android and so on. Or the applications that you access directly on the Mobile Browser .So now what is important for you to know is testing these applications has got similarity of how we used to test different web based applications. For example to test a web based application we go through the entire process of creating a test plan, we will talk about what to test –what are the

(2)

Mobile Testing Day 1 Video

2 conditions-what are the different test scenarios and test cases –what is the set of test data that we can use and so on .so those fundamental things still apply.

However we will have to focus more mobile based performance issues, mobile based functionalities, how does the application behave when I use the application on the Wi-Fi Network or a 3G or a 4G LTE network, what happens when the battery is down or what happens when you are installing it and something happens to your phone at that time .So these kinds of different circumstances and situations becomes very critical and that is what differentiates mobile application testing. So now we will still look into how we can do manual testing, little bit of automation testing, how can we test mobile devices using remote devices –which is not physically in front of you, or real devices which you are actually holding it in your hand or devices which are emulated or simulations that you are actually looking at from your PC.

So now let us look at the 2 most prominent types of Mobile Application

So one is called the Native apps Native apps are basically the applications that you are downloading from the market place where of the provider, basically –Apple has the IOs market, no, tube market place where you can login –search for different applications like Angry Birds or your bank of America App or your Chase app or your weather app or your news app and so on. Similarly there are Apps on your play store devices for your android-These apps you download on to your mobile device and then install it one time and then and you work on it, those are your native applications ok. These are the applications that

(3)

Mobile Testing Day 1 Video

3 need to be downloaded one time and then they can go through regular updates, as the application owner which or the company which is owning that application is releasing new patches or updates to that performance and then but the most important that will happen is your testing is also specific to your mobile configuration. For an app that is created for apple IPhone OS is different from that of Android OS on play store.so there are differences in how they are developed and how they are configured but they have to look the same, they have to work the same and behave the same, that becomes very critical for your Native App. Because what you are seeing is different app and on different platforms.

so now let’s look at the next point where there is need to tests for example if I am talking about native App like even a Google maps I could go on the browser to map, start Google doc or I could download Google Maps app on to my device and start using it’s there is a download and a installation which is very important, then comes your execution where and you are actually executing the test on the device .But what happens to that Execution ,doing it on different networks like a 2G or a 3G or a 4G LTE,or a Wi-Fi or a shared Wi-Fi, or an insecure Wi-Fi. What happens when you are in coverage zones? What happens when you are sitting in a stadium with 100’s of 1000’s of people and what happens when you are trying to use the network in the same time, and what happens when you are driving and switching between different zones, what happens when you turn your phone from one orientation to the other so ,if you turn your phone will the screen display also turn or not. All these things are very important to test.

Then you talk about integration, in the sense that once the device is installed on your system, how does the app work, if I change the brightness, if I change the mobile device settings or if I change auto

updates or let’s says what happens when the download stops in-between or your cell battery dies down so all of these things have to be taken into strong consideration in testing these native apps and are the auto updates happening on time, but more importantly ,you have many operating systems for different devices and each device has different versions,ok ,so that’s just about Native apps.

Now what happen are the same web applications the user is accessing that from your local PC machine and he is trying to browse that using a browser which is installed like a safari on your iPhone or a Firefox, the android browser that you have in android device and so on. So every time you need to load the page, the page can be dynamic. Someone changes the page every second, you refresh that, that is getting changed and it is common to all mobiles, because it’s just the size of the screen, the resolution and the orientation that is different, but otherwise, it is on a browser, so it is same thing that they are looking at. So what do you need to test, is it loading, what is the UI orientation size and all the other common things on it. OK

(4)

Mobile Testing Day 1 Video

(5)

Mobile Testing Day 1 Video

5 Now let’s talk about types of mobile devices. Now that we know about Native APPS and there are Web apps, we need to know what the different types of mobile devices are.

One type of Mobile device is the Real device, this is the actual device that you buy from your store and start using it as a cell phone for voice, for text, but you also use it primarily as a smart phone and that’s where these Apps thing-Native Apps or Web Apps come into place, ok , this is the most important device for you to consider for testing. But unfortunately what happens is there is a huge list of these smart phones in the market.

So for me earlier to test a web based application I had let’s say 4 to 5 versions of Firefox ,3 versions of IE ,1 version of Chrome and few other browsers. Overall I have 10 different environments and multiplied by 2-4 different OS to test on and see how my web based application is looking .But now we have dozens of devices and different versions for each device and different OS combinations for them, so that becomes a huge list and for you browsers are at least free to install on your OS,Laptops or Pc and use that but for the devices I need to do the actually procure those devices and pay for the device cost and the network fees , there is also lot of manual effort, because I am having to be physically ensure that the devices are maintained , they are charged, they are accessible and then I have to physically go and use my fingers and start doing it. But most importantly You cannot ignore the testing of real device that is very important, the reason it’s becomes critical is the fact that, unless you test on how the end users are

(6)

Mobile Testing Day 1 Video

6 going to use an application it is not a complete test, OK .So that’s very important, that’s your real devices, that’s how you try and approach testing at a higher level for the real devices,

But what about emulate devices or sometimes simulators. Primarily this is the ability to take the apps and show them how they look on the device on your system.

so let’s say this is an iPhone and it has the home button here, and let’s say this is the screen ,so when you do a emulator or a simulator for the IPhone, you will see the screen being displayed on your system, you can install the apps accordingly and you can start working like by clicking, or dragging or sliding or using your mouse and keyboard to work with this applications directly. That is a great level of

simulation, that it is easy for you to manage and easy for you to capture and being able to report errors taking screenshots or creating logs as well very easily. The other thing is that it is the same big list ,you still have the same number of devices ,but instead of switching or maintaining hundreds of devices I have this emulator where I just have to go and select which device to use from the dropdown list and able to easily switch between devices for test, there are costs that are significantly lower, but again they are not truly realistic, but primarily apart from the speed, because the speed and the resolution is more related to the PC , because they are loaded on your computer, they are not on a real device, that is the primary difference that you would see.

(7)

Mobile Testing Day 1 Video

7 So what is very important is for you to be able to clearly understand the number of devices you want to test , typically you are not planning to focus on every device and every version in the market,ok ,You will need to understand who is your audience, what are they primarily using and how many of them are using what device and try and prioritize in that order, what are the number of devices and the versions that are been test, what are the different mobile OS that you need to know ,what kind of settings and configuration you want to test with, how you want to set your network in connectivity and all of these things are important and these couple of reasons.

1 . App sales can be directly done through –so there are Free apps that can be downloaded, but the free apps is providing a additional functionality for the business backbone itself ,for example very simple if we talk about BOA App, so BOA is providing this because it is easy for the customers to do lot of

transactions on their cellphones, instead of doing this –if they are at their home doing it from Cellphone or a smart phone or their laptops, but what if they are on the road and they need to do it, they usually search for the closest center ,come in there and start using it ,so they are able to save on the human time and human effort by providing you an App on one of the core human needs.so that is very important ,but if the ratings are not good, then no one is going to download these devices, so it is very important for you to test and ensure that you have good Apps before you release it into the market.

(8)

Mobile Testing Day 1 Video

8 Once you release them, then it’s all dependent on the reviews and the ratings of the users and since it’s a common market place , they are very specific –why did Angry Birds become such a popular game because there were so many downloads, so many ratings and reviews, people liked it ,but they also started rating it and people could see what it is –so this like these have become very viral, things like these survive on ratings, it’s also a lot of data for your shopping cards like Amazon App or your financial things that you want to do-like your PayPal Apps or do any kind of secure transactions –like even you are doing your Loan applications –For example the Mortgage Loan application can now be signed directly on your IPad all by themselves.so you can use your finger to Sign –to make signatures and sign on a device on a IPad and so on .So with so much happening it’s very essential and critical for you to be able to focus specifically on what you should be doing on Mobile App testing and hence comes a list of Best practices. What I am giving you right now in this session is an overview of what is going to be coming. Once you know the ground, the foundation layer, the fundamental concepts, it will be easy for you to understand once we go into the project of Test execution for Mobile Application.

1.Hybrid Device Testing :You can never say that Real Devices or Emulator devices or Remote devices is one best choice .You have to use a range of them ,but you may start with emulated because it’s easy, it’s quick ,you don’t have to wait to procure that devices, you can quickly install it and do some smoke

(9)

Mobile Testing Day 1 Video

9 testing to see if the basic core functionality and the base features of how an application should behave ,specifically a mobile is working, then it is easy for you to shift and say that now let’s go to the Real Devices and do some more. It is very important for you to plan ahead and time. Because unless you plan properly, based on your requirement and priority list of what you want to accomplish, it will be

impossible to complete the task in the qualitative manner. The reason being that if you don’t plan ,you will not know what your end goal is going to be ,especially Mobile app testing, if you don’t have boundaries, if you have not created your test scenarios, your criteria’s ,your data it is going to be absolutely upheld task for you. You have to maintain a great checklist of repeated tasks. For example I want to test when the battery is at 70% or 100% and charging or it’s a 25% and charging and but what is happening if I am playing a movie on the Net place on the background and I am using this app or the other program that is actively running. What do you do during this type of these situations?

All of these things if you create a checklist

1. You will not miss any important areas to test

2. It gives you a great report to showcase the reproduction of those defects or error areas, and say that here is the checklist and this is what we did on these platforms on these OS and these are our findings. So it is very easy for you to go through and say this. This is done. It gives an easy way to maintain your task using that.

Field Testing like I said earlier, how do you go about testing your device in different circumstances and

then how about Different Settings ,what if I switch on the airplane mode or what if I change the orientation of the device or if I use a keyboard or a different language altogether. These things have a big impact on what you test.

So creating a best practice and putting these things in your checklist becomes very important.

Automation Plan is also something that you need to consider-while Mobile application world is very

dynamic with the devices and so on, but there are some standard functional areas which still can be automated ,we will try and evaluate some of them as we go along, you could do Remote devices the same way as you could have devices not physically present with you but in some other place some other country or zone where the network fees are not so strong/high and you can easily procure the devices, be able to test them from remote connections. A combination of these and many more will form a great practice for you to be able to test on Mobile Applications.

(10)

Mobile Testing Day 1 Video

10 So before we end one thing that again I need to repeat and emphasize is why focus on this Mobile testing-As you know there are lots of phones that are getting really Smart-IPhone started the

trend,infact even Blackberry did with little bit of Web Apps on Browsers and emails and so on. Now with the iPhone and what it got to the world-there is a whole flood of every device running in that sole-Luckily some of them have taken Android as their OS but many others are still on their custom the IOS , the black berry OS and so on. So there are more phones coming and becoming truly smarter

Applications need to match with people getting more mobile, in the sense that you see people sitting at the lunch and still accessing the cell phones, or they only texting these days-No they are doing work on the apps, they are playing games or they are standing in a queue and they are doing it. So you can imagine the places where they are and still working on it, so for example ,if I have a long flight ahead and have a fully charged smart phone –all I am trying to do is either stream ,not stream but play the videos that are there in the system or I might be playing the game of Lime and trying to spend some time and so on. That becomes very important. The networks are getting faster .So earlier people didn’t really stick with the smart phones but the 2G was slow the Wi-Fi’s are not really getting connected and so on, but now with 4G LTE and 4G speed ,people are able to do so much outdoors , they started taking almost all applications outdoors and using it in those networks. So there are more Apps, there are more features and more powerful in what they provide these days.

(11)

Mobile Testing Day 1 Video

11 There is a whole way of HTML5 which is trying to standardize how the look and feel should be across different devices, be it Mobile or be it on Web and so on. And there is a huge peer pressure, unless a company launches specific app on their products, they are not giving the best to the competition. That gives a lot of pressure to them to be able to run on that device. So these factors really emphasize the fact that Mobile testing is critical, for every one of Mobile app development team to focus on, Mobile application companies to focus on.

.So with this I want to talk about few of the general questions that typically keep coming to lot of people. For example if you are someone who is trying to learn or work on testing mobile applications. Do you need real devices and the answer is Yes, While you can still do without a real device, the idea of having a real device at least for a short period of time is very essential for you to work and be able to understand the hands on concepts .ok.For example you can go to Apples’ store or a AT&T store and pick a device and have it for you for 30 days and return it back for a $35 or something like a restock. Try and take those money back options where you will be able to spend little time on playing around on the important aspects of it.? If you like it, you might as well keep it.Which sort of devices should we test?

Should we test everything or which is the best –is it OS Apple or Android-It doesn’t matter-It is your choice what you want to buy. It’s for a personal use it doesn’t matter. But if it is from a company’s perspective and what they need to test-it all depends on their audience, where is a priority of hit’s

(12)

Mobile Testing Day 1 Video

12 coming to their application from ,what device are they using and accordingly they are able to structure the priorities and make a list –these are the devices in that specific order.

Q .I am new to testing –Should I learn Mobile Testing

So what is happening is even if you are a beginner to testing ,what you should do is get some fundamental concepts of the overview of software testing overall ,be it a web based application or a windows application and so on. And then you should learn mobile testing, because it is your future. Everything these days is trying to go mobile and it is an essential process of testing on Mobile applications and that will become a very important skill to have and mobile testing seems to be very confusing I agree to it to a large extent. And the reason I say is because of the complexity of the devices the OS and the way , the speed at which this Apps , the market of the whole telecom industry is moving and hence it is a little complex and that is the reason you should focus at the basics and fundamentals and picking up 2 or 3 areas that you should focus on .so for example just say that you know the fundamentals to apply little bit of automation to it but more specifically you have done IOS Mobile Application testing or you have done Android mobile application testing or did both of them, instead of saying that I have done everything, so you could become very specific to your initial entry into the market.

How to know what to test?

This is something that you will get from an expertise part, but again you will need to treat it as a functional testing tool, and you will also need to test, functional testing like there web app testing that you do, but you will also need to treat it as something that runs on devices and how do you accordingly do it for those devices.

How different is Mobile App testing from regular web app testing?

Like I was saying that it is still testing, but we are testing it on a different platform which has different circumstances, different configurations and it behaves differently. So to test it on a different application they are altogether different.

So those are the important questions that you need to ask yourself and please if there are more questions send us an email on [email protected] and interact with us, we will be happy to help you. So what is it that you expect going forward in some of the sessions , this is been an introductory session which is giving you a high level overview of what Mobile App testing is all about and what is important for you to know.

(13)

Mobile Testing Day 1 Video

13 So we will get deeper into

*studying some of the mobile platforms, typically IOS Vs. Android,

* We will select a sample Live Application, in fact we will try and repeat these for couple more. * Once we select Sample Live Application, we will treat it as a live project and see how we go from the beginning to the ending of testing mobile based applications

* We will create the work environment for testing; we will create the entire reports and execute them for the testing portions of it

* We will apply a lot of our best practices and practical knowledge into getting this thing done. * Now the other thing which is very important is automation .To what extent we can automate is something that we need to look into at a later point and time, but we will experiment as we go along to that side.

* we will see more Mobile App Testing that will come

(14)

Mobile Testing Day 1 Video

14 So for you to learn Mobile application testing –what is it that you need to do?

You can join lot of Forums, you can surf the blogs w, the world for what is going on and watch what is happening on the development world.

You have to ensure that you don’t get lost. Because there is so much out there, it can be over kin.Once you lay your foundation, get your fundamentals very clear, very strong, it is easy for you to progress from there.

You have to take a course, say take a course is take a road map-Training program, take something that is really popular out there and try and get yourself into it ,because however be the training they at least have one structure to it-beginning to end they are covering it and they will give you a good quick start Try and be as hands on as possible, especially when you are picking up a course, see and ensure that you are focused on doing it rather than seeing someone doing it. Ok

So it’s not just about playing around with the application, don’t install a app and play around and say I have done testing –No, what is expected is for you to be able to plan what you are going to test, you then play and actually perform and execute the test, you track what you are doing and then your report it.Once you do this process that is when you are truly doing Mobile app testing.

(15)

Mobile Testing Day 1 Video

15 There is nothing more important than doing a dummy project ,but treat it like a real project-that is what will give you the strength and expertise in this domain.

All right I wish you all the best hope this gave you a quick overview of what Mobile Application Testing is all about. In the next coming few sessions all the videos on this, but please visit the website because that is where all the information, all the tutorials are going to be hosted going forward.

Thank you so much. Take care everyone. Bye ***********************************

References

Related documents

Rather than simply viewing public engagement in science, policy and behavioural change in terms of discrete cases, key social theories in deliberative democracy, practice

The server will monitor all the call that are coming to the children mobile phone. If the children receives more than the specified number of calls from the

Such a collegiate cul- ture, like honors cultures everywhere, is best achieved by open and trusting relationships of the students with each other and the instructor, discussions

If a team forfeits three (3) league games due to lack of players at the start of a regularly scheduled game, the team will be dropped from the league with no refund of entry fee

Single scale model-based obstacle detection framework presents a viable basis for im- plementing complete embedded obstacle detection systems, depending on the environment

Adolescents’ academic performance and behavior problems could be predicted by relationships with both mothers and fathers, such that fewer conflicts with a parent were associated

The hypothesis is consistent with our findings that states with large durable-goods sectors tended to have experienced larger reductions in volatility, and a high average firm

 Splitting sector antenna should be connected with an AISG cable to the nearest antenna as shown in the below