一、浮动1. 浮动网页布局第一准则:多个块级元素纵向排列使用标准流,横向排列使用浮动 浮动:用于创建浮动框,将其移动到一边,直到边缘触及包含另一个浮动框的边缘 语法:1选择器 {float: 属性值;} 属性值 描述 none 元素不浮动(默认) left 元素向左浮动 right 元素向右浮动 代码示例 12345678910111213141516171819202122232425262728293031323334353637<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" ...
一、 安装 locust1pip install locust 验证是否安装成功1import locust 1. HttpUser(User)在User类中,具有一个client属性,它对应着虚拟用户作为客户端所具备的请求能力。 继承 HttpUser 类。HttpUser 是最常用的用户类。它添加了一个client属性,用于发出 HTTP 请求。 其client属性绑定了HttpSession类,而HttpSession又继承自requests.Session。 通过client属性来使用Python requests库的所有方法,调用方式也与requests完全一致。 client的方法调用之间就自动具有了状态记忆的功能, 从而后续HTTP请求操作都能带上登录态。 虽然Locust 仅内置了对 HTTP/HTTPS 的支持,但它可以扩展到测试几乎任何系统。只需要基于User类实现client即可。我们可以使用 locust-plugins ,这个是第三方维护的库,支持Kafka、mqtt,webdriver等测试。 2. TaskSet在 TaskSet 子类描述业务测试 ...
一、 什么是性能测试? 通过工具,找出或获得系统在不同工况下的性能指标值 性能测试过程中,重点是找出**性能指标**,而不再是找出 Bug, 性能测试的产出绝对不只是 Bug 案例:跑步100米,用时多少?运动员的心跳、步伐频率是多少? 跑步100米:业务场景 用时多少:响应时间 运动员的心跳、步伐:性能指标值 性能指标值和响应时间是否满足当前业务场景的最低要求(合格线) 二、 获取基准值假设当前有一个业务电商系统,下单业务,目前还不知道系统支持多少人同时下单,那么我们需要找到服务器能正常支持多少人同时下单 性能测试初始阶段(第一次做) 先把基础的性能指标值找出来(第一次性能测试也叫做基准测试) 比如:100个人同时下单系统正常,但120个人同时下单就会出现部分请求的响应时间超长,连接异常 那么100-120范围内的某个值就是当前服务器能达到的性能指标值(基准值) 版本迭代,进行第二次做性能测试,重新跑一遍之前的性能脚本 又会得到一些性能指标值,对比上个版本的性能指标值,看是否有优化(性能变化) 假设这个时候120个人同时下单是正常的,150个人才有异常,那么接口已经有优化了 ...
一、 序列化器中的类属性字段序列化 中所定义的 类属性 字段,一般情况下与 模型类 字段 相对应 默认情况下,这些类属性字段既可以进行序列化输出,也可以进行反序列化输入 不需要输入(反序列化)、输出(序列化)的字段,则不需要定义,定义的字段 则必须出现在 fields列表中 只需要反序列化输入,则定义 write_only = True 只需要序列化输出,则定义 read_only = True 响应的参数如果是多个查询集,需要在 JsonResponse() 中传参 many=True label:当前字段在前端的api页面中所显示的字段名称 allow_null = False:当前字段是否允许传None,默认是False(必填字段False,反之则True) allow_blank = False:当前字段是否运行为空,默认是False(必填字段False,反之则True) required=False:当前字段允许不传,默认是True(必填字段True,反之则False) 二、反序列化_校验机制调用序列化器对象的 is_valid() 方法,校验前端参数的正确性,不调 ...
1.0 版本需求: 1.完成一个端口的扫描 123456789101112131415161718192021222324252627import socketdef scanPort(): # 1.使用 TCP 协议扫描端口 sk = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 2.设置连接时间 sk.settimeout(0.5) scan_ip = input("请输入需要扫描的IP:") scan_port = input("请输入需要扫描的port:") try: # 3.创建连接 conn = sk.connect_ex((scan_ip, int(scan_port))) if conn == 0: print(f'主机:{scan_ip},端口:{scan_port} 已开放。') # 4.关 ...
模型关联关系 用例和项目之间的关联可以直接通过config,因为config是套件和用例的扩展,相当于用例和套件本身 。 一、 模块的包管理1. 创建模型包 如果模型过多时,需要把模型分别存储。 在应用中创建一个名为 models 的包,将所有的模型文件全部存放在 该文件夹下, 删除原来的 models.py 文件。 2. 创建 模型文件在 __init__.py 文件中,要使用 显示明确的方式导入每个模型,这样不会让命名混淆,便于可读。 123456# sqpt/models/__init__.pyfrom .hr3 import Request, Case, Config, Suite, Stepfrom .auth import Userfrom .base import CommonInfofrom .mgr import Environment, Project hr3.py 存放所有核心数据模型 mgr.py存放所有项目管理相关模型 1234567891011121314151617181920212223242526272829303132333435363 ...
一、判断1. if……else if …… else语法if(条件表达式){ 执行代码块;} else if (条件表达式) { 执行代码块;} else { 执行代码块;} 123456789101112131415161718192021// 引入 scannerimport java.util.Scanner;public class demo01{ public static void main(String[] args) { // 创建 scanner 对象 Scanner myScanner = new Scanner(System.in); System.out.println("请输入年龄"); int age = myScanner.nextInt(); if ( age >= 18 && age < 60){ System.out.println("他成年了"); }else if ( age >= 60) { S ...
一、 fixture1. fixture 详解fixture(scope='function',params=None,autouse=False,ids=None,name=None) scope:有四个级别参数”function”(默认),”class”,”module”,”session” params:一个可选的参数列表,它将导致多个参数调用fixture功能和所有测试使用它。 autouse:如果True,则为所有测试激活fixture func可以看到它。如果为False则显示需要参考来激活fixture ids:每个字符串id的列表,每个字符串对应于params这样他们就是测试ID的一部分。如果没有提供ID它们将从params自动生成 name:fixture的名称。这默认为装饰函数的名称。如果fixture在定义它的统一模块中使用,夹具的功能名称将被请求夹具的功能arg遮蔽,解决这个问题的一种方法时将装饰函数命 2. fixture 作用范围scope 参数可以控制fixture的作用范围: session > module & ...
一、 CSS 语法 及 注释1. 语法CSS规则有两个主要部分,一个 选择器 和 一个或多个 声明: 选择器:指定CSS规则适用于HTML页面中的哪个元素。 声明:决定了元素在网页上的格式。 每个声明都包含一个属性和一个值,这些值和值之间用冒号(:)分隔并以分号(;)结尾,并且声明组用花括号括起来{}。 注意: 虽然CSS属性名称和许多属性值都不区分大小写。但是CSS选择器是区分大小写,例如:.maincontent与.mainContent是两个不同的class类选择器,是区分大小写的。 2. 注释CSS注释以开头/*,以结束*/ 12345/* 这是一段注释 */p { font-size: 18px; text-transform: uppercase;} 二、 基础 选择器选择器是CSS最重要的方面之一,因为它们用于选择网页上的元素,以便可以设置样式。 1,基本选择器语法 选择器 类型 功能描述 * 通配选择器 选择文档中所有HTML元素 E 元素选择器 选择指定类型的HT ...