All Posts By

Noel Rice

Noel Rice

Noel has over 25 years of experience in the software industry and has authored magazine articles, blogs, and over ten books on diverse subjects ranging over ASP.NET AJAX, Android and Windows Phone development, JavaScript, jQuery libraries, CMS, Reporting, and automated testing.

Articles

Big ear man listening

Understanding Natural Language

By | Cloud Platform, Google | No Comments

This is post 8 of 17 in the series “Google Cloud for the .NET Developer” Isaac Asimov speculated that you could plug a politician’s speech into a mathematical model, zero out the equation, and prove that the politician had said nothing. We know this intuitively, but I never thought you could actually do it. The Natural Language API from the Google Cloud Platform comes close by measuring sentiment found in text. The Natural Language API sentiment score ranges from –1.0 (negative emotion) to 1.0 (positive emotion). Ever watch HGTV? This may sound familiar: “The kitchen is so cramped. I really…

Read More

Building Mobile UI Tests using REPL

By | Android, Testing, UITest, Xamarin | No Comments

This is post 4 of 4 in the series “Xamarin Test Cloud” Building Mobile UI Tests using REPL REPL builds a list of methods to automate a mobile app for use in a UI test. The typical workflow starts with the tree command to list elements in the current view. Next, app methods wait for elements, enter text, tap buttons and so on. Then the copy command saves your REPL activity to the clipboard. Finally, you paste REPL commands into your test method. Once you paste the REPL output, you can clean it up and add assertions.

The screenshot shows the Android emulator on the left, and…

Read More
Xamarin UITest Word Cloud

Mobile Testing in the Xamarin Test Cloud

By | Android, Android, C#, iOS, Testing, UITest, Visual Studio, Xamarin, Xamarin Test Cloud | No Comments

Mobile UI testing requires the same power as web UI testing. Certainly we need the basics: identify on-screen elements, automate, and make assertions. But that’s not going to be enough for teams building mobile apps under rapidly changing conditions; not with hundreds of new, evolving technology combinations. So what are the new rules? Here’s what we need, right-out-of-the-box…

Read More
Ghost

Ghost Inspector

By | Ghost Inspector, Testing, Web | No Comments

Ghost Inspector for Web UI Testing Sometimes you need a knife, not a Swiss-army knife. Too many bells and whistles can actually get in the way. For example, our web portal testing requires a recorder to handle straight-forward scenarios: clicking, entering text, and checking state. We also need a way to augment recordings for more complex scenarios. Most web testing tools can get you this far. But we also need tests to run in the cloud, right out of the box. We want test results sent via email or Slack without jumping through hoops (and certainly without writing custom interfaces). And finally, we want test…

Read More
HoloLens image

Using HoloLens Toolkit to Deploy Your App

By | HoloLens, Unity | No Comments

This is post 3 of 3 in the series “Rummaging Through the HoloLens Toolkit” Using HoloLens Toolkit to Deploy Your App The Build Window for HoloLens Toolkit brings together scattered tools and processes. Now you can build, create an “APPX” package and deploy directly to a HoloLens device. This approach makes it easier to see all the steps in the process, all in one place. The SLN builds a new Visual Studio solution. The APPX group creates a package with the *.appx file, dependencies and manifest. The Deploy options let you target a device and install the package. The install through USB cable…

Read More
HoloLens image

Using HoloLens Toolkit to Configure Your App

By | HoloLens, Unity, Visual Studio | No Comments

This is post 2 of 3 in the series “Rummaging Through the HoloLens Toolkit” Using HoloLens Toolkit to Configure Your App HoloLens Toolkit makes short work of configuring a Unity application for deployment. No need to pick your way down the checklist. This video walks you through the toolkit menu options. To make your project HoloLens-ready, run the Apply HoloLens… Scene Settings positions the camera, makes the background transparent, and sets field-of-view properties to match the HoloLens environment. Project Settings creates a Visual Studio solution and changes the project build options to target a Universal Windows app that HoloLens can run….

Read More
HoloLens image

Get Started with HoloLens Toolkit in Unity

By | HoloLens, Unity | No Comments

This is post 1 of 3 in the series “Rummaging Through the HoloLens Toolkit” Get Started with HoLolens Toolkit in Unity There’s a lot to explore in the HoloLens Toolkit for Unity. In this video, we first download the toolkit and load it into Unity. Then we export the toolkit as a package, and finally, import the toolkit package to another project. Along the way, the video demonstrates how to resolve this error: “unsafe code requires the ‘unsafe’ command line option” If you don’t have Unity, download it here. The Unity download is a custom build that targets HoloLens. Get the latest HoloLens toolkit…

Read More

TestComplete TypeScript?

By | News, SmartBear, TestComplete, Testing, TypeScript | One Comment

TestComplete TypeScript? TypeScript lets you write JavaScript that is easier to extend, maintain and is more readable. For example, I’ve always had issues with web browser scripting because there are several TestComplete script objects to simply open, navigate, and close a browser. So, would you rather work with TestComplete script running wild like this example?

…or express your scripting ideas this way:

I vote for example #2. Both examples have the same functionality, but the second example is easier to follow and is much more compact. Note: For an introduction to TypeScript and examples, check out this blog…

Read More

Building Test Environments with Azure DevTest Labs

By | Azure, DevTest Labs | One Comment

This is post 31 of 31 in the series “A Cloudy 29 Days of Microsoft Azure” Building Test Environments with Azure DevTest Labs DevTest labs isn’t just for scaling compute resources, but for scaling the process of provisioning those resources with consistent and immediately usable environments. If you’re new on a dev or QA team, you don’t want to email IT for correctly versioned installs, then wander from cubicle to cubicle (like Diogenes with his lantern, looking for the last honest man), pleading for configuration details or the latest bits. You want to sit down and prove your worth. As…

Read More

Scheduling WebJobs, Batch, and Worker Roles?

By | Azure, Azure Scheduler | 4 Comments

This is post 30 of 31 in the series “A Cloudy 29 Days of Microsoft Azure” Scheduling WebJobs, Batch, and Worker Roles? All three choices perform background processing and can be scheduled, but the scalability, features and built-in infrastructure vary. Before scheduling one of these background processing mechanisms, let’s compare the options. Worker Roles Worker Roles were the first out of the gate from Microsoft, but require a certain amount of DIY plumbing — reading a message queue, checking for undeliverable “poison” messages, removing processed messages and so on. Need to work with Azure blob storage? Write some more code…

Read More

Running Resource Intensive Jobs Using Azure Batch

By | .NET, Azure, Batch Processing, Microsoft, Visual Studio | No Comments

This is post 29 of 31 in the series “A Cloudy 29 Days of Microsoft Azure” Running Resource Intensive Jobs Using Azure Batch Azure Batch Services provide a framework for resource or computationally expensive jobs. When I say “computationally expensive”, think 3D rendering for Pixar, engineering stress analysis, or calculations for fluid dynamics. The DIY approach starts with “I’ll add a ‘for’ loop and kick off some background executables”. But once you start to scale in any direction, then you’re off to the races building infrastructure to handle generic plumbing needs like… Install apps and dependencies. Dispatch, queue and start…

Read More

Cross Device Testing

By | Android, iOS, Mobile, SmartBear, TestComplete, Testing | One Comment

This is post 31 of 31 in the series “31 Days of Mobile Testing with TestComplete” Cross Device Testing For apps running on multiple devices and operating systems, you can avoid maintenance and extensibility headaches by planning up-front. I usually start by researching the expected work-flow. What are the objects? Are there methods and properties I need for automation? How different is the usability from one version of the app to another? Just a few simple actions can have a surprising number facets to consider. There’s no limit to how complicated things can get, on account of one thing always leading to another….

Read More

Testing Sensors on Mobile Devices with Test Complete

By | Android, iOS, Mobile, SmartBear, TestComplete, Testing | 2 Comments

This is post 30 of 31 in the series “31 Days of Mobile Testing with TestComplete” Sensors Sensors measure device position, movement and environment. TestComplete lets you enumerate and read each sensor. Both iOS and Android Device objects have an indexed Sensor property and a SensorsCount so you can iterate through the list. For example, to log every sensor name on a device:

  The log for my Samsung Galaxy shows the available sensors: To get the same for every connected device, iterate the Mobile object’s children using the ChildCount property and Child(index) method. The Child() method returns an…

Read More

Automated Testing on iOS Controls with Test Complete

By | iOS, Mobile, SmartBear, TestComplete, Testing | 2 Comments

This is post 29 of 31 in the series “31 Days of Mobile Testing with TestComplete” iOS Controls To find out what iOS controls TestComplete supports, go to project properties and look under Object Mapping. There you’ll find the complete list of control categories that TestComplete supports in your environment right now: Each category may support one or more controls. For example, the Table view category shows support for iOS UITableView, UITableViewCell and any derived classes. Researching the Control We can use picker controls as an example. With a picker, you can select from a revolving list of values. The…

Read More