python功能测试_使用Python WebTest进行功能测试

哎呀,你错过了几步.

你的程序没有做任何事情,因为你没有告诉它做任何事情,你只是定义了一个类.所以让我们告诉它做点什么.我们将使用unittest软件包使事情更加自动化.

import unittest

from webtest import TestApp

class MyTests(unittest.TestCase):

def test_admin_login(self):

resp = self.TestApp.get('/admin')

print (resp.request)

if __name__ == '__main__':

unittest.main()

运行它,我们看到:

E

======================================================================

ERROR: test_admin_login (__main__.MyTests)

----------------------------------------------------------------------

Traceback (most recent call last):

File "test_foo.py", line 6, in test_admin_login

resp = self.TestApp.get('/admin')

AttributeError: 'MyTests' object has no attribute 'TestApp'

----------------------------------------------------------------------

Ran 1 test in 0.000s

FAILED (errors=1)

好的,我们需要一个应用程序来测试.从哪里得到一个?您通常需要通过config.make_wsgi_app()在主体中创建的WSGI应用程序.最简单的方法是加载它,就像pserve development.ini在运行你的应用程序时那样.我们可以通过pyramid.paster.get_app()来做到这一点.

import unittest

from pyramid.paster import get_app

from webtest import TestApp

class MyTests(unittest.TestCase):

def test_admin_login(self):

app = get_app('testing.ini')

test_app = TestApp(app)

resp = test_app.get('/admin')

self.assertEqual(resp.status_code, 200)

if __name__ == '__main__':

unittest.main()

现在所需要的只是一个类似于你的development.ini的INI文件,但是出于测试目的.您只需复制development.ini,直到您需要设置任何仅用于测试的设置.

希望这为您提供了一个了解有关unittest包的更多信息的起点.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值