Zombando de métodos em qualquer instância de uma classe python

Quero zombar de métodos em qualquer instância de alguma classe no código de produção para facilitar o teste. Existe alguma biblioteca em Python que possa facilitar isso?

Basicamente, quero fazer o seguinte, mas em Python (o código a seguir é Ruby, usando a biblioteca Mocha):

  def test_stubbing_an_instance_method_on_all_instances_of_a_class
    Product.any_instance.stubs(:name).returns('stubbed_name')
    assert_equal 'stubbed_name', SomeClassThatUsesProduct.get_new_product_name
  end

O importante a ser observado acima é que eu preciso zombar no nível de classe, pois na verdade eu preciso zombar de métodos em uma instância criada pela coisa que estou testando.

Caso de uso:

Eu tenho aulaQueryMaker que chama um método em uma instância deRemoteAPI. Eu quero zombar doRemoteAPI.get_data_from_remote_se,rver método para retornar alguma constante. Como faço isso dentro de um teste sem precisar colocar um caso especial dentro doRemoteAPI código para verificar em qual ambiente ele está sendo executado.

Exemplo do que eu queria em ação:

# a.py
class A(object):
    def foo(self):
        return "A's foo"

# b.py
from a import A

class B(object):
    def bar(self):
        x = A()
        return x.foo()

# test.py
from a import A
from b import B

def new_foo(self):
    return "New foo"

A.foo = new_foo

y = B()
if y.bar() == "New foo":
    print "Success!"

questionAnswers(4)

yourAnswerToTheQuestion