test

MySQL5.7特性:JSON数据类型

谁说胖子不能爱 提交于 2020-04-07 10:52:00
概述 MySQL5.7的发行声明中,官方称之为里程碑式的版本,除了运行速度大幅度提升之外,还添加了之前版本没有的功能,如本文所述的原生JSON数据类型功能。 在此版本之前,MySQL所有的JSON数据类型,全部是使用text等文本类型来实现的,数据的处理只能在应用代码级来实现,十分不方便。 什么是JSON类型 作为DBA,可能会对这个概念稍微有点陌生,但是对于开发者来说,这是一个十分熟悉的事物。 JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。 MySQL原始JSON类型的优势在哪? 原生的JSON优势如下: 存储上类似text,可以存非常大的数据。 存储在JSON列中的JSON文档的自动验证 。无效的文档会产生错误。 优化的存储格式。存储在JSON列中的JSON文档将 转换为内部格式,以允许对文档元素进行快速读取访问。 相比于传统形式,不需要遍历所有字符串才能找到数据。 支持索引:通过虚拟列的功能可以对JSON中部分的数据进行索引。 MySQL的JSON类型

【测试之道】深入探索:单元测试之异常测试

孤人 提交于 2020-04-07 10:26:03
相关文章 深入探索:单元测试之Test runners 深入探索:单元测试之基于 suites 的聚合测试 深入探索:单元测试之测试执行顺序 深入探索:单元测试之异常测试 深入探索:单元测试之Ignnore测试和TimeOut测试 深入探索:单元测试之Categories 深入探索:单元测试之Assertions 预期异常 如果我们测试知道这个方法是要抛出异常才是我们所期望的,不然就是测试失败,我们要如何验证呢?验证码完成通常是重要的,但是确保代码在特殊情况下的行为(如:异常,状态,超时,etc)同样重要。 举个例子: new ArrayList<Object>().get(0); 这无疑无抛出IndexOutOfBoundsException,简称IOOBE。在@Test注解中,存在一个 excepted 参数,可以知道方法会抛出我们预期的异常。如果我们想去验证 ArraryList 抛出正确的异常,我们可以这样写: @Test(expected = IndexOutOfBoundsException.class) public void empty() { new ArrayList<Object>().get(0); } 这个 excepted 参数应该是我们所应该关心的,如果这个执行方法抛出IOOBE,那么这个方法将会通过测试。是不是用起来很简单,很爽。然而

Genkins git远程分支代码拉取 (四)

为君一笑 提交于 2020-04-07 10:12:03
1.远程拉取gitlab 工程分支,并在本地建立分支 具体过程 新建一个空文件 初始化 git init 自己要与origin master建立连接(下划线远程仓库链接) git remote add origin http://192.168.9.10:8888/root/game-of-life.git 把远程分支拉到本地(game-of-live-first_branch为远程仓库的分支名) git fetch origin game-of-live-first_branch 在本地创建分支game-of-live-first_branch并切换到该分支 git checkout -b game-of-live-first_branch origin/game-of-live-first_branch 把game-of-live-first_branch远程分支上的内容都拉取到本地 git pull origin game-of-live-first_branch 2.修改分支的内容并上传给远程分支 3.如果想在linux中拉取远程分支代码 [root@localhost rollBack]# git init Initialized empty Git repository in /test/rollBack/.git/ [root@localhost rollBack]#

【测试之道】深入探索:单元测试之基于 suites 的聚合测试

陌路散爱 提交于 2020-04-07 08:57:02
相关文章 深入探索:单元测试之Test runners 深入探索:单元测试之基于 suites 的聚合测试 深入探索:单元测试之测试执行顺序 深入探索:单元测试之异常测试 深入探索:单元测试之Ignnore测试和TimeOut测试 深入探索:单元测试之Categories 深入探索:单元测试之Assertions Suite 是JUnit4.12 的标准runner 之一,它允许你每次测试都能包含很多的类。它是在JUnit4中才开始被引入的,相当于JUnit3.8.x 的 ** static Test suite()** 方法。 使用@RunWith(Suite.class) 和 @SuiteClasses(TestClass1.class, ... ) 来注解一个类。 当你运行这个类, 他会运行@Suite.SuiteClasses( { .... })中包含的全部测试类。 举例 下面会有序的执行@Suite.SuiteClasses 中的全部 Class 。 mport org.junit.runner.RunWith; import org.junit.runners.Suite; @RunWith(Suite.class) @Suite.SuiteClasses({ TestFeatureLogin.class, TestFeatureLogout.class,

【测试之道】深入探索:单元测试之Ignnore测试和TimeOut测试

廉价感情. 提交于 2020-04-07 08:54:48
相关文章 深入探索:单元测试之Test runners 深入探索:单元测试之基于 suites 的聚合测试 深入探索:单元测试之测试执行顺序 深入探索:单元测试之异常测试 深入探索:单元测试之Ignnore测试和TimeOut测试 深入探索:单元测试之Categories 深入探索:单元测试之Assertions Ignoring tests 如果出于某种原因,您不希望测试失败,您只希望它被忽略,您暂时禁用一个测试。可以在方法上使用@Ignnore 注解。 ignore 一个测试在JUnit中是可以编辑评论的一种测试方法使用@Ignore注解,或者,删除@Test注解;但是测试的时候就不会报告有这个测试方法。然而,你在@Test前或后添加 @Ignore 注解,测试的runners,可以报告有多少个被忽略的测试方法,以及运行的测试数量和失败的测试数量,忽略这个测试方法。 注意:@Ignore 可以有一个可以选择的参数,你可以记录为什么y @Ignore("Test is ignored as a demonstration") @Test public void testSame() { assertThat(1, is(1)); } Timeout for tests 测试“失控”或占用太长时间,可能会自动失败。有实施该行为的两个选项: 在 @Test 参数中设置超时时间

Unittest框架

限于喜欢 提交于 2020-04-07 08:00:23
import unittest from assertpy import assert_that """ Testcase: 一个TestCase的实例就是一个测试用例。什么是测试用例呢?就是一个完整的测试流程,包括测试前准备环境的搭建(setUp), 执行测试代码 (run),以及测试后环境的还原(tearDown)。元测试(unit test)的本质也就在这里,一个测试用例是一个完整 的测试单元,通过运行这个测试单元,可以对某一个问题进行验证。 Test suite: 多个测试用例集合在一起,就是TestSuite,而且TestSuite也可以嵌套TestSuite。 Test runner: 是来执行测试用例的,其中的run(test)会执行TestSuite/TestCase中的run(result)方法。 TestLoader: 是用来加载TestCase到TestSuite中的,其中有几个loadTestsFrom__()方法,就是从各个地方寻找TestCase,创建它们的实例, 然后add到TestSuite中,再返回一个TestSuite实例。 Test fixture: 对一个测试用例环境的搭建和销毁,是一个fixture,通过覆盖 TestCase的setUp()和tearDown()方法来实现。 这个有什么用呢?比如说在这个测试用例中需要访问数据库

黑马程序员--java基础加强之反射(Reflection)

℡╲_俬逩灬. 提交于 2020-04-07 06:56:36
------- android培训 、 java培训 、期待与您交流! ---------- 反射 一、反射的基石-->Class类 1、java类的作用:是用来描述一类事物的共性,有什么属性,没有什么属性,至于属性的值是什么,则由这个类的实例对象来确定的,而不同的 实例对象就有不同的属性值。 2、Class类的产生:java程序中的各个java类也属于同一类事物,所以也可以用一个类来描述这些事物,这个类就是Class。 例如:众多的人需要建一个Person类,同理众多的类需要建一个Class类。 二、Class类介绍 1、创建Class类的的引用:Class class = 字节码(Person.class); 字节码:每个类编译后会产生一个.class文件,该文件就是字节码。 1)类名.class,如:System.class; 2)对象.getClass(),如:new Date().getClass(); 3)Class.forName("类名"),如:Class.forName("java.lang.String"); 该方法在反射中常用,用时将类名作为变量传入。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 public class ReflectionClass { public static

用户管理相关配置文件及命令-1

别来无恙 提交于 2020-04-07 05:50:56
本文索引: 用户配置文件 /etc/passwd 密码配置文件 /etc/shadow 用户组管理 创建组 groupadd 删除组 groupdel 用户管理 新增用户 useradd 删除用户 userdel 扩展知识 实用命令行工具 rz:win -> linux sz: linux -> win 用户配置文件 /etc/passwd 该文件每行代表一个用户,每行由 7 个字段组成,用 冒号 分割。 [root@localhost ~]# head /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt mail:x:8:12:mail:/var/spool/mail:/sbin/nologin uucp:x:10:14:uucp:

ubuntu中mysql的操作和安装

给你一囗甜甜゛ 提交于 2020-04-07 05:27:42
  ubuntu上安装mysql非常简单只需要几条命令就可以完成。    1. sudo apt-get install mysql-server   2. sudo apt-get isntall mysql-client   3. sudo apt-get install libmysqlclient-dev   登陆mysql数据库可以通过如下命令:   mysql -u root -p 使用mysqladmin 命令设置用户密码: mysqladmin -u root password "passwd" MySQL添加用户、删除用户与授权 MySql中添加用户,新建数据库,用户授权,删除用户,修改密码(注意每行后边都跟个;表示一个命令语句结束): 1.新建用户   1.1 登录MYSQL:   mysql -u root -p   密码   1.2 创建用户:    mysql> insert into mysql.user(Host,User,Password) values("localhost","test",password("1234"));   这样就创建了一个名为:test 密码为:1234 的用户。    注意:此处的"localhost",是指该用户只能在本地登录,不能在另外一台机器上远程登录。如果想远程登录的话,将"localhost"改为"%"

MyBatis-plus

▼魔方 西西 提交于 2020-04-07 04:17:59
本篇基于MP 3.3.0 版本 ,spring boot 方式。 MyBatis-plus 简介:    MyBatis-Plus (简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。   特性 无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑 损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作 强大的 CRUD 操作:内置通用 Mapper、通用 Service,仅仅通过少量配置即可实现单表大部分 CRUD 操作,更有强大的条件构造器,满足各类使用需求 支持 Lambda 形式调用:通过 Lambda 表达式,方便的编写各类查询条件,无需再担心字段写错 支持主键自动生成:支持多达 4 种主键策略(内含分布式唯一 ID 生成器 - Sequence),可自由配置,完美解决主键问题 支持 ActiveRecord 模式:支持 ActiveRecord 形式调用,实体类只需继承 Model 类即可进行强大的 CRUD 操作 支持自定义全局通用操作:支持全局通用方法注入( Write once, use anywhere ) 内置代码生成器:采用代码或者 Maven 插件可快速生成 Mapper 、 Model 、 Service 、 Controller 层代码,支持模板引擎