静态测试

实例方法、类方法和静态方法

耗尽温柔 提交于 2020-04-08 13:58:07
Python中常用的三种方法: 1. 实例方法 (常见函数) 2. 静态方法 (@staticmethod) 3. 类方法 (@classmethod) 实例方法 定义:第一个参数必须是实例对象,该参数名一般约定为“self”,通过它来传递实例的属性和方法(也可以传类的属性和方法); 调用:只能由实例对象调用。 类方法 定义:使用装饰器@classmethod。第一个参数必须是当前类对象,该参数名一般约定为“cls”,通过它性来传递类的属和方法(不能传实例的属性和方法); 调用:实例对象和类对象都可以调用。 静态方法 定义:使用装饰器@staticmethod。参数随意,没有“self”和“cls”参数,但是方法体中不能使用实例的任何属性和方法,使用类的属性和方法需要使用类对象引用; 调用:实例对象和类对象都可以调用。 一、区别    二、代码示例    #!/usr/bin/env python # -*- coding:utf-8 _*- __author__ = '池偏一' ''' @author:shz @license: Apache Licence @file: testargs.py @time: 2018/06/19 @site: @software: PyCharm ''' import sys reload(sys) sys.setdefaultencoding

Java设计模式-单例模式的7种写法详解(上)

余生颓废 提交于 2020-01-30 10:11:31
Java设计模式-单例模式的7种写法详解(上) 参照B站尚硅谷官方视频资源:https://www.bilibili.com/video/av57936239?p=33 文章目录 Java设计模式-单例模式的7种写法详解(上) 0.前言 1.饿汉式(静态常量)实现单例模式 1.1 实现步骤 1.2 具体编码 1.3 测试验证 1.4 阶段小结 2.饿汉式(静态代码块)实现单例模式 2.1 实现步骤 2.2 具体编码 2.3 测试验证 2.4 阶段小结 3.懒汉式(线程不安全)实现单例模式 3.1实现步骤 3.2具体编码 3.3测试验证 3.4阶段小结 4.懒汉式(线程安全,同步方法)实现单例模式 4.1实现步骤 4.2具体编码 4.3测试验证 4.4阶段小结 5.一种错误的写法:懒汉式(同步代码块) 5.1实现步骤 5.2具体编码 5.3测试验证 5.4阶段小结 0.前言 单例模式: 确保此类只有一个实例,并提供获取实例的方法。 作用: 可以保持在一个应用程序生命周期内,所引用对象的实例均为同一个 使用场景:例如工具类,使用了单例模式后,可避免重复创建实例造成的资源浪费。 单例模式分为以下7种: 饿汉式(静态常量) 饿汉式(静态代码块) 懒汉式(线程不安全) 懒汉式(线程安全,同步方法) 双重检查 静态内部类 枚举 也可说是5种,只是懒汉饿汉各自又有2种不同的实现方式。

django使用静态文件

烂漫一生 提交于 2020-01-22 04:08:41
  首先说这里我讲的是测试时候的,并不是部署时候的内容(因为我还没有测试)。 1.在setting.py文件里面,修改: 在STATICFILES_DIRS 里面添加你的静态文件目录,这里相对目录即可,比如我放的是:'static/'2.在你的项目里面,递归创建你的静态文件:比如我的:prjectroot/static/css/base.css3.在projectroot目录下运行:python manage.py collectstatic 4.使用的时候,在你的模板文件里面添加一句即可: <head>   <link href="/static/css/base.css" rel="stylesheet" type="text/css"> </head>   注意:不在在setting.py里面编辑STATIC_ROOT内容,引文它已经提示给你了: Don't put anything in this directory yourself; store your static files in apps' "static/" subdirectories and in STATICFILES_DIRS 来源: https://www.cnblogs.com/slider/archive/2012/06/26/2563153.html

测试markdown

試著忘記壹切 提交于 2020-01-08 14:49:38
引言 部署 发生gas但看见阿拉基爱过后阿里加了个哈罗咖喱火锅拉市纪委IE人哈嘎两年来 查的出 擦上档次 cadsc 嗷嗷的阿达adac 擦上档次 擦上档次 1、 接口 www.coolpoker.cn/assess?round=&position=&self_cards=&public_cards&chips=&public_chips=&self_chips= 2、参数介绍 round:int,范围0~3 position:int,范围0~7,0代表dealer 牌的标识: 1~13分别为A23456789TJQK 梅花(Clubs):c,方片(Diamonds):d,红桃(Hearts):h,黑桃(Spades):s 比如2c代表梅花2,Ah地表红桃A self_cards:string,自己的手牌,比如5d7h,代表方片5和红桃7两张牌 public_cards:string,代表当前的公牌,格式同上 chips_index: uint,当前round是第几次加注,大于0 chips:int,跟注的筹码数 public_chips:int,底池的筹码数 self_chips:int,自己手中的筹码数 3、返回结果 json格式 { "ret_code": 0, // 接口正常返回0,只有在该字段为0的情况下才能按其它字段操作 "ret_msg": "ok", "op": 0

为什么静态变量被认为是邪恶的?

一曲冷凌霜 提交于 2020-01-07 04:22:12
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 我是一位Java程序员,对公司领域来说是新手。 最近,我已经使用 Groovy 和Java开发了一个应用程序。 我编写的所有代码都使用了大量的静态变量。 高级技术人员要求我减少使用的静电数量。 我已经在谷歌上搜索了相同的内容,并且发现许多程序员都反对使用静态变量。 我发现静态变量更易于使用。 而且我认为它们也是有效的(如果我错了,请纠正我),因为如果我必须对一个类中的函数进行10,000次调用,我将很高兴使该方法静态化并使用简单的 Class.methodCall() ,而不是使该类的10,000个实例混乱,对吗? 而且,静态函数减少了对代码其他部分的相互依赖。 他们可以充当完美的国家拥有者。 除此之外,我发现在诸如 Smalltalk 和 Scala的 某些语言中广泛实现了静态方法。 那么,为什么在程序员中(尤其是在Java世界中)普遍存在对静态的这种压迫? PS:如果我对静态的假设是错误的,请纠正我。 #1楼 如果您使用的是'static'关键字,而没有'final'关键字,则这应该是仔细考虑您的设计的信号。 甚至“最终”的存在也不是免费通行证,因为可变的静态最终对象可能同样危险。 我估计大约有85%的时间会看到“静态”而没有“最终”,这是错误的。 通常,我会发现奇怪的解决方法来掩盖或隐藏这些问题。

黑马Java就业班学习day01

孤街醉人 提交于 2019-12-17 06:06:31
. 继承 1.1 继承的实现(掌握) 继承的概念 继承是面向对象三大特征之一,可以使得子类具有父类的属性和方法,还可以在子类中重新定义,以及追加属性和方法 实现继承的格式 继承通过extends实现 格式:class 子类 extends 父类 { } 举例:class Dog extends Animal { } 继承带来的好处 继承可以让类与类之间产生关系,子父类关系,产生子父类后,子类则可以使用父类中非私有的成员。 示例代码 public class Fu { public void show() { System.out.println(“show方法被调用”); } } public class Zi extends Fu { public void method() { System.out.println(“method方法被调用”); } } public class Demo { public static void main(String[] args) { //创建对象,调用方法 Fu f = new Fu(); f.show(); ​ Zi z = new Zi(); z.method(); z.show(); } } 1.2 继承的好处和弊端(理解) 继承好处 提高了代码的复用性(多个类相同的成员可以放到同一个类中) 提高了代码的维护性

微服务测试之静态代码扫描

本秂侑毒 提交于 2019-12-11 21:02:58
静态代码扫描为整个发展组织增加价值。无论您在开发组织中发挥的作用如何,静态代码扫描解决方案都具有附加价值,拥有软件开发中所需要的尖端功能,最大限度地提高质量并管理软件产品中的风险。 背景 微服务架构模式具有服务间独立,可独立开发部署等特点,独立开发诱发了技术上的分离,HTTP通信增加了问题诊断的复杂度,对系统的功能、性能和安全方面的质量保障带来了很大的挑战。 “ 微服务架构对测试的挑战 微服务架构模式下多个独立业务服务同时开展开发工作,每个系统都有各自的业务范围和开发周期要求,这样一来,下图所示的传统流程中产品经理提供需求,需求人员进行需求分析、开发人员进行开发,最后交给测试人员进行测试的方法,就无法满足测试覆盖和测试效率的要求。 相对于传统的单体模式而言,微服务模式下对测试带来的挑战总结起来包括以下内容: 1. 微服务系统模块层次化,需要保证模块内部代码的质量。这种场景下传统的端到端的测试无法满足测试要求; 2. 需要保证各个微服务系统内部模块间的正确性。系统模块间以及前端和后端通常会同时开展开发工作,模块间或者前后端通过接口(通常是Restful http接口)进行连接,而模块和后端往往没有界面,为了保证各个系统单个依赖系统的正确性,因此需要借助Mock技术隔离依赖的前提下进行接口级的测试; 3. 需要保证微服务系统中的接口一致性,即契约的一致性

嵌入式设备软件开发测试的关键技术 – 静态分析

大憨熊 提交于 2019-12-11 14:54:59
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 最近 Parasoft 做过一个关于测试工具尤其是静态分析技术的调查报告,收集大家对于测试工具的使用印象和技术总结。其中有一个经验丰富的资深软件工程师Brian,他在静态分析工具上颇有经验,但他反馈的结果是这些工具报告的很多问题总是类似“编译器警告”,并非绝对的潜在漏洞(bug)或软件缺陷。深入沟通交流后发现,他的这些印象最主要的原因是因为他所采用的测试工具大部分是免费软件,而且所接受的相关培训很多时候仅限于网络论坛,这样带来的结果必然是测试工具并不能实际解决问题,反而用于学习工具的时间超过了实际解决问题的时间,这有些本末倒置了。 所以,测试工具的要求(尤其是静态分析技术)除了通常大家所知的自动化属性,其实还需要更多考量测试报告结果的度量性和有效性,以用户角度去帮助客户快速应用先进测试技术并解决代码问题。众所周知,嵌入式行业的软件复杂性高,设计的平台丰富,各种不同的芯片和架构,纷繁的编译器种类等等。这必然要求一个成熟的开发测试平台体系,以及专业的技术支持服务,尤其是对于嵌入式行业。 静态分析结果的有效性 各大嵌入式行业如医疗、汽车、铁路、航空航天等的软件开发者每天都可能会遇到校验软件问题(bug)的有效性挑战,接受从客户、技术支持团队及质量测试部门的反馈结果并及时调查给予响应。对于开发人员来说

在Eclipse里静态导入

六眼飞鱼酱① 提交于 2019-12-06 18:46:36
在Eclipse里静态导入 在Eclipse里配置静态导入 常用的静态导入方法如下: com.google.common.base.Preconditions com.google.common.base.Predicates com.google.common.collect.Iterables com.google.common.collect.Lists com.google.common.collect.Maps com.google.common.collect.Sets org.apache.commons.lang.StringUtils org.junit.Assert 静态导入配置后,写代码只需要 checkNotNull(sourceData); isBlank(a); assertEquals(“阿里巴巴测试公司”, “阿里巴巴测试公司”); 来源: oschina 链接: https://my.oschina.net/u/1266221/blog/747463

设计模式之代理模式

放肆的年华 提交于 2019-12-06 18:43:29
1. 定义 代理模式属于结构型模式,其本质就是给某个对象创建一个代理,通过代理对象从而实现对于被代理对象的访问和控制,即所谓的“中介”。关于代理模式的形象表述,比较典型的一个例子就是房东通过中介进行房子的出租,而租客通过中金进行租房子,租客不与房东直接接触,而是通过中介,中介在中间起到穿针引线的作用。其中,动态代理可以分为静态代理和动态代理。 2. 原则 从设计原则的角度出发,代理模式的使用主要遵循了中介隔离原则和开闭原则。 2.1 中介原则 顾名思义,“中介原则”即与“中介”的含义一致,指的是客户类与被代理类不直接接触,通过中介作用的委托类来实现,其主要特征是代理类与委托类都实现相同的接口。 2.2 开闭原则 所谓“开闭原则”,指的是对于扩展开放,对于修改关闭。充当“中介”作用的代理类除了实现委托类的基本功能以外,还会对于委托类增加额外的功能,即对委托对象进行扩展;但是代理类只是增加额外功能,并不会对于委托类进行修改,即没有对委托对象进行修改。代理类只是在委托类执行的前后增加额外的功能,比如加入缓存、日志等功能。 3. 静态代理 所谓静态代理,指的是在使用时,需要定义接口或者父类,静态代理类只是实现委托对象的接口或者继承委托对象的父类。 3.1 优缺点   其优点是可以在符合中介原则和开闭原则的基础上对于委托对象的功能进行扩展,并且不会改变委托类的功能。