Python+django+selenium搭建简易自动化测试

该平台会集成UI自动化及api自动化,里面也会涉及到一些简单的HTML等前端,当然都是很基础的东西。在以后的博客里,我会一点点的尽量写详细,帮助一些测试小白一起成长,当然我也是个小菜鸡。

第一章 django 搭建平台。

1.1搭建环境

Django 官方网站:The web framework for perfectionists with deadlines | Django

Python 官方仓库下载地址:Django · PyPI

这里我们通过pip来安装django ,这里版本用1.10.3。

Python 用3.5.

1

pip3 install django==1.10.3

我电脑同时安装了python2 和3.所以这里的是pip3。

这里提示我已经安装了django。

在D:\python3\Scripts目录下会出现一个django-admin.exe 文件。在cmd窗口中进入D:\python3\Scripts目录,然后输入“django-admin”命令回车。

操作步骤如下图:

这里是django提供的所有命令。创建项目的方式有很多种,可以通过pycharm来创建。这里我们使用“startproject”命令来创建。

1.2创建testplatform项目。

cmd窗口中,D:\python3\Scripts目录下,执行  django-admin startproject testplatform  

1

D:\python3\Scripts>django-admin startproject testplatform

这样就成功创建了项目。然后我们用pycharm打开这个项目。

项目结构如图:

 

这里对结构简单进行一下解释:

testplatform/__init__.py:一个空的文件,用它标识一个目录为 Python 的标准包。

testplatform/settings.py:Django 项目的配置文件,包括 Django 模块应用配置,数据库配置,模板配置等。

testplatform/urls.py:Django 项目的 URL 声明。

testplatform/wsgi.py:为 WSGI 兼容的 Web 服务器服务项目的切入点。 manage.py:一个命令行工具,可以让你在使用 Django 项目时以不同的方式进行交互。

1.3创建应用

在cmd窗口,进入testplatform项目。我们使用“startapp”命令创建应用,一个项目可以包含多个应用。

1

2

3

D:\python3\Scripts>cd testplatform

D:\python3\Scripts\testplatform>python3 manage.py startapp sign

创建“sign”应用。结构如下:

migrations/:用于记录 models 中数据的变更。

admin.py:映射 models 中的数据到 Django 自带的 admin 后台。

apps.py:在新的 Django 版本中新增,用于应用程序的配置。

models.py:创建应用程序数据表模型(对应数据库的相关操作)。

tests.py:创建 Django 测试。

views.py:控制向前端显示哪些数据。

1.4 运行项目

现在我们要把项目运行起来,Django 提供了 Web 容器,只需要通过“runserver”命令就可以把项目运行 起来。

1

2

3

4

5

6

7

8

9

10

11

D:\python3\Scripts\testplatform>python3 manage.py runserver

Performing system checks...

System check identified no issues (0 silenced).

You have 13 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.

Run 'python manage.py migrate' to apply them.

May 10, 2019 - 21:45:55

Django version 1.10.3, using settings 'testplatform.settings'

Starting development server at http://127.0.0.1:8000/

Quit the server with CTRL-BREAK.

 Django 默认会通过本机的 8000 端口来启动项目,如果你的当前环境该端口号被占用了,也可以在启动 时指定 IP 地址和端口号。

1

2

3

4

5

6

7

8

9

10

11

D:\python3\Scripts\testplatform>python3 manage.py runserver 127.0.0.1:8001

Performing system checks...

System check identified no issues (0 silenced).

You have 13 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.

Run 'python manage.py migrate' to apply them.

May 10, 2019 - 21:49:15

Django version 1.10.3, using settings 'testplatform.settings'

Starting development server at http://127.0.0.1:8001/

Quit the server with CTRL-BREAK.

其中“127.0.0.1”为指向本机的 IP 地址,“8001”为设置的端口号。 打开浏览器,访问:http://127.0.0.1:8001/

 

​现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:485187702【暗号:csdn11】

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走! 希望能帮助到你!【100%无套路免费领取】

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/323698.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大创项目推荐 深度学习图像修复算法 - opencv python 机器视觉

文章目录 0 前言2 什么是图像内容填充修复3 原理分析3.1 第一步:将图像理解为一个概率分布的样本3.2 补全图像 3.3 快速生成假图像3.4 生成对抗网络(Generative Adversarial Net, GAN) 的架构3.5 使用G(z)生成伪图像 4 在Tensorflow上构建DCGANs最后 0 前言 &#…

如何在CentOS7部署宝塔面板并通过内网穿透实现远程登录面板

文章目录 一、使用官网一键安装命令安装宝塔二、简单配置宝塔,内网穿透三、使用固定公网地址访问宝塔 宝塔面板作为建站运维工具,适合新手,简单好用。当我们在家里/公司搭建了宝塔,没有公网IP,但是想要在外也可以访问内…

【Java基础篇】 try中return A,catch中return Bfinally中return C,最终返回值是什么?

try中return A,catch中return Bfinally中return C,最终返回值是什么? ✔️典型解析✔️拓展知识仓✔️finally 和 return 的关系 ✔️ final、finally、finalize有什么区别✔️final✔️finally✔️ finalize ✔️典型解析 最终的返回值将会是C 因为 fi…

CTFHub | 存储型

0x00 前言 CTFHub 专注网络安全、信息安全、白帽子技术的在线学习,实训平台。提供优质的赛事及学习服务,拥有完善的题目环境及配套 writeup ,降低 CTF 学习入门门槛,快速帮助选手成长,跟随主流比赛潮流。 0x01 题目描述…

Vue3-36-路由-路由的元数据信息 meta

什么是 meta 简单的理解,meta 就是路由对象 的一个属性对象, 可以 通过这个 属性给 路由对象添加 一些必要的属性值, 在使用路由对象时可以获取到这个属性型对象,从而进行一些其他的逻辑判断。 meta 这个非常的简单,就…

如何使用Docker本地部署一个开源网址导航页并分享好友公网使用

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

linux 浅练一下哈

1.新建用户test不建家目录不允许登录,uid为10086_____________________ useradd -u 10086 -M -s /sbin/nologin 2.将 /opt 文件夹中所有文件的属主,属组改成,test_______________________ chown -R test.test /opt chown -R …

【mars3d】new mars3d.layer.GeoJsonLayer({实现多孔面遮罩mask: true,

【mars3d】new mars3d.layer.GeoJsonLayer({实现多孔面遮罩 官网测试示例: 1.功能示例(Vue版) | Mars3D三维可视化平台 | 火星科技 测试代码: export function showDraw(isFlyTo) { removeLayer() const geoJsonLayer new mars3d.layer.GeoJsonLaye…

DS18B20温度传感器(STM32F103C8T6)串口发送到电脑

DS18B20温度传感器(STM32F103C8T6)串口发送到电脑 电路: 单片机串口DS18B20 https://item.taobao.com/item.htm?id753346246509&skuId5192123304733 代码: 链接:https://pan.baidu.com/s/1kW9866jJ9AQYM4YLc1k…

前端JS加密对抗由浅入深-1

前言: 本文主要讲解,针对前端加密数据传输站点,如何进行动态调试以获取加密算法、秘钥,本次实验不涉及漏洞挖掘,仅为学习演示,环境为本地搭建环境 此次站点加密方式为AES加密方式,现如今越来越…

MySQL数据库主从复制和读写分离

目录 一、MySQL主从复制和读写分离理论 (一)读写分离 1.什么是读写分离 2.为什么要读写分离 3.什么时候要读写分离 4.读写分离原理 5.常见MySQL 读写分离 (1)基于程序代码内部实现 (2)基于中间代理…

React基础应用及常用代码

目录 基础知识 babel.config.js js,html,css,Vue,react,angular,nodejs,webpack,less,ES6,commonjs等的关系 ECMAScript 6(ES6) let、const、var 的区别 Webpack、npm、node关系 props和state区别 通用框架类 ES 6 export React React.Fragm…