`
tailorcai
  • 浏览: 93191 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

基于django0.96的自动测试功能的Login增强

阅读更多
0.96不支持client对象,先Login再提交数据。因此,参照trunk,改写了Client
    def login_new(self, **credentials):
        """Set the Client to appear as if it has sucessfully logged into a site.

        Returns True if login is possible; False if the provided credentials
        are incorrect, or the user is inactive, or if the sessions framework is
        not available.
        """
        user = authenticate(**credentials)
        if user and user.is_active and 'django.contrib.sessions' in settings.INSTALLED_APPS:
            #engine = __import__(settings.SESSION_ENGINE, {}, {}, [''])

            # Create a fake request to store login details
            request = HttpRequest()
            #request.session = engine.SessionStore()
            from django.contrib.sessions.middleware import SessionMiddleware
            SessionMiddleware().process_request( request )
            login(request, user)

            obj = Session.objects.get_new_session_object()
            session_key = obj.session_key
            
            # Set the cookie to represent the session
            self.cookies[settings.SESSION_COOKIE_NAME] = session_key
            self.cookies[settings.SESSION_COOKIE_NAME]['max-age'] = None
            self.cookies[settings.SESSION_COOKIE_NAME]['path'] = '/'
            self.cookies[settings.SESSION_COOKIE_NAME]['domain'] = settings.SESSION_COOKIE_DOMAIN
            self.cookies[settings.SESSION_COOKIE_NAME]['secure'] = settings.SESSION_COOKIE_SECURE or None
            self.cookies[settings.SESSION_COOKIE_NAME]['expires'] = None

            # Save the session values
            #request.session.save()
            new_session = Session.objects.save(session_key, request.session._session,
                    datetime.datetime.now() + datetime.timedelta(seconds=settings.SESSION_COOKIE_AGE))

            return True
        else:
            return False

分享到:
评论

相关推荐

    基于django的自动化测试平台源码+项目说明.zip

    基于django的自动化测试平台源码+项目说明.zip基于django的自动化测试平台源码+项目说明.zip基于django的自动化测试平台源码+项目说明.zip基于django的自动化测试平台源码+项目说明.zip基于django的自动化测试平台...

    python课程设计基于Django的学生心理测试系统源码+数据库.zip

    python课程设计基于Django的学生心理测试系统源码+数据库。获老师指导已通过的高分项目。python课程设计基于Django的学生心理测试系统源码+数据库。获老师指导已通过的高分项目。python课程设计基于Django的学生心理...

    基于Django的个人网盘源码.zip

    基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django...

    Python基于Django的就业系统源码.zip

    基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于...

    基于Django的交通设施运维管理系统设计

    基于Django的交通设施运维管理系统设计基于Django的交通设施运维管理系统设计基于Django的交通设施运维管理系统设计基于Django的交通设施运维管理系统设计基于Django的交通设施运维管理系统设计基于Django的交通设施...

    毕业设计:基于python django的自动化测试管理系统.zip

    【标题】基于Python Django的自动化测试管理系统 在计算机科学领域,毕业设计是学生们展示技能、理解和应用所学知识的重要环节。本项目是一个基于Python Django框架的自动化测试管理系统,旨在为软件开发团队提供一...

    基于Django的国内疫情数据可视化Web系统源码.zip

    基于Django的国内疫情数据可视化Web系统源码 基于Django的国内疫情数据可视化Web系统源码 基于Django的国内疫情数据可视化Web系统源码 基于Django的国内疫情数据可视化Web系统源码 基于Django的国内疫情数据可视...

    Python基于 Django 3 的网盘系统【源码】.zip

    Python基于 Django 3 的网盘系统【源码】Python基于 Django 3 的网盘系统【源码】Python基于 Django 3 的网盘系统【源码】Python基于 Django 3 的网盘系统【源码】Python基于 Django 3 的网盘系统【源码】Python基于...

    python基于django的图书推荐系统源码.zip

    python基于django的图书推荐系统源码 python基于django的图书推荐系统源码 python基于django的图书推荐系统源码 python基于django的图书推荐系统源码 python基于django的图书推荐系统源码 python基于django...

    基于Django的疫情上报系统源码.zip

    基于Django的疫情上报系统源码 基于Django的疫情上报系统源码 基于Django的疫情上报系统源码 基于Django的疫情上报系统源码 基于Django的疫情上报系统源码 基于Django的疫情上报系统源码 基于Django的...

    Python基于Django框架实现的一个学生信息管理系统源码.zip

    Python基于Django框架实现的一个学生信息管理系统源码 Python基于Django框架实现的一个学生信息管理系统源码 Python基于Django框架实现的一个学生信息管理系统源码 Python基于...

    基于DJango开发的仓库管理系统源码.zip

    基于DJango开发的仓库管理系统,软件架构:python 3.5、django 2.2、MySQL 基于DJango开发的仓库管理系统,软件架构:python 3.5、django 2.2、MySQL 基于DJango开发的仓库管理系统,软件架构:python 3.5、...

    基于Django的自动化测试管理系统.zip

    【标题】:基于Django的自动化测试管理系统 在软件开发过程中,自动化测试是不可或缺的一环,它可以有效地提高测试效率,确保代码质量。本项目“基于Django的自动化测试管理系统”正是针对这一需求而构建的。Django...

    基于django的超市管理系统

    基于django的超市管理系统基于django的超市管理系统基于django的超市管理系统基于django的超市管理系统基于django的超市管理系统基于django的超市管理系统基于django的超市管理系统基于django的超市管理系统基于...

    基于Django的图书管理系统源码+数据库.zip

    基于Django的图书管理系统源码+数据库,基于Django的图书管理系统源码+数据库基于Django的图书管理系统源码+数据库基于Django的图书管理系统源码+数据库基于Django的图书管理系统源码+数据库基于Django的图书管理...

    Python基于Django学生宿舍管理系统源码.zip

    Python基于Django学生宿舍管理系统源码 Python基于Django学生宿舍管理系统源码 Python基于Django学生宿舍管理系统源码 Python基于Django学生宿舍管理系统源码 Python基于Django学生宿舍管理系统源码 Python基于...

    基于Django框架的API自动化测试+测试用例管理(源码+项目说明).zip

    【资源说明】 1、该资源包括项目的全部源码,下载可以直接使用! 2、本项目适合作为计算机、...基于Django框架的API自动化测试+测试用例管理(源码+项目说明)(Gitlab Issue关联管理,自动生成测试计划甘特图).zip

    Python-使用PythonDjango的Web自动化测试平台

    Python Django的Web自动化测试平台是基于Python的著名Web框架Django构建的一种高效、可靠的测试解决方案。这个平台允许开发者和测试人员自动执行Web应用的测试,从而提高开发效率,确保产品质量。在本文中,我们将...

    基于Django3.0.5+Python3.7+SQLite的博客系统源码.zip

    基于Django3.0.5+Python3.7+SQLite的博客系统源码 基于Django3.0.5+Python3.7+SQLite的博客系统源码 基于Django3.0.5+Python3.7+SQLite的博客系统源码 基于Django3.0.5+Python3.7+SQLite的博客系统源码 基于...

Global site tag (gtag.js) - Google Analytics