Fake: Web Browser Automation & Testing for Mac

Have you ever thought that there just has to be an easier way for interacting with the web? How about not having to type the same information into forms repeatedly, or just logging into a website with one single click instead of half a dozen?

With Fake, an app by the developer of the widely popular Fluid, you can finally automate your web-based workflow to save you lots of time and unnecessary clicks. Intrigued? Then read on after the jump.

Why Is It Fake? And What Is It?

Fake can best be described as Automator for the web. Automator is an application that comes preinstalled on your Mac and allows you to automate all kinds of workflows, but it has a learning curve that intimidates many users.

Fake, on the other hand, is aimed at internet power users and web developers, who are faced with repeated tasks over and over, but without the need to have a deep understanding of scripting. Fake is mostly drag and drop, and therefore allows you to set up actions quickly and easily.

The Fake Window

It “fakes” interactions with websites, following the steps you have previously defined. It looks like a mix of Safari and Automator, but it is an app of its own. You cannot run Fake actions from within Safari itself, you are always within Fake.app.

Taking a Closer Look at the Interface

So, what goes where in Fake? The big window to the left loads the website, while the floating pane to the very right holds all the actions which are available to you. When you select an action, you simply drag and drop it into the workflow pane between the actions panel and the website window.

Dragging an Action

Once you’ve dragged your actions into the workflow pane, you can define the parameters for each step – e.g. setting the URL of a website or the content to fill in a form.

In the following example, I’m calling up the Mobile Me website and having Fake fill in my credentials to log me in. After having set up the workflow, it now just involves one single click for the entire process!

If I was to do that manually, it would mean opening Safari, clicking the address bar, entering the URL, entering my user and password and then clicking the submit button.

Filling Out a Form

This is just a very simple example to showcase how many clicks – and thereby how much time – you can save by automating workflows that you use very often.

Another very helpful feature of Fake is the ability to take screenshots of any website, without you having to go there at all. Simply define the website – and even subpages – that you want to have screenshots of and Fake does the rest.

Grabbing a Screenshot

Connecting & Delays – The Neat Stuff

So, in case you haven’t wondered before: how does Fake know which forms to fill in with what? And how does it know which buttons to press to execute an action? Moreover – how in the world do you ask Fake to hold off on taking a screenshot until a site is fully loaded? It’s so amazingly simple, you won’t believe it.

In order to let Fake know where the form is that needs filling, you simply connect the form with the action. By CTRL-clicking the action and then dragging to the form, you establish the link.

Connecting

Fake determines on its own which values are present in a form and you can enter your credentials for the log in form. You can also establish a connection to a HTML element like the “sign in” button (and then ask Fake to perform an action on it). Fake will click that button after it has filled in the form, thereby logging you in.

By default, all actions are executed with a .5 seconds delay. It will make it easier for you to follow what’s going on. But what if you need a longer delay, for example before taking a screenshot? If your internet connection is as slow as mine, it might take a couple of seconds before the page is fully loaded and all the content is visible.

You can change the default delay, but that will apply to all actions and unecessarily prolong the execution of your workflow. The better solution is to use the dedicated “Delay” action and give it a value of your choice.

Setting a Delay

There are many many more available actions which can help you with your work, but I can’t go into each and every one of them here. The Actions Library is the best place to flick through these and gain an understanding of what each does.

The Huge Actions Library

For Developers

For web designers and developers, Fake offers a simple, automated way to build test scripts for your websites and web apps. These can be standardised, re-run at any time with one click, and automatically export screenshots to show the results of various actions.

This really can be a huge time-saver, and it makes repetitive testing a one-click process, rather than a nightmare you’d rather avoid.

Conclusion

Fake is a tool which will appeal foremost to power users and web developers. For average users, it will usually remain easier to just click your way through a website. It really only makes sense with repeated tasks.

While it is fairly simple to set up workflows, the advanced actions require some level of understanding of scripting and programming languages. The documentation of Fake provides an explanation for nearly all options available, but I would have appreciated some example workflows included which help to better understand the app and its full power.

Summary

Fake is a new browser for Mac OS X that makes web automation simple. Fake allows you to drag discrete browser Actions into a graphical Workflow that can be run again and again without human interaction. The Fake Workflows you create can be saved, reopened, and shared.

Fake
Reviewed by Julia Altermann on
Nov 8.
Fake is a new browser for Mac OS X that makes web automation simple. Fake allows you to drag discrete browser Actions into a graphical Workflow that can be run again and again without human interaction. The Fake Workflows you create can be saved, reopened, and shared.
Rating:
7 out of
10

Kudos to the developers of fake for creating a very useable in-browser automator. I can see it being very handy for a number of different work flows, but I am not totally sure how useful it would be for testing.

A lot of testing in web development is geared towards a small set of known cases, and usually if those cases pass, then all others will pass. In other words, you won’t need to automate hundreds of browser tests to locate bugs.

That being said, if you have a rather large website with a lot of different screens, it could be nice to send fake along capturing screenshots of all the screens, just to see if there is anything bizarre happening at a glance.

This is a very useful application that comes in handy quiet often. Just image all the time you save by automate processes like login, screenshots and so on. And all this time is useless otherwise, because nobody pays you for taking a screenshot. So don’t waste all this time – when you can use Fake instead. Thanks for the great job.