前言 前面一篇在xadmin后台一个页面显示2个关联表(OneToOneField)的字段,使用inlines内联显示.本篇继续学习一对一(OneToOneField)关系的查询. 上一篇list_display只显示了当前表的字段信息,如果想显示关联表的字段,需要关联查询. 一对一(OneToOneField)关系 接着前面的一篇python测试开发django-33.admin后台一对一关系OneToOneField,先设计Card和CarDetail表 # models.py from d…
前言 django查询到的结果,用JsonResponse返回在页面上显示类似于\u4e2d\u6587 ,注意这个不叫乱码,这个是unicode编码,python3默认返回的编码 遇到问题 接着前面的User表,测试数据如下 user_name psw mail yoyo 123456 283340479@qq.com yoyo2 111111 1 yoyo5 111111 0 接着上一篇[python测试开发django-15.查询结果转json(serializers)],如果数据库里面有…
前言 django查询数据库返回的是可迭代的queryset序列,如果不太习惯这种数据的话,可以用serializers方法转成json数据,更直观 返回json数据,需要用到JsonResponse.django查询数据库返回json数据有3种方法 serializers转json model_to_dict转字典 values()转list (最简单,推荐!) JsonResponse json是目前常用的一种数据格式,有时候我们需要返回一个json格式的数据,而 JsonResponse…
2019第一期<python测试开发>课程,10月13号开学! 主讲老师:上海-悠悠 上课方式:QQ群视频在线教学,方便交流 本期上课时间:10月13号-12月8号,每周六.周日晚上20:30-22:30 报名费:报名费2000一人(周期2个月) 联系QQ:283340479 课表如下 课程主要涉及的内容: 1.httprunner框架以及web平台做接口自动化测试 (装逼必备) 2.django平台开发 (python开发必会) 3.pytest框架结合selenium做web自动化测试 (…
前言 上一篇讲了基于类的视图,在REST framework中,你也可以使用常规的基于函数的视图.它提供了一组简单的装饰器,用来包装你的视图函数, 以确保视图函数会收到Request(而不是Django一般的HttpRequest)对象,并且返回Response(而不是Django的HttpResponse)对象,同时允许你设置这个请求的处理方式. 基于函数视图@api_view() 函数签名: @api_view(http_method_names=['GET'], exclude_from_…
写在前面 今年从4月份开始写一本讲Python测试开发技术栈的书,主要有两个目的,第一是将自己掌握的一些内容分享给大家,第二是希望自己能系统的梳理和学习Python相关的技术栈.当时我本来打算以故事体的方式来写,虚构了个主人公叫巴哥,以巴哥的职场发展为主线,从大学毕业,到步入职场,再到职场精英,介绍用到的所有测试开发技术栈. 采用故事线的方式来写,主要目的是让大家能更好的理解知识点.但是出版商不太能接受这种形式,他们觉得一本好的书还是需要规规矩矩的按照常规知识点去写.所以,我决定在公众号上做一个…
前言 django-celery-beat 可以支持定时任务,把定时任务写到数据库. 接着前面这篇写python测试开发django-196.python3.8+django2+celery5.2.7环境准备 django-celery-beat 一般结合 django-celery-results一起使用 环境准备 运行系统:linux(centos/debian/ubuntu),不支持windows Python版本:3.8.5 Django : 2.2.2 celery: 5.2.7 dj…
前言 xadmin的详情页面主要是用form_layout布局,学会了完全可以不用写html代码,也能做出很好看的页面. xadmin的html页面是用的Bootstrap3框架设计的,layout布局用到的是django-crispy-forms框架,本篇详细讲下django-crispy-forms的官方文档案例 django-crispy-forms 当我们使用xadmin后台的时候,在INSTALLED_APPS里面同时添加了xadmin和crispy_forms这2个app,xadmi…
周边很多同学在用python,但是偶尔会发现有人对python的基础语法还不是特别了解,所以帮大家梳理了python的基础语法(文中的介绍以python3为例).如果你已然是python大牛,可以跳过这篇文章. 编码 python3的默认编码格式是:UTF-8 ,换句话说也就是:如果不在文件头部声明编码格式,python解释器默认以UTF-8的方式来读取python文件.作为对比,我们知道python2的默认编码格式是ascii,所以假如在python2文件中使用了中文,必须在文件头部声明gbk…
1.新建一个项目 2.新建一些文件夹方便管理 3.新建一个项目叫message  4.连接数据库 python web开发Django连接mysql 5.在数据库里自动生成django的表  6.运行debug发现运行成功…
互联网发展了许多年,不仅颠覆了很多行业,还让很多职位有了更多的用武之地.产品发布迭代速度不断加快,让测试开发这个岗位简直火得不要不要的. Python语言,作为一种更接近人来自然语言的开发语言,以简洁明了,上手快等优势被越来越多的人所关注. 测试开发的同学,也有不少选择了Python语言作为开发利器!这简直是如虎添翼! Python入门很容易,但是其实也是博大精深的. 有时候测试开发的面试官除了从技术深度上考察候选人的水平,还会从知识广度上看看候选人接触面有多大. 比如:“你知道Python的P…
Python测试开发-创建模态框及保存数据 原创: fin  测试开发社区  前天 什么是模态框? 模态框是指的在覆盖在父窗体上的子窗体.可用来做交互,我们经常会看到模态框用来登录.确定等等,到底是怎么实现这种弹出效果,bootstrap已经为我们提供了相应的组件. 1.界面原型 点击添加,弹出模态框, 然后输入 用户:tester, 消息:你好.如下图1所示: ▲图1 再点击保存,那么数据库就存入了以上输入的数据,查看界面的用户列表会显示tester,如下图2所示: ▲图2 2.开发过程 接下…
Python测试开发-浅谈如何自动化生成测试脚本 原创: fin  测试开发社区  前天 阅读文本大概需要 6.66 分钟. 一 .接口列表展示,并选择 在右边,点击选择要关联的接口,区分是否要登录,如需登录,在选择接口栏下,点击登录按钮,即选择了该接口.如下图1所示: ▲图1 二. 自动生成Jmeter文件 点击“生成jmeter文件”按钮,如下图2: 后台会自动根据选择关联的接口,并自动生成Jmeter文件 ▲图2 部分后台函数内容,如下图3: ▲图3 三. 设置脚本参数 在界面设置并发数.…
上文<巴哥职场进化记-Python测试开发技术栈>开篇讲到巴哥毕业初到深圳,见到了来自五湖四海的室友.一番畅聊之后,抱着对未来职场生活的期待,大家都进入了梦乡.今天我们来看看巴哥第一天上班都会经历哪些事情. 01 第一次见到导师 第二天一大早,巴哥他们都醒了,洗漱收拾完已经8点30,虽然住的地方离公司很近,但是巴哥和室友还是决定提前走路去公司,一来第一天入职迟到不太好,二来可以顺道熟悉下周围的环境. 走路大概十五分钟,他们就到达了公司所在的园区-深圳某软件园,公司目前暂时租在园区20号楼的6层…
上文<Python测试开发技术栈-巴哥职场进化记>-初来乍到,请多关照 我们介绍了巴哥入职后见到了自己的导师华哥,第一次参加团队站会,认识了团队中的开发小哥哥和产品小姐姐以及吃到了公司的加班餐--,今天我们接着来看巴哥会经历哪些事情. 01 华哥来的真早 第二天一大早,巴哥早早的来到了公司. "咦,华哥,你这么早啊",巴哥没想到华哥比自己到的还早. "来的早点,路上不堵车",华哥说道. "巴哥,你今天主要是把之后工作中可能会用到的工具都安装一下…
上文<Python测试开发技术栈-巴哥职场进化记>-一道作业题我们讲到华哥给巴哥出了一道作业题,让巴哥用Python实现记录日志的功能,巴哥历经"千辛万苦",终于做出了一个版本,但是也意识到当前由很多开源方案可供选择.今天我们来看看巴哥会经历哪些事情,精彩还在继续---- 01 又要开站会 第二天,巴哥早早的来到办公室~ 他还在思考昨天华哥给布置的作业题. 想着最好能实操使用下loguru日志库,巴哥开始动手写demo程序. "这loguru确实好用,在控制台打印…
Web UI测试自动化 splinter - web UI测试工具,基于selnium封装. selenium - web UI自动化测试. mechanize- Python中有状态的程序化Web浏览链接 selene - 使用Python + Ajax支持+ PageObjects + Widgets进行简明UI测试 hitch - 基于服务的应用程序的高级集成测试框架. Needle - Css 自动化测试框架. seleniumbase - 端到端自动化测试框架. pytest_spli…
创建blog的项目结构 关于如何创建一个Django项目,请查看[Python Web开发:使用Django框架创建HolleWorld项目] 创建blog的数据模型 创建一个文章类 所有开发都是数据为基础,首先我们再blog app下的models.py模型中Article,因为是基于Django MVC模式开发,Article类需要继承models.Model类 from django.db import models # Create your models here. class Art…
首先 第一本书,当初在百度阅读初步写了个电子版,刚一上线不久即收到了数百位读者朋友阅读收藏购买,于是顺利成章就出版了纸质书. <软件自动化测试开发>认真看过的读者应该都知道,介绍的主要是自动化测试基础以自动化测试框架为主线,同时附带提到了自动化平台的功能. 第一本书是偏向于Java语言开发. 然后 第二本书,第一本2017年内连续印刷4次多,符合广大同行的技能提升诉求,而第二本延续第一本的知识体系,做成自主研发所谓高大上的自动化测试平台. <自动化平台测试开发>可以说是测试开发的第…
Web UI测试自动化 splinter - web UI测试工具,基于selnium封装. selenium - web UI自动化测试. mechanize- Python中有状态的程序化Web浏览链接 selene - 使用Python + Ajax支持+ PageObjects + Widgets进行简明UI测试 hitch - 基于服务的应用程序的高级集成测试框架. Needle - Css 自动化测试框架. seleniumbase - 端到端自动化测试框架. pytest_spli…
前言 现在很多接口项目在登录的时候返回一个token,登录后的拿着这个token去访问访问登录之后的请求. 本篇使用djangorestframework框架写一个登陆的接口,登录成功后返回token. 环境准备: python 3.6 django 2.1.2 TokenAuthentication django rest framework权限和认证有四种方式: BasicAuthentication 此身份验证方案使用HTTP基本身份验证,根据用户的用户名和密码进行签名.基本身份验证通常仅…
前言 Django 中的视图的概念是一类具有相同功能和模板的网页的集合.通俗一点来说,就是你平常打开浏览器,看到浏览器窗口展示出来的页面内容,那就是视图.前面一章通过浏览器访问http://127.0.0.1:8000能在页面上展示出hello world的纯文本内容,通常我们打开浏览器页面,展示的是一个html页面,本篇讲下如何打开html页面. 新建应用 上一篇通过“django-admin startproject helloworld”是创建项目,一个项目下可以有多个应用(app).打开…
前言 如打开博客园按时间分类标签页[https://www.cnblogs.com/yoyoketang/archive/2018/10.html],里面是时间参数是动态的,如果我想获取里面的时间参数2018和10这两个参数,这就涉及到url参数的获取了. 获取url参数 先用path去匹配一个url地址,类似于:archive/2018/10.html,于是取两个参数名称year,month.参数用<name>这种格式 from django.conf.urls import url fro…
1.关于书中下载链接的问题:出现404,页面不存在 解答:大小写要区分,l和1不能弄错了 2.关于勘误,出现极个别漏子少字错字 解答:后续版本会改进,目前能理解就好了 ---------------------------- 1--app自动化 2--api自动化 3--性能自动化 4--web自动化 <软件自动化测试开发> 由测试开发大神倾情打造,Autotestplat一站式自动化集成平台及解决方案 扫一扫,关注微信公众号:…
前言 django查询数据库的方法很多,不同的方法返回的结果也不太一样,本篇详细讲解关于查询的13个方法 返回对象是对象列表的: all(), filter(), exclude(), order_by(), reverse(), values(), values_list(), distinct() 返回结果是对象: get(), first(), last() 返回结果是布尔值: exists() 返回数字: count() 数据准备 接着前面的User表,测试数据如下 user_name…
前言 Django 对各种数据库提供了很好的支持,包括:PostgreSQL.MySQL.SQLite.Oracle.本篇以mysql为例简单介绍django连接mysql进行数据操作 Django连mysql需要安装驱动mysqlclient mysqlclient安装 先要安装数据库驱动mysqlclient,使用pip安装就行 pip install mysqlclient copying MySQLdb\constants\FLAG.py -> build\lib.win-amd64-3…
前言 打开一个网站时候,点导航栏切换到不同的页面,发现导航部分是不变的,只是页面的主体内容变了,于是就可以写个母模板,其它的子页面继承母模板就可以了. 母模板 可以在母模板中添加多个块标签,每个块标签取不同的名称,如下格式,context是块标签名称 {% block content %} {% endblock content %} <!DOCTYPE html> <html lang="en"> <head> <meta charset=&…
前言 FBV(function base views) 就是在视图里使用函数处理请求,这一般是学django入门的时候开始使用的方式. CBV(class base views) 就是在视图里使用类处理请求,这是面向对象的编程方式. 面试的时候基本上都是问到:你平常写的视图是基于函数的视图 (FBV),还是基于类的视图 (CBV),两者的区别在哪? 如果你只会写基于函数的视图,那说明还处于初级入门的阶段了. FBV 模式 FBV(function base views)在views.py文件中定…
前言 当你想走上测试开发之路,用python开发出一个web页面的时候,需要找一个支持python语言的web框架.django框架有丰富的文档和学习资料,也是非常成熟的web开发框架,想学python开发的小伙伴,从django入手是一个不错的选择.本篇写一个简单的“hello world! ”页面,开始django之旅~环境准备:Python 3.6.0django 2.1.2pycharm 环境准备 django的环境安装非常简单,只需用pip安装一个django库就可以了,编辑器选择py…
Model 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计表结构和字段 使用 MySQLdb 来连接数据库,并编写数据访问层代码 业务逻辑层去调用数据访问层执行数据库操作 import MySQLdb def GetList(sql): db = MySQLdb.connect(user='root', db='wupeiqidb', passwd='1234', host='localhost') cursor = db.cursor() cursor.…