Microsoft Visual Studio emulator – Best in the business ?

Visual Studio emulator for Android is a great tool for debugging/deploy Android applications in the windows environment. For me personally, this is a much more convenient android emulator comparing with the Google’s own AVD emulators. Microsoft Visual Studio emulator for android uses the Hyper-V capabilities of the host computer, resulting in a faster launch. So it’s like, No more staring endlessly at the Android boot logo.

Requirements

  1. First thing, Your computer/development environment must meet the requirements to run Hyper-V
  2. 6GB or more of RAM

More details on the requirements is here

You can download the installer file from here

Features/Advantages

  • Apart from the speed, Microsoft Visual Studio emulator for Android supports a wide range of device profiles, Including devices from Samsung, Motorola, Sony, LG, and more.
Different device profiles
Different device profiles
  • You can install the APK files by using drag-and-drop method to the emulator screen. It also connects to the ADB, so development tools can target this.
  • Powerful simulations – You can try using the camera/map on the emulator
Additional tools available in the simulator
Additional tools available in the simulator

Problems you may face ( . . . or problems I’ve faced )

  • Unable to access the Wi-Fi or mobile data – Probably the most annoying ever I’ve encountered, Basically you can’t access any network/internet services from your emulator.

Solution ( . . . or the solution worked for me )

  1. Disable any virtual Ethernet adapters that aren’t being used.
  2. Go to Hyper-V manager & set the Emulator Internal Network Adapter’s Virtual switch to Windows Phone Emulator Internal Switch.
  3. Run the visual studio emulator on administrative mood.

Some more common problems occurred in the emulator can be found here.

Some more useful tips here

Ultimately this is by far the best simulator I’ve used for the mobile automation activities, especially after a couple of bad experiences with the native android simulators. So easily recommended!

Let’s make Sri Lanka Cricket great again!

Sri Lanka lost another home series. This time for Australia

Sri Lanka lost the ODI series to South Africa

Sri Lanka lost the second test match to Bangladesh

Sri Lanka lost the first ODI match to Bangladesh by 90 runs

Different opponents, different venues and the same result. It has been a very arduous time for being a Sri Lankan cricket fan. But getting thrashed by a minnow ( Pardon! This word should not be used against Bangladesh anymore ) is not acceptable and mind you, this is Sri Lanka’s sixth straight loss in ODI cricket after following the whitewash in South Africa. So certainly there is something wrong with our setup.

Sloppy in the field

Everyone will agree with the fact that Pakistan team could be the worst fielding unit in the world by a distance. When Sri Lanka won the world cup in 1996, they were one of the best fielding units in the world. Upul Chandana, Roshan Mahanama lead the fielding unit. However, Sri Lanka team at the present is the worst not-the-best fielding unit. Even in the last night, we dropped a catch of the centurion.

No match winners

To be honest, I don’t think we have a genuine match winner apart from Angelo Mathews. Now he is injured, we don’t have that option as well. Yes, We have seen a couple of excellent performances by individuals. Thirimanne, Chandimal, Kusal Janith, Asela Gunaratne all are good performers and no doubt about their talents, but they failed when it comes to delivering continuously.

Post Sanga – Mahela era / Transition period

Sanga and Mahela were great ambassadors for Sri Lankan cricket for a long period of time. But we are forever in the transition period since their retirement. Individuals who have been identified as the replacements for Sanga and Mahela are failing continuously.

As Chandimal said in the post match conference, Sri Lanka can’t continue to use ‘Transition’ as an excuse for poor performance.

Wrong selections?

Honestly, I don’t think we are selecting our best players to the squad and the match. We have tried so many different players across all formats since 2015 and found only very few successful candidates.

Another point related to this could be that we don’t have specialist players for the different formats ( I’m quite not sure where we can put Thisara Perera, specialized pinch hitter may be? ), There are certain players who can play better T20 cricket than Test or ODI. But we tend to pick same team/ same set of players for all formats. The only exception was the last Australian tour, we picked ideal T20 players for the series and result was in our favor.

Politics / Domestic structure & First class cricket

This has been another hot topic for a very long time and nobody has a genuine plan / or solution for this. It’s no secret that the gap between first class cricket and test cricket is massive. Former captain Mahela had given a proposal for a domestic structure and apparently, it’s not gonna happen in this lifetime.

On top of all these problems, Sri Lanka is now facing a danger of not qualifying to 2019 cricket world cup. So we have a problem!

We all love cricket as a nation! We all are passionate about the cricket! We understand that this is a game, We can accept defeats, but with a fight!

So humble request to everyone, including Sri Lanka cricket board, selection panel, anyone who can make a difference – Let’s unite and Let’s make Sri Lanka cricket great again!

Expectations from QA Interns

What Industry really expects from a Quality Engineering Intern?

Internships are great chance to gain the industry exposure and insight of a real life project. Everyone wants to get the best out of the internship. In general, Interns are looking to get a valuable work experience that would benefit them in their future work-life.

This is an attempt to give insight from the company perspective, what they expect from an intern & how a person should prepare for a QA Internship interview.

I don’t have any project exposure, Will it be a problem?

Of course not, We know that you don’t have the real project experiences. So we won’t ask questions on that. But If you are applying for an internship, then you are probably a third-year or fourth-year university student. You should probably go through a couple of university projects. So expect questions from these projects/project related areas. Your contributions to the project / your role in the project will be a good starting questions for interviewers.

Do I need to know about QA terminologies?

We don’t expect you to remember the ISTQB definition of testing terminologies. But the basic level of understanding is expected. You are applying for a QA Internship, so you should know about test Cases, basic testing types, test designing techniques, defect life cycle.

In addition to above, you should be able to explain/demonstrate your knowledge in test case document/Defects. If someone asks you to name few items in a test case, Please don’t start with Test Case ID, There are far more important things in a test case other than the test case ID 🙂

Do I need to know about automation testing/performance testing?

Depends. We don’t expect vast knowledge about automation/performance testing from a QA intern. But it would be a huge advantage for you If you know anything about automation testing or performance testing. If you are passionate about the non-functional testing or If you read about these testing types, do share your knowledge/ learning to the interview panel. The company would be much pleased to recruit you.

I learn quality assurance in my final year and I got A+ for this, Do I need to prepare for the interview?

Yes, Still you need to prepare! You should prove your worthiness to the interview panel, then only they will recruit you. Remember nobody gives you anything for free. Also, interview panel won’t ask you straightforward questions from what you learned in your final year, they will try to apply it to a real-world scenario. So be prepared for questions like that!

How to face/prepare for a QA Internship interview

  1. First go through your CV as much as you can. Interviewers can ask questions based on things you’ve mentioned.
  2. Speak clearly to the questions. Good communication skills are much expected from QA professionals.
  3. Be prepared to design test cases for given scenarios.
  4. Be ready to write simple SQL statements or simple program ( on your preferred language )
  5. Expect some impromptu questions, to test your analytical skills / logical thinking skills – Something like writing a pseudo code for a scenario.

Hope this little piece of points are good enough for you to nail your next internship interview!

Pair Testing for Mobile Projects

Recently when I was researching to find an effective way to do pair testing with developers, this little hidden feature in QuickTime grabbed my attention. Pair testing is little bit difficult for mobile projects – especially when you are working with an on-site team.

This particular feature on QuickTime will enable to demonstrate your mobile screen to anyone. It may come in handy If you want to demo a feature / explain a bug to a developer.

This how you can do this!

Requirements

  • iPhone / iPad running on iOS 8 with lightning cable
  • Mac running on OS X 10.10 – Yosemite

How to record screen

  1. Connect the device to Mac via USB.
  2. Open QuickTime Player on Mac
  3. Select File -> New Movie Recording
  4. By default QuickTime will select the face-camera. Click on the arrow alongside the record button to select the device
  5. Click on the record button & you are done!

If you can share your screen via any good screen share service, Developer would be able to see the stuffs you are doing on your device screen and that would make everyone’s life more easier.

Why Sri Lanka needs a good talk show ?

The talk show is a popular television programming concept in the modern era. Mainly one who does TV shows discusses various topics, from politics to gossips to sports. It is also a part of a reality TV concept. This concept has gained a major attraction in the western world, in many cases; the shows have made their
hosts famous. Ellen Degeneres, Jimmy Fallon are classic examples for this.

But, how this is going to fit into the Sri Lanka? Do we have a need for this?

Truth to be spoken, We don’t have a great television crowd as US/UK (or even India) have. Our television crowd used to watch a news program (on a preferred TV channel according to their political taste, of course!) and watch a couple of teledramas (more likely some dubbed Indian soap operas or Sri Lankan ‘mega teledrama’ influenced by Indian soap operas) and go to sleep. On a special day, they may watch a special program/ or a special movie (31st-night program on televisions/ or 31st-night movies).

So, is there a chance to break into this routine? From what I believe, Answer would be yes. Even though people stick into the above-mentioned routine, Most of them are not satisfied on what they watched (or rather forced to watch).

If someone breaks this box, most certainly people will love and follow that trend. Sirasa Super Star / Derana Dell Studio / Sri Lankan “Mega Teledramas” are good examples for this.

When Sirasa launched Sirasa Super Star, they didn’t have a very good start. In fact, It started as another typical program with an average attraction. But after a point, it had gained the attraction. People started to enjoy the performances of the contesters, Critical comments by the judge board. Program slowly picked the game changing flavors.

Derana Dell Studio is also not your average musical program. It is about adding a new value to the existing musical arrangements. Totally new concept to Sri Lanka, People liked that concept – they love the color of the program. If I’m not mistaken, the program was aired at 9.30p.m, but then Derana decided to move it to the 10.30 p.m. slot. But that didn’t affect the program. People still liked it and still watched it.

Unfortunately, nothing good to talk about Sri Lankan mega teledramas, but whether we like it or not, it is also a part in day-to-day Sri Lankan life. Initially, this has started as an alternative to the Indian soap operas (Sinhala dubbed Indian mega dramas). There was a time when TV channels dedicated their most popular time slots (8-10p.m) to Indian dramas. This affected the local television drama industry. So local directors/producers decided to create the same concept in Sri Lankan flavor. But unfortunately, the alternative has made the situation worse. Now we barely see a good local tele drama. But whether we like it or not, this trend has made a huge impact in local television culture.

So, What I was trying to imply is that, if there is a will to make a change, we always have the vacant slot. Coming to the topic, If someone makes a good TV talk show, It would most definitely a hit program. What should be the structure of the talk show? What are the topics to talk about the talk show?

As Simon Frodo said, Human is a political animal. Whether we like it or not, we need to talk about politics/ We love to talk/listen about politics. Not necessarily about crossovers/ corruption charges against previous governments etc, But about how politics/politicians effect in general life.

On another hand, We may never run out of topics to talk. We are life in a country with full of controversial things. Look around, you may find zillion numbers of topics to talk.

So Who is going to host? What would be the most appropriate time?

Hosts on a TV talk show play a vital role. As I mentioned, in most popular cases this program makes hosts more popular. So the selected host should definitely be a talented individual, who has a sound knowledge of current affairs. He/she should have the sense of humor, which is also another vital factor to keep the momentum of the program.

If I have to suggest a person, I would suggest Chathura Alwis, Kamal Addaraarachchi for this
position. For the time slot, It definitely has to be on a weekend. Any time slot around 7-9 would be good.

Now all of above are my imaginations, I don’t know whether anyone ever going to implement this or not. But I would be thrilled to see the above in action in Sri Lanka!

…. And I need to sleep right now!

 

Homebrew

Homebrew is a package manager for OS X. It is designed for installing UNIX tools and other application on MAC OS. No need of drag and drop the .dmg files to the Applications folder. Homebrew Cask extends the Homebrew capabilities, with this support, it supports to install larger binary files.

Prerequisite 

Homebrew requires to have Command line tools for XCode on Mac. This can be done by either installing full XCode application from Apple or install only the command line tools, which is the easiest way to do this.

All you need to do is open a terminal and type below command. Then press Enter.

Install Homebrew

Type the below command on a terminal & hit Enter.

$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)

This requires the administrative password to proceed & status will be shown on the terminal.

Installing Cask

After installing the Homebrew, type the below command & press Enter.

$ brew install caskroom/cask/brew-cask

Done! You are successfully installed the Homebrew. Now let’s see what you can do from Homebrew.

Install Java

Downloading the relevant .dmg file from Oracle and install it by going through the wizard would be the ordinary way of installing the Java on a Mac OS X. But this can be achieved via Homebrew just typing few commands.

All you need is to open a terminal and type below command & hit enter.

$ brew update
$ brew tap caskroom/cask
$ brew install Caskroom/cask/java

Install Google Chrome

As in the above step, Open up a terminal, paste below command and hit enter.

$ brew cask install google-chrome

Here are few more commands of Homebrew.

Colombo Performance Test Meetup – April

It’s Meetup season again and I was privileged to do a session on Performance Testing in Colombo Performance Test meetup organized by the PerfTest Initiative of 99X Technology. It was collaborative session conducted by me and Nipuna Madusanka, a fellow Xian.

Chamal's Blog_PerfTest Meetup

What we talked…

Since we wanted to do something different for the meetup, (Other than the generic topics that we usually see in meetups), We thought of doing something about continuous integration (CI). CI is not a new topic, but CI integration with non-functional testing is kinda of new and cool (At least for us: D)

So after a couple of deep discussions, we decided the structure of the meetup. It was decided to have a theoretical session and a practical session. In theory session, we planned to explain the back end of a implemented solution and importance of having the CI environment.

In the practical session, we decided to use the Jenkins (a) Because everyone knows it (b) Everyone at least heard about it, Also as an additional bonus point, we decided to add Blazemeter integration part. Now, this part was something that I and Nipuna found out after a couple of research and we thought it was a really cool feature.

Challenges

Apart from countless hours of rectifying the errors in the presentation, we ran into a couple of configuration issues related to Jenkins, which was not easy to fix. However, we managed to fix those by the eve of the meetup 😀

Meetup Day

It was thrilling to have a good turnaround for the meetup. There were lots of questions from the crowd, which were really interesting (That may also be an indicator that we didn’t bore the crowd )

  

Aftermath

It is absolutely thrilling to see the increasing number of performance enthusiasts in the testing arena, We’ve received lots of positive feedback on the meetup.com. Lots of people tried the things we presented at the meetup, which is again really wonderful thing to see. Thank you very much 99XT Performance Test Team for the opportunity to talk in this platform.

In case If you missed the session, Here’s the link to the presentation.

Mobile Application Testing

How many apps do you use after its initial download? or in other words, have you ever downloaded an app and delete it after few minutes/weeks. Yes, would be the answer from most of us.
Recent study conducted by the 34SP.com ( Full report in PDF ) found out that 20% of people regularly delete apps within just three months of downloading them, while 39% often delete apps because they’ve been ‘useless’.
Here are some of the interesting facts from the survey,
  • 30% of respondents saying their mobile phone is the main device they use to access the internet. With Smartphones now providing instant access to the World Wide Web at the click of a button, we predict this number will be closer to 50% by 2016.
  • A third (32%) of respondents in our survey stated they ‘couldn’t live without’ their mobile phone. A further 36% said they were ‘addicted’ to checking their mobile phones, or know someone who is.
So apparently these numbers would increase in future. But what good would do, If your application is not satisfy the user.

Evolution of Mobile app ( Mobile web vs Mobile app )

Nowadays everyone wants to make a mobile app, even without considering the end goals or the cost. Point is that Mobile app should accomplish a specific target which couldn’t achieve by a mobile browser.
Mobile website should be your first step in making a presence in mobile world. When you get more business, when you get more personalized requirements from customers, then it would be the ideal time for mobile app.

Characteristics of a good mobile app

  • How long will it take to start your mobile application?
  • Are the intended purposes are served ?
  • Interactivity ? User experience ?
  • How easy to use the app ?
With the latest development technologies, It won’t take much time to create a mobile application. But It would take time to create a winning mobile application.
As you can see, Characteristics of good mobile application are limitless, So do the challenges.

Challenges in Mobile application testing

  • Devices / Different Operating Systems
This by far would be the biggest challenge facing by mobile application tester. As per the study conducted by OpenSignal, there are 24,093 distinct android devices seen in 2015 ( Last year it was 18796 )
Device F

Device Fragmentation – 2015 – Source : OpenSignal
That is only Android, Different story for iOS
iOS.JPG

Device Breakdown iOS – 2015 – Source : david-smith.org/iosversionstats/
Beside from the devices, there are different Android versions as well as different iOS versions.
  • Different Screen Sizes 
Variety of screen sizes / aspect ration / pixel density is definitely a trouble. It was a challenge for Android and with the release of iPhone 6, that challenge comes to the iOS world too.
Application should be performed as expected in iPhone 4 / iPhone 6 and iPad 3.
  • Behaviour on different networks
We cannot assume application’s behaviour on a very well 4G connection / 3G connection or EDGE connection to be same.
This would have a huge impact on application performance as well as the user experience. This is why some of the modern applications are supporting offline mode.
Let’s talk about how to overcome these challenges in next post.

Updating Lumia 920 to Windows 10

Windows 10 – For mobile has been there for awhile now, but haven’t had a chance to get familiarize with it. Yesterday I thought to update my Lumia 920 (which runs on Windows 8.1). It’s a pretty smooth process, no
hassle.Before proceeding to the upgrade, I should tell that below steps that I’ve tried are for a Lumai 920. In general these should be the same for other windows devices. You need to take risk of updating the device ( and its consequences )

Prerequisites/Things you should know before the update

  • Download Windows Insider – We are going to update our device from an application called, Windows Insider. (It’s basically the ‘Developer Preview’ application), and these builds are not official releases by Microsoft. So there can be scenarios, where your phone might not work as it should be (bugs). So by enrolling in the Windows Insider, You are agreeing to accept these risks. This can be done by simply going to the Windows Store and
search for Windows Insider.

  • Backup the device – It is always, ALWAYS recommended to back up the phone before doing an upgrade. In case, anything goes wrong you can  easily restore the backup.
  • Windows devices recovery tool (Optional) – If you are unsatisfied about Windows 10, you have the option to rollback to Windows 8.1 (or whatever the OS you have before the upgrade). So download and install this on your computer, In case of emergency.

Right, Let’s start update

Open up the Windows
Insider app, Select Get preview builds option.
There you will get two options,
  • Insider Slow – By selecting this, you can get the most
    stable build. But this build may or may not have latest updates. Also If there
    are any problems, there are workarounds for those. This is basically a risk free option.
  • Insider Fast – From this you can get the latest release. But
    on other hand, latest release might not be the most stable one. This may have
    bugs and unexpected scenarios. Also If you found something fishy, there is
    chance you may not found a workaround for that.
In my case, I’ve selected Insider Fast. Because I like to take risks 😀

Right, You will get a screen like below depending on your selection on above step, then it will start downloading the OS. Note that your device may reboot after this step.

What you need to do is, Go back to the Phone updates & check for an update ( Settings -> Update ). Then you will see something like this.

Once you tap on the download button, you may direct to the below screen. There you can see the version number of the build that you are going to download.

Tap on download button to initiate the download button, If you have a good internet connection, then your OS will be downloaded in 10-20 minutes.

After the download, You may get a screen like below. Once you tap on Install, Phone will install OS update and
that would take around 20-30 minutes.

After that you will navigate to the data migration screen, this may also take another 20-30 minutes (all depends on
number of apps you have / amount of data on the device)Remember to do a device reboot after the data migration.
After all of this (If everything goes well) , You will have a device with Windows 10. After the installation, You have to update all of your apps ( You need to go to the new Windows 10 – Store and update the apps )

2016 Goals – As a Tester

One would argue that creating a set of goals or a set of tasks should have done before a new year. But considering other factors around me on this period, I was not able to complete this. So here’s my wish list for 2016 as QA professional.

  • ISTQB Exam – I’ve completed ISTQB foundation level examination in 2013 and I had a little plan to do the next examination, which is the advance level examination in 2015. But lack of preparation forced me to not take the hurdle. So I’ve decided that I should take advance level examination in this year, unless something important factor stops me from doing it.
  • QA Dummy – This is the latest addiction of me ( What is QA Dummy ? ), I am going to pay some serious attention to this because a) It is kinda fun thing to being an “administrator” of a web site 😀 b) I’ve invested/paid $18 to get the domain c) I seriously like the idea ( of course, that is why I’ve created this thing ). So I’ve coupled plans defined me with me and I will start executing those stuffs as time permits for next 10 months. ( PS : How QA Dummy started )
  • Pair Testing – Though I have not 100% tried this method in real work, This sounds pretty amazing ( At least from the stuffs I’ve read ), this is something I am planning to apply in real work.

Apart from that, I should keep this blog space busy ( Even though I’m writing/editing stuffs for the QA Dummy ). So hoping for a good and awesome 2016 !>