Browsing projects by Tag(s)

Select a tag to browse associated projects and drill deeper into the tag cloud.

Showing page 119 of 127

Acceptance/regression testing framework based on full screen automation (via terminal emulation) with integrated unit testing engine (standard Ruby test/unit).

0
 
  0 reviews  |  0 users  |  6,947 lines of code  |  0 current contributors  |  Analyzed almost 2 years ago
 
 

IntroductionTesting a WSGI application normally involves starting a server at a local host and port, then pointing your test code to that address. Instead, this library lets you intercept calls to any specific host/port combination and redirect them into a WSGI application importable by your test ... [More] program. Thus, you can avoid spawning multiple processes or threads to test your Web app. How Does It Work?wsgi_intercept works by replacing httplib.HTTPConnection with a subclass, wsgi_intercept.WSGI_HTTPConnection. This class then redirects specific server/port combinations into a WSGI application by emulating a socket. If no intercept is registered for the host and port requested, those requests are passed on to the standard handler. The functions add_wsgi_intercept(host, port, app_create_fn, script_name='') and remove_wsgi_intercept(host,port) specify which URLs should be redirect into what applications. Note especially that app_create_fn is a function object returning a WSGI application; script_name becomes SCRIPT_NAME in the WSGI app's environment, if set. Installeasy_install wsgi_intercept(The easy_install command is bundled with the setuptools module) To use a development version of wsgi_intercept, run: easy_install http://wsgi-intercept.googlecode.com/svn/trunkPackages InterceptedUnfortunately each of the Web testing frameworks uses its own specific mechanism for making HTTP call-outs, so individual implementations are needed. Below are the packages supported and how to create an intercept. urllib2urllib2 is a standard Python module, and urllib2.urlopen is a pretty normal way to open URLs. The following code will install the WSGI intercept stuff as a default urllib2 handler: >>> from wsgi_intercept.urllib2_intercept import install_opener >>> install_opener() #doctest: +ELLIPSIS >>> import wsgi_intercept >>> from wsgi_intercept.test_wsgi_app import create_fn >>> wsgi_intercept.add_wsgi_intercept('some_host', 80, create_fn) >>> import urllib2 >>> urllib2.urlopen('http://some_host:80/').read() 'WSGI intercept successful!\n'The only tricky bit in there is that different handler classes need to be constructed for Python 2.3 and Python 2.4, because the httplib interface changed between those versions. httplib2httplib2 is a 3rd party extension of the built-in httplib. To intercept requests, it is similar to urllib2: >>> from wsgi_intercept.httplib2_intercept import install >>> install() >>> import wsgi_intercept >>> from wsgi_intercept.test_wsgi_app import create_fn >>> wsgi_intercept.add_wsgi_intercept('some_host', 80, create_fn) >>> import httplib2 >>> resp, content = httplib2.Http().request('http://some_host:80/', 'GET') >>> content 'WSGI intercept successful!\n'(Contributed by David "Whit" Morris.) webtestwebtest is an extension to unittest that has some nice functions for testing Web sites. To install the WSGI intercept handler, do >>> import wsgi_intercept.webtest_intercept >>> class WSGI_Test(wsgi_intercept.webtest_intercept.WebCase): ... HTTP_CONN = wsgi_intercept.WSGI_HTTPConnection ... HOST='localhost' ... PORT=80 ... ... def setUp(self): ... wsgi_intercept.add_wsgi_intercept(self.HOST, self.PORT, create_fn) ... >>>webunitwebunit is another unittest-like framework that contains nice functions for Web testing. (funkload uses webunit, too.) webunit needed to be patched to support different scheme handlers. The patched package is in webunit/wsgi_webunit/, and the only file that was changed was webunittest.py; the original is in webunittest-orig.py. To install the WSGI intercept handler, do >>> from httplib import HTTP >>> import wsgi_intercept.webunit_intercept >>> class WSGI_HTTP(HTTP): ... _connection_class = wsgi_intercept.WSGI_HTTPConnection ... >>> class WSGI_WebTestCase(wsgi_intercept.webunit_intercept.WebTestCase): ... scheme_handlers = dict(http=WSGI_HTTP) ... ... def setUp(self): ... wsgi_intercept.add_wsgi_intercept('127.0.0.1', 80, create_fn) ... >>>mechanizemechanize is John J. Lee's port of Perl's WWW::Mechanize to Python. It mimics a browser. (It's also what's behind twill.) mechanize is just as easy as mechanoid: >>> import wsgi_intercept.mechanize_intercept >>> from wsgi_intercept.test_wsgi_app import create_fn >>> wsgi_intercept.add_wsgi_intercept('some_host', 80, create_fn) >>> b = wsgi_intercept.mechanize_intercept.Browser() >>> response = b.open('http://some_host:80') >>> response.read() 'WSGI intercept successful!\n'mechanoidmechanoid is a fork of mechanize. >>> import wsgi_intercept.mechanoid_intercept >>> from wsgi_intercept.test_wsgi_app import create_fn >>> wsgi_intercept.add_wsgi_intercept('some_host', 80, create_fn) >>> b = wsgi_intercept.mechanoid_intercept.Browser() >>> response = b.open('http://some_host:80') >>> response.read() 'WSGI intercept successful!\n'zope.testbrowserzope.testbrowser is a prettified interface to mechanize that is used primarily for testing Zope applications. zope.testbrowser is also pretty easy >>> import wsgi_intercept.zope_testbrowser >>> from wsgi_intercept.test_wsgi_app import create_fn >>> wsgi_intercept.add_wsgi_intercept('some_host', 80, create_fn) >>> b = wsgi_intercept.zope_testbrowser.WSGI_Browser('http://some_host:80/') >>> b.contents 'WSGI intercept successful!\n'HistoryPursuant to Ian Bicking's "best Web testing framework" post, Titus Brown put together an in-process HTTP-to-WSGI interception mechanism for his own Web testing system, twill. Because the mechanism is pretty generic -- it works at the httplib level -- Titus decided to try adding it into all of the other Python Web testing frameworks. This is the result. Mocking your HTTP ServerMarc Hedlund has gone one further, and written a full-blown mock HTTP server for wsgi_intercept. Combined with wsgi_intercept itself, this lets you entirely replace client calls to a server with a mock setup that hits neither the network nor server code. You can see his work in the file mock_http.py. Run mock_http.py to see a test. Project HomeIf you aren't already there, this project lives on Google Code. Please submit all bugs, patches, failing tests, et cetera using the Issue Tracker [Less]

0
 
  0 reviews  |  0 users  |  2,351 lines of code  |  0 current contributors  |  Analyzed 7 days ago
 
 

A generic java based distributed performance testing platform specifically for testing clustered or distributed applications and or frameworks. The framework itself is clustered and coordinated with www.terracotta.org

0
 
  0 reviews  |  0 users  |  1,914 lines of code  |  0 current contributors  |  Analyzed 6 days ago
 
 

WebSpec is a web-based acceptance testing tool for web applications. It has two primary goals: 1) To ease the process of defining and running Selenium tests. The goal is to have a web application for creating, storing, sharing, running and analyzing Selenium tests. Emphasis will be on usability ... [More] and collaboration. Think "Fitnesse for Selenium". 2) To enable automated runs for those tests, which can then be triggered by continuous integration servers. This will be done by running the Selenium tests server-side in a virtual X Window framebuffer. Test runs can also be captured on video and played through the web interface. [Less]

0
 
  0 reviews  |  0 users  |  114,234 lines of code  |  0 current contributors  |  Analyzed 7 days ago
 
 

Back in the day before Qt became available under the LGPL, Power C++ was supposed to be a cross-platform C++ library with functionality similar to the Java API, Boost, and Qt. Now it is just a hobbyist project.

0
 
  0 reviews  |  0 users  |  0 current contributors
 
 

IdMUnit is an xUnit automated testing framework for Identity Management solutions.

0
 
  0 reviews  |  0 users  |  -17,419 lines of code  |  1 current contributor  |  Analyzed 9 days ago
 
 

watir-gen - Code generator for WATIRwatir-gen is a rails like code generator for WATIR projects. watir-gen helps in building a project structure quickly and base framework. It does the grunt work of building the basic things for you and lets you concentrate on more important this like test case ... [More] construction and test data management. You can download the newest stable release or get the latest updates from SVN. (See WhatsNew) Features: Simple to use Code generators for basic things Project structure Base test case and test data strctures Inbuilt hybrid driven framework [Less]

0
 
  0 reviews  |  0 users  |  0 current contributors
 
 

NDemo is a .NET framework for creating automated demos in a TDD-style approach. These demos can then be used to create interactive or automated user acceptance tests and generate various forms of documentation with screenshots.

0
 
  0 reviews  |  0 users  |  14,362 lines of code  |  0 current contributors  |  Analyzed 1 day ago
 
 

Easy tools suite & framework for fast development Enterprise Application. Quick start sample for using popular open-source projects. Strong Chinese support. ClearWork

0
 
  0 reviews  |  0 users  |  13,063 lines of code  |  0 current contributors  |  Analyzed about 18 hours ago
 
 

RESTUnit will be a set of Java classes that can be used to test REST services. The data structure classes shall be serializable to and from a simple format, making the simplest way to create tests a matter of creating text files. Main features: Simple, human-readable/editable format for tests ... [More] Ability to easily derive tests from other tests, such as to run conditional get tests, head tests and SSL tests Programmatic interface to testing process Results in JUnit format as option Ability to easily run specific tests or groups of tests Ability to run tests as TestNG and/or JUnit tests [Less]

0
 
  0 reviews  |  0 users  |  2,889 lines of code  |  0 current contributors  |  Analyzed 1 day ago
 
 
 
 

Creative Commons License Copyright © 2013 Black Duck Software, Inc. and its contributors, Some Rights Reserved. Unless otherwise marked, this work is licensed under a Creative Commons Attribution 3.0 Unported License . Ohloh ® and the Ohloh logo are trademarks of Black Duck Software, Inc. in the United States and/or other jurisdictions. All other trademarks are the property of their respective holders.