Python中DJANGO简单测试实例


Posted in Python onMay 11, 2015

本文实例讲述了Python中DJANGO简单测试的用法。分享给大家供大家参考。具体如下:

这里以facebook台湾的测试版为例。

仅仅测试用户登录,主要说明测试的使用和django环境的设置。

代码如下:

import os
import sys
import unittest
import hashlib
TEST_MEMBER_ID = 11
SNS_ID = 100002309745702
TEST_SESSION_KEY = '125737724171219|2.AQCp7ctCYXJh4ooW.3600.1310022000.1-100002309745702|qj4000WhhKWGtApOI0icEpzSyZ8' # Need to get from sns platform
SIGNED_REQUEST = 'hoIhyhOT7rLoOaxlJwDoGYIv6-qZizL3q9mbVJkJQJA.eyJhbGdvcml0aG0iOiJITUFDLVNIQTI1NiIsImV4cGlyZXMiOjEzMTAwMjIwMDAsImlzc3VlZF9hdCI6MTMxMDAxNzg5MCwib2F1dGhfdG9rZW4iOiIxMjU3Mzc3MjQxNzEyMTl8Mi5BUUNwN2N0Q1lYSmg0b29XLjM2MDAuMTMxMDAyMjAwMC4xLTEwMDAwMjMwOTc0NTcwMnxxajQwMDBXaGhLV0d0QXBPSTBpY0VwelN5WjgiLCJ1c2VyIjp7ImNvdW50cnkiOiJ1cyIsImxvY2FsZSI6ImVuX1VTIiwiYWdlIjp7Im1pbiI6MjF9fSwidXNlcl9pZCI6IjEwMDAwMjMwOTc0NTcwMiJ9'
class LoginTestCase(unittest.TestCase):
  def setUp(self):
    # Set up django environment
    pathname = os.path.dirname(sys.argv[0])
    sys.path.append(os.path.abspath(pathname))
    sys.path.append(os.path.normpath(os.path.join(os.path.abspath(pathname), '../')))
    os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'
    from django.http import HttpRequest
    self.request = HttpRequest()
    from django.contrib.sessions.backends.cache import SessionStore
    self.request.session = SessionStore()
    self.request.session[hashlib.md5(TEST_SESSION_KEY).hexdigest()] = TEST_MEMBER_ID
    self.request.session.save()
    self.request.POST = {'signed_request':SIGNED_REQUEST}
  def tearDown(self):
    pass
  def testloginFromWeb(self):
    # login without session key
    from django.conf import settings
    from platforms.login.login_facebook_tw import login_from_web
    res = login_from_web(self.request)
    self.assertEqual(res.status_code, 200)
    self.assertEqual(res.items(), [('Content-Type', 'text/html; charset=utf-8')])
    self.assertTrue(settings.SNS_URL in res.content)
    self.assertTrue(settings.MEDIA_URL in res.content)
    # Check member
    from apps.members.models import Member
    from apps.members.helper import login_sns_user
    member = login_sns_user(self.request, TEST_SESSION_KEY)
    member_db = Member.objects.get(id=TEST_MEMBER_ID)
    self.assertEqual(member, member_db)
if __name__ == '__main__':
  unittest.main()

其他可以类推。

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
Python程序设计入门(3)数组的使用
Jun 16 Python
Python中的is和id用法分析
Jan 26 Python
Python操作MongoDB数据库PyMongo库使用方法
Apr 27 Python
Django在win10下的安装并创建工程
Nov 20 Python
python使用xpath中遇到:到底是什么?
Jan 04 Python
Python实现在某个数组中查找一个值的算法示例
Jun 27 Python
Python干货:分享Python绘制六种可视化图表
Aug 27 Python
Python3 导入上级目录中的模块实例
Feb 16 Python
python登录WeChat 实现自动回复实例详解
May 28 Python
Python利用matplotlib绘制约数个数统计图示例
Nov 26 Python
Python中私有属性的定义方式
Mar 05 Python
python百行代码自制电脑端网速悬浮窗的实现
May 12 Python
python单元测试unittest实例详解
May 11 #Python
Python使用MYSQLDB实现从数据库中导出XML文件的方法
May 11 #Python
Python生成不重复随机值的方法
May 11 #Python
Python解析nginx日志文件
May 11 #Python
Python字符串替换实例分析
May 11 #Python
Python使用django获取用户IP地址的方法
May 11 #Python
总结Python编程中三条常用的技巧
May 11 #Python
You might like
PHP 变量定义和变量替换的方法
2009/07/30 PHP
php下网站防IP攻击代码,超级实用
2010/10/24 PHP
PHP小教程之实现链表
2014/06/09 PHP
Redis在Laravel项目中的应用实例详解
2017/08/11 PHP
JS实现向表格行添加新单元格的方法
2015/03/30 Javascript
用svg制作富有动态的tooltip
2015/07/17 Javascript
逐一介绍Jquery data()、Jquery stop()、jquery delay()函数(详)
2015/11/04 Javascript
快速掌握Node.js环境的安装与运行方法
2016/02/16 Javascript
webstorm添加vue.js支持的方法教程
2017/07/05 Javascript
微信小程序实现动态设置页面标题的方法【附源码下载】
2017/11/29 Javascript
vue2.0 elementUI制作面包屑导航栏
2018/02/22 Javascript
Vue波纹按钮组件制作
2018/04/30 Javascript
对node.js中render和send的用法详解
2018/05/14 Javascript
JS实现仿微信支付弹窗功能
2018/06/25 Javascript
Angularjs Ng_repeat中实现复选框选中并显示不同的样式方法
2018/09/12 Javascript
vue-cli4.x创建企业级项目的方法步骤
2020/06/18 Javascript
JQuery Ajax如何实现注册检测用户名
2020/09/25 jQuery
关于小程序优化的一些建议(小结)
2020/12/10 Javascript
python实现多线程暴力破解登陆路由器功能代码分享
2015/01/04 Python
详解python中的time和datetime的常用方法
2019/07/08 Python
tensorflow 模型权重导出实例
2020/01/24 Python
欧洲著名的珠宝和手表网上商城:uhrcenter
2017/04/10 全球购物
英国领先的在线药房:Pharmacy First
2017/09/10 全球购物
Uber Eats台湾:寻找附近提供送餐服务的餐厅
2018/05/07 全球购物
英国高街奥特莱斯:Highstreet Outlet
2019/11/21 全球购物
应届生的求职推荐信范文
2013/11/30 职场文书
售后服务承诺书
2014/03/26 职场文书
网络信息安全承诺书
2014/03/26 职场文书
优秀毕业生的求职信
2014/07/21 职场文书
2014年师德师风工作总结
2014/11/25 职场文书
学校元旦晚会开场白
2015/05/29 职场文书
预备党员考察意见范文
2015/06/01 职场文书
毕业生学校组织意见
2015/06/04 职场文书
标会主持词应该怎么写?
2019/08/15 职场文书
导游词之广东佛山(南风古灶)
2019/09/24 职场文书
全网非常详细的pytest配置文件
2022/07/15 Python