Tuesday, 21 May 2013

LEAP MOTION Technology

              

LEAP MOTION

         While searching for technologies, I come across with Leap Motion technology which impress a lot and useful too.

Leap Motion is a company developing advanced motion sensing technology for human–computer interaction. Originally inspired by frustration surrounding 3D modeling using a mouse and keyboard, Leap Motion makes as easy to interact with the machines and has partnered with ASUS.

Leap Motion provides the world’s most powerful and sensitive touch-free 3-D motion-control and motion-sensing technology. Leap Motion’s proprietary technology, invented by co-founder David Holz, can track the movement of both hands and all 10 fingers with up to 1/100th millimeter accuracy and no visible latency. The Leap Motion Controller is a small USB device. The Leap Motion technology can easily embed into other consumer and enterprise hardware. Leap Motion allows anyone to use natural movements to interact with their computer, browse the web or use motion-control applications found in Airspace. For more information, visit www.leapmotion.com.

How it works:

The Leap Motion controller is a small USB peripheral device which is designed to be placed on a physical desktop, facing upward. Using two cameras and three infrared LEDs, the device observes a roughly hemispherical area, to a distance of about 1 meter (3 feet). It is designed to track fingers (or similar items such as a pen) which cross into the observed area, to a spatial precision of about 0.01 mm. An advertisement video provides a visual demonstration.
The smaller observation area and higher resolution of the device differentiates the product from the Kinect, which is more suitable for whole-body tracking in a space the size of a living room In a demonstration to CNET, The Leap was shown to perform tasks such as navigating a website, using pinch-to-zoom gestures on maps, high-precision drawing, and manipulating complex 3D data visualizations. Leap Motion CEO Michael Buckwald told CNET:

"We want there to be world-changing applications that fundamentally transform how people interact with their operating system or browse the Web.... The goal is to fundamentally transform how people interact with computers and to do so in the same way that the mouse did, which means that the transformation affects everyone, both from the most basic use case all the way up to the most advanced use cases you can imagine for computing technology."

Leap Motion has distributed thousands of units for free to developers who are interested in creating applications for the device. The current version available for pre-order requires a USB connection (≤ 5 feet USB cables). LeapMotion is planning for a wireless version in the future.

You can watch videos:




Sources:
Read more: http://www.crunchbase.com/company/leap-motion#ixzz2Tv6quSlK
Wiki:          http://en.wikipedia.org/wiki/Leap_Motion
Website:     www.leapmotion.com.

Saturday, 13 April 2013

HOW NFC WORKS

 HOW NFC WORKS


           NFC has a short operating range of typically a few centimeters, and works in combination with radio frequency identification (RFID) technology and contactless smart card infrastructure.

Using NFC, your phone can read small amounts of data from RFID service shortcut tags, as well as communicate with other devices. Therefore, when you touch your phone to a RFID tag, the service shortcut contained inside the tag is launched.

RFID tags can be stored in your purse or pocket, or can even be embedded inside posters. You can also create your own personalized service shortcuts by putting data onto an empty RFID tag using your NFC phone. NFC also enables you to share your personalized service shortcuts with other NFC enabled devices.

What’s more, you can make transactions just by touching your phone to a NFC credit card reader or ticket gate. Your payment information, such as credit cards, loyalty cards, or your travel ticket are securely stored in the integrated smart card chip inside your phone.


Source: http://www.mobilenfc.eu/technology.html

Wednesday, 6 March 2013

Ubuntu is coming to smartphones, but will anyone use it? - Jan. 2, 2013

Ubuntu is coming to smartphones, but will anyone use it? - Jan. 2, 2013

Ubuntu's new mobile software will let users run their PC from their phone.
NEW YORK (CNNMoney)

Ubuntu has long been a favorite Linux desktop operating system for open-source fanatics and those who like to tinker with their technology. Now it's stepping out into a new frontier: mobile.

Ubuntu developer Canonical unveiled a new interface on Monday reimagined for touch devices, with a design that borrows cues from Android and Windows 8. The hard sell here isn't simply that Ubuntu now works on mobile devices. Canonical hopes that future devices (read: arriving sometime in 2014) will not only run the new mobile OS, but will also boot the desktop variant of Ubuntu when docked to a keyboard, mouse and monitor.
That would let you literally use your phone to power your PC.
This concept isn't entirely new, as Canonical revealed similar plans last year to attach its desktop software to devices running Android. Before that, Motorola tried to turn Android phones into laptops with its Atrix line of phones and docks. And let's not forget the hybrid operating system experiment that is Windows 8.
But no one -- not even Microsoft (MSFT, Fortune 500) -- has attempted to serve up its own phone OS and desktop OS in a single package. Despite its desktop-like features, Android considers itself a phone and tablet system, while Microsoft still has Windows Phone 8 operating autonomously from the tablet and desktop-centric Windows 8.
Is Ubuntu's new creation good enough to make even the tiniest inroads against the likes of Android, Apple's iOS and Windows Phone?
Video footage previewing the new software shows off an attractive user interface and some clever ideas for navigation, but there's no indication that the wheel has been reinvented.
You'll be able to swipe from the edges of the phone to switch apps and access menus. You can log in to your favorite online services, and Ubuntu will assimilate that data into its own framework. In general, the emphasis seems to be on getting you the info you need in a quick and easy-to-digest way. From the looks of things, the desktop build will have its own interface tailored to mouse and keyboard, but Canonical envisions a single installer app having both desktop and mobile builds.
This would all be great if the only challenge for a mobile operating system was offering up a solid product. It's not. Carving out a niche in the seemingly unshakable mobile space -- ruled by the Android-and-Apple duopoly -- still requires a critical mass of users and a lively ecosystem of app developers.
Realistically speaking, the chances of this even upstaging Windows Phone or BlackBerry 10 are slim. At best, Ubuntu seems like a sandbox for the most enthusiastic early adopters and a cheap enterprise solution for companies on a tight budget.
Still, pushing aside the concerns about market viability, this could be a very real glimpse of how we compute in the future. The central brain for all our computing needs might eventually live in our smartphones, and we'd simply attach them to whatever form factor the situation calls for.
That differs from some current experiments, like Microsoft's vision for the Surface tablet: a single piece of hardware that can be used in multiple ways. It seems just as valid a solution, though, for the inevitable convergence of mobile and desktop computers.

Friday, 22 February 2013

App without any coding Knowledge

Your Smartphone app without any coding Knowledge

It would be great if we all had the time, skills, and patience to learn computer coding, especially since technology pervades so many areas of our life. But thankfully, there are applications and web developers out there who provide ways for the rest of us to produce apps with little or no coding skills.
Back in June, I reviewed one such web application called Buzztouch, which is designed to allow anyone to create their own smartphone application. Now a similar program has just been released called Infinite Monkeys, a web-based tool geared toward niche communities who want to share content on the iPhone and Android platforms. Infinite Monkeys is not as polished theme wise as Buzztouch, but unlike the latter, Infinite Monkeys, says the developers, “Is completely web-based, and works on any computer or tablet device. You never touch the source code and don’t have to know what it is or how it works.” There are several other differences that also might make Infinite Monkey more accessible to non-programmers than Buzztouch. But you’re free to explore both and see which fits your needs.

Web-based GUI

Infinite Monkeys’ web-based graphic user interface allows users to incorporate existing web content from social networking sites like Twitter, Flickr, YouTube, and blogging sites.
how do you create an app
These web-based apps of course don’t compare to more advanced apps like Angry Birds, but they are great for small niche communities and businesses, such as school associations, sports teams, churches, musicians and restaurants, who want to share content privately or publicly.


Infinite Monkeys provides three different app platform models, ranging from free to the pro level version of $499. But for many users, the free HTML 5 web-based, and ad-supported model should suffice.
how to create an app

Building An App

Infinite Monkey provides a seriously easy step-by-step process for creating a smartphone app in less than an hour; that is if you have an ample amount of content already posted on the web.
how to create an app
The great thing about using a web-based platform is that you can constantly add content and updates to your app via your blog site, YouTube channel, photo sharing site, etc.
The Infinite Monkey web application uses a familiar drag-and-drop process. You start off by giving your app a title, followed by choosing a privacy setting. You can make the app public, or private for closed community access which will prompt users to enter a password to view content.
how to create an app
You can of course customize the background image and splash screen, as well as the font colors for the title and other text.

Core Content

The core content of your app consists of primarily news and third-party feeds such as your blog site(s) and specific URLs.
create an app
Infinite Monkeys includes additional content models for music and books, food and beverages, events, sports, reference materials, and location services such as a map and directions.
With the click of a button you can easily preview your app at any point in the development process. The online app also includes an embedded short video tutorial for each of the three part steps and multifunction tools.
You have poor control over the content of your app, including links to streaming videos, live chatrooms, shared calendars for upcoming events, shopping links to recommended products, and tap–t0–call phone contact information.

Publishing App

The free version of Infinite Monkeys allows you to instantly post your HTML 5 version immediately to the web so that anyone with a web-enabled smartphone can access it through the assigned URL.
how do you create an app
Since your app is ad-supported, Infinite Monkeys will host it for free on their server. While it is not nearly as polished as professional apps that you will find in say the iTunes App Store, it does provide a way for anyone to get their content into this space.

Please let your thoughts share about the it.

source: http://www.makeuseof.com/tag/create-smartphone-app-infinite-monkeys-coding-knowledge-required/

Automation UI Test for Iphone

Automation UI Test for Iphone


Hi guys, Today we will see the UI automation testing for Iphone applications. It is necessory to create automation test scripts to test UI of any application to make effective and efficient Iphone applications.
For this person should have a knowledge about the Java script and script writting as well as basic knowledge of Iphone sdk 4 and Instruments. But no problem If you are not.
Now we will see the step by step process:

One of the more useful (from a developer standpoint) features coming in iOS 4 (formerly iPhone OS 4) is the UIAutomation tool. This lets you run an automated set of tests against an application, and test to see if they had the expected results. Unfortunately, at the time of this writing, there is minimal documentation for the tool, so here's a quick walkthrough of how to use it.

To start, you need the iOS 4 SDK, which is available as of today from developer.apple.com. Next, you need to make sure that you have your application set up to be easily run by the UIAutomation suite. The main thing is to tag all your UI controls in Interface Builder with names, by setting the Accessability label to a unique value for the view.

Attached Image


Once these are all set and you've rebuilt your application for debug, you need to write a Javascript file that runs your application and tests to make sure that everything is running as expected. Here's a sample file, followed by some commentary.


[color=#1C2837][font=arial, verdana, tahoma, sans-serif][size=2][color=#000000]UIALogger.logStart("Starting Test");
var view = UIATarget.localTarget().frontMostApp().mainWindow().elements()[2];
var textfields = view.textFields();
if (textfields.length != 2) {
    UIALogger.logFail("Wrong number of text fields");
} else {
    UIALogger.logPass("Right number of text fields");
}
var passwordfields = view.secureTextFields();
if (passwordfields.length != 1) {
    UIALogger.logFail("Wrong number of password fields");
} else {
    UIALogger.logPass("Right number of password fields");
}
textfields["username"].setValue("tturner");
passwordfields[0].setValue("tod");
view.buttons()["logon"].tap();
var errorVal = view.staticTexts()["error"].value();
if (errorVal != "Invalid User Name or Password") {
    UIALogger.logFail("Did Not Get Invalid Username Error: " + errorVal);
} else {
    UIALogger.logPass("Username Error Detected");
}[/color][/size][/font][/color]


The first line of the test simply sends an informational message to the log. The next line uses UIATarget.localTarget().frontMostApp() to get the currently running application of the test target (which is whatever we've configured Instruments, the test runner, to run our tests on.) We then use mainWindow to get the main UIWindow, and then Elements to find all the children of the window. The third child of the main window in this application is a scroll view, so we use the [2] array reference to get it. We then get all the text fields (which don't include password fields), and make sure there are 2 of them. We also check that there is 1 password field. Next, we set the username and password field, and tap the submit button. Then we check to see that the error label has been set to the correct error message.

You should note that this last bit doesn't currently work. The text label string of a UILabel shows up as the StaticText field's name, not it's value, which is always nil. If you set the Accessibility label, it becomes the name property, and there is no longer any way to discover the current text in a UILabel. I have a bug report open with Apple about this.

FOLOWUP: This bug still exists, but I was able to work around it by using a UITextField or UITextView with the border and user interaction turned off in place of a UILabel that I wanted to change. The .value accessor works correctly on text fields and views.

You can find all the available Javascript objects by searching for "UI Automation Reference Collection" in the iPhone documentation online.

Once you've written your Javascript, it's time to run it and see if it works. Fire up Instruments (you can find it in Spotlight), and create an iPhone Simulator Automation trace:

Attached Image


Once you're in the Trace window, use the Choose Target pulldown to navigate to the debugging version of you App:

Attached Image


Use the Scripts pulldown to choose the Javascript test file you created, then click the record button. This will start up the iPhone simulator, wait about 5 seconds for your application to start, and then start going through the tests you wrote. Note that when the trace gets to the end of the Javascript file, it doesn't stop recording, you have to do it manually. You'll see the results in the Script Log:

Attached Image


You can also throw another instrument, such as the memory leak instrument, in with your UIAutomation run, and automatically find any memory leaks that occur while the application is being exercised.

One final tip. If you make a call to logElementTree() on any element, it will dump a full tree view of the current element and all its children to the log, which can be very useful when you're trying to figure out how to navigate the element tree.

Please free to share your thoughts on the same.

source: http://answers.oreilly.com/topic/1646-how-to-use-uiautomation-to-create-iphone-ui-tests/

Friday, 4 January 2013

Banking Application Testing

Banking Application Testing


Banking applications are often considered as one of the most complex and large software systems in today’s development and testing practice. The question is “why?”. And what method should be accepted in order to provide their quality and successful testing. This post is going to tell you about the stages and methods of testing Banking applications.
As we were talking earlier, Banking apps are very complex ones, so they have a lot of different characteristics. The main ones we are going to observe here:
  • Multi level functionality that allows to support thousands or even millions of users
  • Large scale integration: usually banking applications are integrated with a number of other apps
  • A complexity of business workflows
  • Real time processing
  • High density of transactions
  • High level of transactions security
  • Strong reporting section to keep information about transactions saved
  • Strong auditing system for preventing customer problems
  • Massive data storage system
  • Disaster management
Talking about banking application testing we should consider that it takes a lot of time because it needs an end to end testing method that involves different software testing techniques. The common stages of the banking application testing are described below.
1. Requirement Gathering
This stage involves documentation of all requirements such as Functional Specifications and User Cases. These requirements are gathered as per customer necessary things. All of them are documented by Banking Experts and Business Analysts.
2. Requirement Review
The results of the previous stage are reviewed by all the members of the testing process: QA Engineers, Business Analysts and Development leads. Their purpose is to check that both existing and new workflows are not violated.
3. Preparing Of Business Scenarios
When all the requirements are documented and checked, QA Engineers use them to derive Business Scenarios. This has to be done in order to cover all the Business Requirements. These scenarios don’t include any detailed steps being high-level scenarios. Then they are reviewed by Business Analyst who checks if all the requirements are satisfied. It has to be noticed that it’s easier for Business Analyst to review high-level scenarios than low-level Testing Cases.
4. Functional Testing
The first thing to do is to derive Test Cases from Business Scenarios. One Business Scenario usually includes several positive and negative Test Cases. These cases are reviewed by QA Engineers and then all the cases are executed. The execution can be either manual or automated that involves such tools as QC, QTP and others.
5. Database Testing
One of the most important stages in Banking application testing is database testing. As database is a complicated and separated layer of the system, its testing should be done very carefully. The main aspects to be ensured in database testing are:
  • Data loading
  • Testing of data types and DB Schema
  • Rules testing
  • Database migration
  • Testing triggers
  • Testing storing and functions
  • Data integrity
6. Security Testing
This type of testing is usually the last step in Banking application testing. This is one of the most important stages in the application testing cycle as it ensures that application is secure about data loss and different kinds of attacks.
The whole application scan by security issues could be done using such tools as IBM Appscan and HP WebInspect. You can also use such manual tools as Http Watch, Paros Proxy and others.

Sunday, 23 December 2012

API Testing - Part 2

API Testing - Part 2

      Hi to all,  In last post we had a introduction, best practices and challenges of API testing. In todays post we also want to focus on other aspects of API testing.

Test cases for API Testing:
Test case of API testing are based on the output.
API Test Development.
API test case specification.

1. Create / Select the Suite in which you want to add the API test case(s).
2. Choose Test Development Mode ( Isolation or Sequence ).
3. Develop Test case(s) for the desired API methods.
4. Configure Application Control Parameters.
5. Configure Test Conditions.
6. Configure Method Validation.
7. Execute API test.
8. View Test Reports.
9. Filter API test cases.
10. Sequence API test cases.

While API tests should strive for a high level of code coverage (structural testing) a more important goal is test coverage. For example API tests of this same method might include a series of data-driven tests that:
  • test every known alpha-numeric character defined.
  • test character casing
  • test pan grams, and special signals (e.g. end of message, attention, received, etc)
  • test boundary conditions.
  • test strings with invalid or characters that are not defined.
  • test strings with non-ASCII letters.
  • test performance to provide baseline measures of individual methods
More complex APIs such as this MessageBox.Show method that have several parameters with variable argument values might benefit from additional testing techniques such as combinatorial testing.

 You can also test the API's through some automation tolls and observe the input and expected output.

1. Xocean tool.
2. Soup UI
3. Jmeter.