Day 7/30 of the Mobile Testing Challenge

Going back to our normal counting and we haaaaave day 7! Today’s task is:

Share your favourite mobile testing tool.

The only mobile testing tools used are the ones from the challenge, Charlie and the Android SDK, but they’re really new on my list. The tools that I’ve used for mobile testing for such a long time are:

hand

and

brain

For the second, I had to look up online because scalping is not something I want right now. My brain surely looks like the one from the picture, nonetheless.

The tools that I would like to use for mobile testing is Appium and Selendroid, both used for testing the UI of native and hybrid apps on mobiles. Also, it would be cool to use a performance mobile testing tool, but I don’t know any. Yet. All in due time.

Test on,

A. Testophiliac

Day 5/30 of the Mobile Testing Challenge

Today is the task from day 5 (I swapped it with day 6, remember?), which reminds me of a really cool song. Oh, don’t click that! You did, didn’t you? I guess I spoiled the surprise yet again, huh?..

Some say that if you give an infinite number of monkeys a typewriter, they will write Shakespeare. I say that if you give me a typewriter, I will write the infinite for monkeys. Which is ∞. Plus a spoiler! But this is just monkey business, along with today’s task which is:

Use the Android monkey provided in the Android SDK to send random commands to your Android app and describe your findings.

So, what do I need first? Android Studio. Kind of difficult, because last time I used it, it wouldn’t see my device. But let’s try this once again. On the laptop this time, so I might be successful.

But, first, what is monkey testing? As said in the task itself, it’s a program that runs a series of commands in a random order on the phone at a high speed. Its use is to see if the phone can take all of these actions one after another. It would be difficult to have that speed as a normal user (although some do type fast), so this automated process gives much clearer results. For more information, check out this page here.

I downloaded Android Studio, launched cmd, went to the folder with the adb file and wrote in the command line to launch the monkey and add the output into a logs text, exactly the steps shown here. But I didn’t know what the package name of the app was as the app that I wanted to test on (Facebook) was already installed. So, I didn’t and just ran the command without that part to see what happens. Of course, the program didn’t detect my device and the log text file was empty. The thing is that I don’t run on an emulator, but on a physical phone, so I had to make this configuration work. I checked out this page and followed the steps that were there. But I got stuck where I had to update the driver software because it wouldn’t see my device at all. So, I started digging some more. I did this workaround where I got stuck again at the troubleshooting part. I checked out this link here and that didn’t work, either. You could say that I’m really stuck now, I have no idea how to make my device appear in the manager.

I guess I failed today’s task… And I could have gotten away with it, if it weren’t for that pesky Android Studio! It’s not over between me and it, though, not even the slightest! If you guys have any other idea or solution to the problem I was having, I’d love to hear it. It’s pretty late and I think I’m not seeing the solution properly, so I’d appreciate the help!

Test on and thanks,

A. Testophiliac

monkey-typewriter

Day 6/30 of the Mobile Testing Challenge

Yes, you read that correctly, “day 6”. I wanted to do this one instead of day 5 because of some technical difficulties (it’s become impossible for me to install things on my computer, and the laptop that is at work right now is out of my reach – literally). So, I swapped them because I didn’t want to lose a day and I’ll finish day 5 tomorrow when I’ll be part of civilization once more.

So, for day 6 (which is tomorrow), we have:

If you are an Android guy, test something on iOS and vice versa.

(I think we can all see the “guy” part, but let’s pretend we haven’t) I am definitely an Android “guy”. It’s not only about finances, but also about customization. I find it really awesome that I can change the way my phone looks, the way my apps look, the way my apps are displayed, *what* apps are displayed and all that.

As I said in my post of the first day, I also have an iPhone (phew!) on which I test different stuff. And the thing that I want to test is how fast Google Maps works on the iPhone 5 with iOS 9.3.5 in comparison to the Android phone, HTC One M8 with Android 6.0.

First step: Starting the app -> iPhone started in 3s, while Android in 5s.

Second step: Moving around the map -> Android seems to have a tiny lag, BUT the iPhone shows me the location of my parents’ home, not the one I am at right now. I can also say that I have never used Google Maps with the iPhone because I didn’t need to, especially that I don’t have a SIM card dedicated for it. iPhone acts strange, Android takes an advantage!

Third step: Choosing a destination and scrolling through the ways of reaching it -> Here the phones show me different things. The iPhone says that the trip takes 29 minutes by walking, the Android says 26 minutes. By transport, the iPhone shows me that public transport directions are not available in this area (!!!) and the Android shows me 3 different buses I can take, each for 25 minutes. If I want to do this by car, the Android is telling me that it lasts 5 minutes, but the iPhone has an extreme strange behaviour. It goes from this:

before-drive-button

To this after clicking on the “Drive” button:

after-drive-button

Look at that small man walking, shouldn’t he be driving? Extremely strange. I tried re-entering the destination and this time it worked fine after clicking on the Drive button.

In conclusion, I can say that Google Maps started much faster on the iPhone than on the Android and also didn’t lag when moving around in the map, but the reason behind this might be because the iPhone has fewer apps than the Android does. Just a thought. Also, the location saved on the iPhone was a weird thing to see, especially that it surely propagated the issue with the Drive button. Plus, iPhone said that I can’t travel back home by bus or any other means of transportation. Whew, what a night!

Test on,

A. Testophiliac

apple-vs-android

Day 4/30 of the Mobile Testing Challenge

This is day 4 of the challenge and my 2nd of being late. Not cool, Testophiliac, not cool… But I’ll get through this, though, one way or the other, so please bear with me!

The task for today would be to:

Share a mobile testing blog with a mobile developer or designer.

A thing which I totally did. I shared a testing blog with Kid Kiwi, a talented mobile developer who’s had two games published by now and one on the way (I wrote about one of his games here for July’s testing challenge). More precisely, I shared this blogpost. Which is about a me sharing a blogpost to a mobile dev who is being shared a mobile testing blogpost that is forwarded to him.

Classy as always!

Test on,

A. Testophiliac

landscape-mountains-nature-lake

Day 3/30 of the Mobile Testing Challenge

Day 3 is up and I am so late because of the moving out and all. But I managed to read a bit about mobile security testing last night from Daniel’s book, so I came in prepared. Whoops, did I already said what was on for today? I guess I did. Check this out, for today you have to:

Perform a mobile security test.

Just like yesterday, this is a task I have never done before, so I’m going with baby steps on this one again.

Read about mobile security testing. Check. Have some background knowledge beforehand about OWASP. Semi-check. Not knowing where to begin with this. Check. Having a list of checks. Double check. But do you know what the funniest thing is? It just hit me: didn’t yesterday end up as security testing? The fact that WordPress was giving me saving failures while my phone announced me that there might be some man-in-the-middle doing horrible stuff to my apps as the certificate from Charlie did not seem to be installed? It sure did!

Test on,

A. Testophiliac

mobile_security_business_risk

Day 2/30 of the Mobile Testing Challenge

Day 2 is here! Man, I remember when last challenge I kept running out of ideas of what to write at the beginning of each article. It’s already happening now… and it’s only the 2nd day! Should I feel worried? I am a bit.

The text for day 2 is a long one because you have to:

Use a proxy tool, for example Charles Proxy, to intercept the traffic between the app and the backend, for example, check the calls for encryption and describe your findings.

Hmm, weird sentence. But I understood some stuff about this Charlie dude. I even looked him up (consider yourself lucky, Charlie!). It is a tool that checks your HTTP(S) requests between the machine you’re working on and the interwebs. Confused about what is a HTTP request? Well, you can check more details here or you could read an article I did in the last challenge here (read the first, it’s more eloquent).

So, I downloaded it, I wanted to install it, I didn’t have any space left, I removed some files, installed it again and it worked! But I tested it on the laptop in the end. I had no idea how to use the program, so I did incredible baby steps to try to test *something*. I set up a proxy from my phone to the Charles server so that every request made by my phone would be visible on Charlie. I stopped the current recording, cleared the session and restart the recording to have a clean slate, so to say. I opened up Facebook, looked at a notification, closed it. Looked in Charlie, there were a few requests visible in the program, some were from apps that I haven’t checked in some time. Then I thought “What if I clear the session again, start recording and restart my phone? What would happen then?” I’ll tell you: Charlie would say that it’s been running for more than 30 minutes and that it has to stop. Just great… But I did get a chance to see all the requests made after restart and I noticed that WordPress did something even before the phone was fully restarted, which seems fishy. So, I did that again. But then I saw that I had to configure Charlie to display the requests made through SSL, task at which I totally failed. I understood what was asked and wanted, but I couldn’t find any answer online. My phone just wouldn’t accept Charlie’s certificate. Oh, Charlie, why hath you abandoned me? But then I noticed that some requests started to get responses and that was definitely weirder.

If seeing the response of my WordPress API worked now, I restarted Android again and looking for the requests. Strange, the API kept telling me “Socket: Software cause connection abort: recv failed”. I thought that maybe this happened because I have just restarted the phone. So, I accessed the app myself and got a 200 HTTP status code, which was perfect. After waiting for some time, the socket problem started happening again and again, so this was something stranger. The strangest thing? The WordPress page that I am writing in right this instant keeps telling me that “Saving of draft failed”. I think WordPress thinks that some man-in-the-middle is currently writing my blogposts around here!

I really AM curious: is that what WordPress is doing? Leave a comment below if you know the answer or if you’re as curious as me, I really don’t know what to make of this.

Test on,

A. Testophiliac

P.S.: When I tried deleting Charles from my laptop, I still had the session turned on, but nobody told me to quit the program so that it could be deleted. I think this is just a huge conspiracy.

P.P.S: After deleting Charles, I could save my post. S-T-R-A-N-G-E.

charles-proxy

Day 1/30 of the Mobile Testing Challenge

Hello, hello! What a nice day for a testing challenge, don’t you think so? I surely do! For the ones who haven’t heard what this is all about, you can read more about it here. For the other “peoples”, let’s get going!

So, first day:

Take a photo of your mobile test lab.

Easy, peasy. These two are it:

HTC One M8 to the left, my main one, and iPhone 5 to the right, which is used only for testing. And playing Trauma Ted. But mostly testing. Of course, I will try them both in the challenge because 1) it’s fun and 2) I want to get used to iPhone, too, and I will do that as much as time allows me. Gods of testing, give me strength!

Test on,

A. Testophiliac

The 30 Days Mobile Testing Challenge

Absolutely fantastic news! We have confirmation that a new testing challenge is going to take place next month in October, only this time it’s a mobile one! Created by the one and only Daniel Knott along with Ministry of Testing, they gathered 31 days of easier and more difficult tasks that can be done on mobile. You can find more on Ministry of Testing’s page here.

I am totally in, although I think that I might not post daily as I did in July. But I want to do this badly and learn more on how to test on mobile!

Test on in October,

A. Testophiliac

30_days_of_mobile_testing

Interdisciplinarity: When “too much” is never enough

First word = a tongue twister, I know. But for the past weeks, I kept thinking about it. And about IT. And about other things besides IT. And about how they all interconnect with each other or, better yet, how:

i-need-this-in-my-life

The falling letters? Photoshop. The meme doge? Internet. I didn’t make the whole image in PS, though, a large part of it is in Paint (retrospectively speaking, the “I” could have used a little more tilting). But maybe I’ll see the day when I’ll make the entire photo in PS. Or even create my own doge! (Nah, I don’t think I could create a doge *sad face*)

I’ve also started reading about social media because I need some answers. For so long, I’ve asked myself “How do you get to be seen on social media?”, “What do you need to do to relate to your readers?”, “When to post so that you’d get the best engagements?” I did copywriting for a short time when I was much younger (last year, actually), but there wasn’t enough time to answer these questions and all the others that I had in mind. Right now, the time for questioning is over for me! But how would this help *you*? I’m glad you asked this question because you will see that:

You get to be more creative

You learn a little bit of this, a little bit of that, you get to talk to people. You listen to what they say and your brain adds everything up and makes the connections. “Oh, so this belongs to that and the other one is for this? I could totally use it!” Ideas start coming and coming and who knows what might come out of it? This is really helpful, especially that:

You get to understand what others are going through

If you’re a tester and you learn Javascript, it will be easier for you to understand the problems that can occur by working with that programming language. Bonus points: you will also know how to fix and explain the issue in greater detail. But the best part of it is seeing just how hard it is for the developer to do what he’s doing and learn to appreciate that his job is no easy feat. These add all up to the following idea:

You add value to yourself as a person and as a professional

How cool would it be if you knew testing, a programming language, a scripting language, photo manipulation, playing the guitar and tailoring? They seem totally different from one another and they actually *are*, but you might find out that stitching up a new dress requires as much patience as doing exhaustive testing or creating a photo pixel by pixel. Salsa dance courses anyone?

 

A downside, you could say, is that it takes up some of your time and you have to keep up a consistency to feel that you actually learned something at the end of the week. You could repeat an action every day for 10 minutes, like reading a book, and that’s totally okay. If you’d like to learn a skill, though, 10 minutes daily might not be enough, but it depends on a lot of factors. So, try as many combinations as you’d like or can and see what’s right for you! You’ll find me here, tweaking at doge pictures. So amaze!

Test on and learn on,

A. Testophiliac

First-time facilitator: what to expect? 5 things I learned at my first meetup

Last night, I had a sudden thought of writing this article after thinking about *the day* that happened two weeks ago. Of course, I’m referring to the meetup I held with two of my colleagues, Andrei and Lucian, at TechHub Bucharest for the TeamSTAR competition. You can read more about it here and, as I said in the article, that was my first time as a facilitator EVER. Like, ever, ever. So, I thought of making a list of aaaaaall the mistakes I did. I definitely do not want to repeat them next time and maybe you, baby-facilitator, will be protected by these evil endeavours with the help of this article! Firstly:

1. Don’t panic (like I did)

This is the beginning of everything and that’s why I added it as a first advice. I know it’s a lot of pressure and, especially if you’re new in the field, you might think “What could they learn from me that they don’t already know?” Well, guess what, *they* are coming to *your* presentation. *They* are interested in what *you* are going to talk about. They aren’t there because they didn’t have any other plans that night (I’m sure that a beer out sounds more interesting than going to a meetup that doesn’t interest you). They are there because they thought your presentation is interesting and really wanted to hear what you are about to say. So, do not be afraid and do not doubt yourself, you’re there to teach people something and certainly learn something back. You had the courage to say “yes” and hold that presentation, so why worry? If you’re panicky and all, whatever you do…

2. Don’t rush (like I did)

You’re in front of everyone, every pair of eyes is directed towards you and then you start talking. And talking. And talking. You relax after some phrases, but in your mind there’s some subliminal thought that makes you continuously push the presentation button and go through the slides like knife through butter.

I guess that’s a normal behaviour and it means that you really want to be over with, but you need to apply the #1 principle here. Take a deep breath and set your mind on the fact that all the people in front of you know how it is to be nervous and they understand. Just relax, don’t be afraid, but remember that before the meetup you will have to…

3. Prepare your presentation (a lot)

If you’re really anxious about it, you could prepare your presentation in Powerpoint, on a white A3 paper, on sticky notes or even bring props. I usually present in my room in front of my walls for a few times in a row, each totally different than the other, and ideas just keep popping in my head. “What if I add a note here?” “What if I add another slide with an actual thing that happened to me regarding the subject?” I always do this whenever I have to talk in front of people because I want to be sure when and what type of jokes I want to bring in. That’s just that way *I* like to present and I always feel a bit more grounded this way. Take note, though, that however much you think you’re getting ready, you should always…

4. Await uncertainties

You miss the bus. Someone spills coffee on your shirt. There aren’t as many people at the meetup as you expected to (There *never* are, just so you know). You lose your voice a day before because you’ve been at a concert and screamed the whole time (Okay, I don’t know what advice to give you. Raw egg and honey?) You get the idea. There’s always the unexpected, there’s always something that doesn’t work as you thought it did. Firstly, look at #1 from this list and then get creative: ask someone for help, improvise something, put that thing aside for good. Take a taxi and announce someone that you’ll be late. Buy another shirt from the first store you see. Present to those few people that came, don’t be discouraged. Make a joke about not being able to talk, use a mic and drink something hot whenever you feel your neck is dying. Panicking is natural and everyone might feel this, but that shouldn’t bring you down. And now the worst part comes *looks at introverts*…

5. Be friendly and talk to everyone

This is a killer, I know. I’m also guilty of not doing this. My case was also the fact that I knew most of the people and I was extremely nervous, but that was no excuse and I understood this retrospectively. As a facilitator, your job is to welcome everyone and thank them for coming because that’s how you’ll make your participants feel closer. I made a form after the meetup took place and one person thought it was “so-and-so” and his/her opinion was that the atmosphere should have been improved. I didn’t get more details, but I think that me not being closer to the people there and not mingling with them, they felt me distant from the start. People just feel this. I know it’s hard and you would just want to stand there, present and then go home, but you invited those people there, you made the schedule and you’re the one presenting. It’s your task to make them feel close to you. It might not be perfect the first time, but just try and you’ll see that there are so many friendly people out there, that you’ll ask yourself “How could I ever think otherwise?”

Conclusion

As I said, these are just the things that I noticed at my meetup, but there surely might be others. I don’t know. All I do know is that, by accepting to hold a meetup, you did what many wouldn’t even dare to do. You brought yourself in front of people and you learned a whole lot just by doing that, so do it again and again every chance you get. You’ll get better!

Test on,

A. Testophiliac

first-time-facilitator