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

yizhihongxing

我来详细讲解Python + Django + Selenium 搭建简易自动化测试的完整攻略。本攻略包含以下几个部分:环境搭建、安装必要库、配置Django、使用Selenium编写自动化测试脚本。

环境搭建

在开始搭建之前,需要确保你的电脑上安装了Python环境。可以通过终端命令python --version来检查是否安装。如果尚未安装,请到Python官网下载安装包进行安装。

安装必要库

首先,我们需要在终端执行以下命令,安装必要的库。其中,django是Django框架,用于搭建web服务;selenium是Selenium库,用于模拟浏览器操作。

pip install django selenium

配置Django

接下来,我们需要配置Django。

首先,可以通过以下命令创建一个Django项目

django-admin startproject autotest

其中,autotest是项目名称。执行完上面的命令后,会在当前目录下生成一个名为autotest的文件夹,内部包含Django框架必要的一些文件和目录。

接着,进入autotest目录,输入以下命令创建一个Django应用程序。

cd autotest
python manage.py startapp myapp

其中,myapp是应用程序的名称。执行完上面的命令后,会在当前目录下生成一个名为myapp的应用程序,包含Django框架必要的一些文件和目录。

接下来,编辑myapp/views.py文件,添加以下代码:

from django.http import HttpResponse

def index(request):
    return HttpResponse("Hello, world. You're at the polls index.")

然后,编辑autotest/urls.py文件,添加以下代码:

from django.urls import path
from myapp import views

urlpatterns = [
    path('', views.index, name='index'),
]

最后,在终端输入以下命令,启动Django开发服务器。

python manage.py runserver

此时,浏览器访问http://127.0.0.1:8000/ ,即可看到Hello, world. You're at the polls index.

使用Selenium编写自动化测试脚本

接下来,我们使用Selenium编写自动化测试脚本。

首先,确保你的电脑上已经安装了Chrome浏览器,并且已经下载了对应版本的ChromeDriver驱动,并将其添加到环境变量中。

打开终端,创建一个名为tests.py的文件,并添加以下代码:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
import unittest

class start(unittest.TestCase):

    def setUp(self):
        self.driver = webdriver.Chrome()  # 启动Chrome浏览器

    def test_open_and_search(self):
        driver = self.driver
        driver.get("http://127.0.0.1:8000/")  # 打开测试网站
        self.assertIn("Hello, world. You're at the polls index.", driver.title)  # 验证网站标题

    def tearDown(self):
        time.sleep(3)
        self.driver.close()  # 关闭浏览器

if __name__ == "__main__":
    unittest.main()

其中,setUp()方法是在每个测试方法之前执行的。tearDown()方法是在每个测试方法之后执行的。test_open_and_search()方法中,先打开测试网站,然后验证网站标题是否和预期相符。

执行以下命令,运行测试脚本。

python tests.py

如果一切顺利,终端会输出测试通过的结果。

以上是Python + Django + Selenium 搭建简易自动化测试的完整攻略。我还为你提供了一个测试脚本示例,你可以在此基础上进行自己的测试脚本编写。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python+django+selenium搭建简易自动化测试 - Python技术站

(0)
上一篇 2023年5月16日
下一篇 2023年5月16日

相关文章

  • django 从零开始 11 根据时间戳加密数据

      django自带一个加密的方法signer,对数据进行一个加密 一般这种方式用于账号密码邮箱找回,或者token设置       class TimestampSigner(Signer): def timestamp(self): return baseconv.base62.encode(int(time.time())) def sign(self…

    Django 2023年4月11日
    00
  • django– 配置media文件

    media文件夹是我们下载东西后存放数据的主要存放处..十分重要 一:配置media文件:  media的配置和static十分相似,但也有一些不同的地方 1,首先在应用里面创建media文件     2,在settings里面配置media文件的路径 在settings里面配置主要分为两步,和static相似 MEDIA_ROOT=os.path.join…

    Django 2023年4月12日
    00
  • Python Django源码运行过程解析

    关于“Python Django源码运行过程解析”的完整攻略,我想给出如下的详细讲解,希望对你有所帮助。 Python Django源码运行过程解析 简介 Django 是一种基于 Python 语言开发的高级 Web 框架,易于使用、灵活性高,被广泛应用于各种类型的 Web 应用程序的开发中。在本攻略中,我们将深入理解 Django 框架的源代码运行过程,…

    Django 2023年5月16日
    00
  • django框架学习:二十二.django表单提交-get请求

    ————恢复内容开始———— 在登录的时候,输入框里输入账号,密码提交,从前端页面将账号密码等信息提交到服务端,服务端接收数据后根据提交的数据进行相应的处理,返回相应的响应。这一套流程下来就是今天学习的内容,表单的提交,涉及到前后端数据的交互。 from表单 用户表单是web开发的一项基本的功能,Django的表单功能由For…

    2023年4月10日
    00
  • django xadmin多个model的数据渲染在统一个template中

    adminx.py demo class ModelAdmin(object): #…. def get_context(self): context = super(SimCardServicesAdmin, self).get_context() f = context.get(‘form’,None) if f: card_id = f[‘card…

    Django 2023年4月16日
    00
  • Django项目发布 环境部署(中)

    python环境部署 我们今天学习的内容是如何将Django项目部署到linux服务器上,我们部署的linux系统是centos7首先,我们先在linux上搭建我们的Python3环境: 在这里首先强调一下,Centos7系统自带的Python2我们不要删除,我们要做的是在Python2和python3并存。 1、  安装Python3的依赖包 2、  命令…

    2023年4月10日
    00
  • 关于Django 框架的ContentType 模型

    ContentType 模型对应数据库中django_content_type表,主要用户维护 django project 中所安装的所有用户模型 代码如下: class ContentType(models.Model):    #这三个字段分别表示 模型的用户化名称,模型所属app名称,模型名称 name = models.CharField(max_…

    Django 2023年4月11日
    00
  • Django之Models操作

    一、字段 AutoField(Field) – int自增列,必须填入参数 primary_key=True BigAutoField(AutoField) – bigint自增列,必须填入参数 primary_key=True 注:当model中如果没有自增列,则自动会创建一个列名为id的列 from django.db import models cla…

    Django 2023年4月16日
    00
合作推广
合作推广
分享本页
返回顶部