By Ville-Veikko Helppi
03 May 2013
Howdy all you mobile testers out there!
During the past months, we’ve seen how Testdroid has become the profound development and testing platform for mobile enthusiasts, serious companies building their next-big-things on mobile, and a bunch of others. Already by today, Testdroid Cloud has proven its real value in creation of the most solid and robust apps and games across Android device variants, and in fact, many of those are used by millions and millions of end-users. Every day. That’s a stunning achievement, and for sure keeps us pushing the innovation envelope to deliver you only the best tools and methods to make your apps super-robust for next app generations to come.
We’ve experienced how profoundly Testdroid Cloud changes otherwise so tedious testing eﬀort to easy, instant result-driven testing with improved workﬂow and sophisticated monitoring capabilities. As the traditional way of testing mobile applications on real devices has been time-consuming, error prone, expensive, and rarely covering an adequate set of devices used by the mobile ecosystem, we’ve found the right angle to tackle these challenges and help developers to cover their testing on 95% of the most used devices. That’s a significant market coverage, and just in minutes.
One great thing in Testdroid Cloud is the App Crawler. If you are familiar with the concept of Web crawling, the App Crawler does pretty much the same thing for mobile application that Web crawling does for World Wide Web. In a nutshell, the App Crawler is an intelligent application crawler that executes application systematically by traversing through each of the views in the Android view hierarchy, taking screenshots, and recording performance data as the crawler progresses through each view.
In Android applications activity is an application component that provides a screen with which users can interact in order to do something, such as dial the phone, take a photo, send an email, or view a map. Each activity is given a window in which to draw its user interface with the help of setContentView(View). Testdroid Activity Lens is agreat tool for visualizing the state changes from one activity to another during the App Crawling and user can investigate transitions between these activities after each crawl device by device. These state transitions are all part of the application activity lifecycle and how your app does these transitions has significant impact on the end user experience.
An application usually consists of multiple activities that are loosely bound to each other. In the example video, the activities were MovieTabWidget, Movies and MovieTrailer. Typically, one activity in an application is specified as the “main” activity (MovieTabWidget, in the video example), which is presented to the user when launching the application for the first time. Each activity can then start another activity in order to perform different actions. Each time a new activity starts, the previous activity is stopped, but the system preserves the activity in a stack. When a new activity starts, it is pushed onto the back stack and takes user focus. The back stack abides to the basic “last in, first out” stack mechanism, so, when the user is done with the current activity and presses the Back button, it is popped from the stack (and destroyed) and the previous activity resumes.
While activities are often presented to the user as full-screen windows, they can also be used in other ways: as floating windows (via a theme with the set of windowIsFloating) or embedded inside of another activity (using ActivityGroup). You declare your activities in the manifest file in order for it to be accessible to the system. To declare your activity, open your manifest file and add an
<activity> element as a child of the
<application> element. For example:
<application ... >
<activity android:name=".MovieTabWidget" />
<activity android:name=".Movies" />
<activity android:name=".MovieTrailer" />
</application ... >
Please take a moment to try out the new App Crawler feature at cloud.testdroid.com. It would be awesome to hear your thoughts on this new feature, and basically anything related to Testdroid. Just drop me an email at ville-veikko [dot] helppi [at] bitbar [dot] com.
Looking forward to hear your thoughts!
By Krzysztof Fonal
25 Apr 2013
We have great news to all Testdroid users out there: Testdroid Recorder 4.0 is out and it is better than ever!
As you may have noticed it took us 2 months (instead of our normal 2 weeks) to develop this version and there is a really good reason for it as we did a total overhaul to the recorder core to improve performance during recording (which was sometimes really slow) but as a byproduct of this fundamental change in the recording logic came several other significant improvements as well.
We had been looking for ways to improve performance during recording for a long time because, especially on applications with a lot of UI widgets, our current approach slowed down the recording to the point that started creating frustration among our users. About 2 months ago we came up with a totally new way to implement the recording logic and part of our Recorder team started to work separately on prototyping (to prove that the idea might work) and, after really successful prototype, started reimplementing the core recording logic from scratch. A total revamp was needed because a significant improvement in performance was based on completely new approach in recording logic and redesign core architecture. After 2 months of hard work we are able to present the best Testdroid Recorder ever, which is now about five times faster!
Changing architecture and reimplementing core recording logic improved also UI widget recognition. Now if there are no id or text on a widget we recognize it by index(applies to all clickable views) – so there will be no more x,y clicks for any clickable UI widgets. Now Recorder is also able to obtain r.id’s for UI widgets even if the apk that is used for recording is obfuscated which is also a big improvement in recording accuracy as more and more applications use proGuard and using r.id’s is the best way to create robust and scalable test scripts.
To improve the readability of the generated Java code we decided to add a bunch of simple methods to our extSolo library that enable us to generate much more concise and readable test scripts. For instance we recorded commands like waitForButton, waitForImage, but in generated code there was waitForView with complex arguments to obtain each widget. Now the generated source code looks more like one-to-one copy of the steps in recording window.
You can update to the new version directly from Eclipse (About Eclipse -> Installation Details, selecting Testdroid Recorder and clicking Update)
23 Apr 2013
If you’re not already familiar with the magic of the Testdroid Cloud dashboard, why not take a test drive today?
Testdroid Cloud is our online service for testing your application on 200+ real Android devices. Your dashboard in Testdroid Cloud gives you a quick look at everything that is going on in your tests. Plus, you can see many of the devices that are available.
First, you’ll need to log in to your Testdroid Cloud account. If you don’t already have one, you can register and try it for free at cloud.testdroid.com. Find more info about creating your account here.
On your dashboard, you’ll see that you can review your account information, check out all of the devices we support (including newly added devices), organize your devices into groups for better testing, and review and manage tests in the project section.
There’s a help button to provide instruction and tutorials along the way. And if you happen to get lost, simply click the cloud icon to get back to your home page.
It’s that easy to keep informed about your results and stay solidly in the driver’s seat for all of your tests.
Check out our video for more information:
23 Apr 2013
Every once in a while our users have asked us if we could implement a feature to create reports of test results that could be sent to their boss or customer to provide an overview of the results in one simple and easily readable format. Once again we have listened to our users and we are happy to introduce Reports-feature in Testdroid Cloud and Testdroid Enterprise in-house solution.
Reports can be created on either for selected project or selected test run. On project level you can create a Summary report across all test runs in your project and on Test Run level you can create three different types of reports: Summary that present a high level overview, Failures that presents only failed tests on selected test run and Detailed Failures that presents the failed tests for selected test run in full detail. All these reports can be saved either in PDF, HTML or CSV (Comma Separated Text file) format.
If you feel that there standard reporting options do not cover your reporting needs, just shoot an e-mail to email@example.com and we can create more report types for your specific needs.
Please check out also our Reports in Testdroid Cloud tutorial video.
22 Apr 2013
Google’s Test Automation Conference (GTAC2013) will be held in Google New York office on Apr 23-24. This is already 7th time when world class test automation experts gather together to exchange best practices and demonstrate their successes in large scale test automation. This year’s theme is Testing media and mobile with presentations from companies like Expedia, Netflix, Twitter, Facebook, Mozilla and naturally from Goole’s own test automation experts who will give some light on how to do test automation at Google scale. The full schedule of presentations can be found here.
From mobile test automation point of view presentations of special interest on Day 1 include Mozilla’s How Do You Test a Mobile OS, Expedia’s Mobile automation in Continuous Delivery Pipeline, Facebook’s How Facebook Tests Facebook on Android. On day 2 there are several interesting presentations from the hosts of this great event. First they will present Breaking the Matrix – Android Testing at Scale and then a presentation on Android UI Automation by the team behind the very promising UI Automator framework. Finally a presentation on Building Scalable Mobile Test Infrastructure for Google+ Mobile should give good pointers what needs to be considered when you are targeting extreme scale for your test infrastructure.
On true Google style all presentations will be streamed live and will also be available on YouTube for everyone to learn from the best test automation gurus in the planet. The videos to the presentations can be found here. There is also a Google+ page for GTAC 2013 where you can follow the live action.
As an important part of this ecosystem Bitbar is also invited and we will be demoing the latest on Testdroid. We will give a sneak preview of test recorder that creates Google UI Automator test scripts as well as showing our state of the art Testdroid App Crawler with advanced Activity Lens – an extremely easy way to visualize and compare the test execution results across devices.
- @bitbar: about 8 hours agoManage differences between Android devices. Continuous testing will help sustain high quality of your apps & keep up with the competition.
- @jkozak84: about 10 hours agoRT @bitbar: Testdroid Cloud is accessible online, so you are able to test your Android applications whenever you want! #androiddev