Skip to content

Instantly share code, notes, and snippets.

View mikeal's full-sized avatar
🏠
Working from home

Mikeal Rogers mikeal

🏠
Working from home
View GitHub Profile
try {
EventUtils.synthesizeKey(aKey, modifiers, win);
} catch(e) {
throw new Error("Synthesizing key event failed. \n"+e)
}
Havok:~ mikeal$ ping pythonesque.org [19:06]
PING pythonesque.org (72.37.235.38): 56 data bytes
64 bytes from 72.37.235.38: icmp_seq=0 ttl=58 time=35.920 ms
c64 bytes from 72.37.235.38: icmp_seq=1 ttl=58 time=33.621 ms
^C
--- pythonesque.org ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max/stddev = 33.621/34.770/35.920/1.150 ms
Havok:~ mikeal$ ping tutorial.getwindmill.com [19:07]
PING tutorial.getwindmill.com (66.96.131.12): 56 data bytes
def do(string):
print string
import wsgi_fileserver
wsgi_fileserver.logger.error = do
wsgi_fileserver.logger.debug = do
wsgi_fileserver.logger.info = do
# Web Testing with Windmill
This talk will discuss different web testing strategies, tools, and getting you up and writing windmill tests.
## Approaches
* Separating Concerns, Isolating Components
* Unittesting vs Functional Testing
* Full Monty (blurring the lines between unittesting and funcitonal testing)
# Web Testing with Windmill
You need to write some tests for your web application... really, you do!
But what kind of tests do you write? What approach do you take to testing with limited time and resources? What tools do you use?
There are many competing test tools and framework for automated web testing. In [Web Testing with Windmill](http://opensourcebridge.org/sessions/36) I'll briefly cover the different testing approaches and tools, where Windmill fits in, and why it stacks up to it's competitors as the best tool for writing, debugging and maintaining web application tests across all browsers on all operating systems.
Then I'll take you through the process of writing, running and debugging your Windmill tests and getting them running in the "cloud" (look at me I used a buzzword!).
/*!
* jQuery JavaScript Library v1.3.2
* http://jquery.com/
*
* Copyright (c) 2009 John Resig
* Dual licensed under the MIT and GPL licenses.
* http://docs.jquery.com/License
*
* Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009)
* Revision: 6246
setup_module(tests[0][1])
for wmt in wmtests:
sys.argv = [wmt,]
for k in (k for k in sys.modules.keys() if k.startswith('functest')):
del(sys.modules[k])
del(bin); del(runner)
import functest
from functest import bin
from functest import runner
bin.cli()
setup_module(tests[0][1])
for wmt in wmtests:
sys.argv = [wmt,]
for k in (k for k in sys.modules.keys() if k.startswith('functest')):
del(sys.modules[k])
del(bin); del(runner)
import functest
from functest import bin
from functest import runner
bin.cli()
import httplib2
h = httplib2.Http(".cache")
h.add_credentials('name', 'password')
h.request("http://joelmaher.couch.io",
"POST", body=simplejson.dumps(data),
headers={'content-type':'application/json'} )
class Cache(dict):
lambda get(*args, **kwargs): dict.__getitem__(*args, **kwargs)
lambda set(*args, **kwargs): dict.__setitem__(*args, **kwargs)
lambda del(*args, **kwargs): dict.__delitem__(*args, **kwargs)