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面向对象编程中的类和对象学习教程
Mar 30 Python
Python中操作mysql的pymysql模块详解
Sep 13 Python
微信跳一跳python辅助软件思路及图像识别源码解析
Jan 04 Python
详解Python中的正则表达式
Jul 08 Python
详解windows python3.7安装numpy问题的解决方法
Aug 13 Python
解决webdriver.Chrome()报错:Message:'chromedriver' executable needs to be in Path
Jun 12 Python
python实现XML解析的方法解析
Nov 16 Python
浅谈Python中的继承
Jun 19 Python
如何基于Python Matplotlib实现网格动画
Jul 20 Python
python使用tkinter实现透明窗体上绘制随机出现的小球(实例代码)
May 17 Python
python爬取豆瓣电影TOP250数据
May 23 Python
python使用matplotlib绘制图片时x轴的刻度处理
Aug 30 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
Windows下IIS6/Apache2.2.4+MySQL5.2+PHP5.2.1安装配置方法
2007/05/03 PHP
php检测图片主要颜色的方法
2015/07/01 PHP
PHP页面输出搜索后跳转下一页的处理方法
2016/09/30 PHP
PHP命令空间namespace及use的用法小结
2017/11/27 PHP
PHP获取真实IP及IP模拟方法解析
2020/11/24 PHP
JQury slideToggle闪烁问题及解决办法
2011/07/05 Javascript
jquery获取被勾选的checked(选中)的那一行的3列和4列的值
2013/07/04 Javascript
JS实现图片放大镜效果的方法
2015/02/27 Javascript
在JavaScript中用getMinutes()方法返回指定的分时刻
2015/06/10 Javascript
JS+CSS实现的日本门户网站经典选项卡导航效果
2015/09/27 Javascript
js命名空间写法示例
2015/12/18 Javascript
AngularJS 服务详细讲解及示例代码
2016/08/17 Javascript
利用Node.js制作爬取大众点评的爬虫
2016/09/22 Javascript
javascript入门之数组[新手必看]
2016/11/21 Javascript
javascript事件的传播基础实例讲解(35)
2017/02/14 Javascript
基于vue循环列表时点击跳转页面的方法
2018/08/31 Javascript
简单了解Javscript中兄弟ifream的方法调用
2019/06/17 Javascript
基于javascript的无缝滚动动画实现2
2020/08/07 Javascript
[01:08]DOTA2次级职业联赛 - Wings 战队宣传片
2014/12/01 DOTA
[01:52]DOTA2完美大师赛Vega战队趣味视频——kpii老师小课堂
2017/11/25 DOTA
Python学习笔记(一)(基础入门之环境搭建)
2014/06/05 Python
python中反射用法实例
2015/03/27 Python
利用Python脚本在Nginx和uwsgi上部署MoinMoin的教程
2015/05/05 Python
Python中datetime常用时间处理方法
2015/06/15 Python
使用Python的urllib和urllib2模块制作爬虫的实例教程
2016/01/20 Python
python使用锁访问共享变量实例解析
2018/02/08 Python
Python 控制终端输出文字的实例
2019/07/12 Python
python代数式括号有效性检验示例代码
2020/10/04 Python
查找适用于matplotlib的中文字体名称与实际文件名对应关系的方法
2021/01/05 Python
大学生见习报告范文
2014/11/03 职场文书
社区重阳节活动总结
2015/03/24 职场文书
运动员代表致辞
2015/07/29 职场文书
《卖火柴的小女孩》教学反思
2016/02/19 职场文书
安全生产协议书
2016/03/22 职场文书
python中24小时制转换为12小时制的方法
2021/06/18 Python
Python自动化实战之接口请求的实现
2022/05/30 Python