Object SolitaryHelper
-
- All Implemented Interfaces:
public class SolitaryHelper孤岛型测试辅助,目前依赖的环境最常用大概是 mysql,redis 所以目前就干这事儿 主要注意这些:
linux跑的时候 需要 yum -y install numactl 安装依赖库
在个人环境,缓存可以是个人目录,如果是ci服务器,缓存目录会安装在/mysql 切记将这个目录加入到缓存中。
CJ
-
-
Field Summary
Fields Modifier and Type Field Description public final static SolitaryHelperINSTANCE
-
Method Summary
Modifier and Type Method Description final static Closeablemysql(Version version, Function<MysqldConfig.Builder, MysqldConfig.Builder> serverConfigBuilderFunction, SqlScriptSource initScripts)启动 mysql 会因此产生几个新增的系统属性 mysql.port
mysql.host
mysql.database
mysql.username
mysql.password
final static RedisServerEntryredis(String noEmptyButCanBeNullPassword)完成后以下系统属性会被设置 redis.port
redis.password
final static RedisServerEntrycreateRedisWithPort(String noEmptyButCanBeNullPassword, Integer port)final static RedisServerEntrycreateRedis(String noEmptyButCanBeNullPassword)final static CloseablecreateMysqlOrProvided(Version version, Function<MysqldConfig.Builder, MysqldConfig.Builder> serverConfigBuilderFunction, SqlScriptSource initScripts)环境提供数据库的环境变量命名标准是: provided_mysql_host(必须)
provided_mysql_port 默认 3306
provided_mysql_database(必须)
provided_mysql_username 默认 root
provided_mysql_password 默认 空
final static CloseablecreateMysql(Version version, Function<MysqldConfig.Builder, MysqldConfig.Builder> serverConfigBuilderFunction, SqlScriptSource initScripts)创建指定版本的 mysql 实例 以下系统属性肯定会被设置: mysql.port
mysql.host
mysql.username
mysql.password
mysql.database
final static DataSourcecurrentMysqlDatasource()-
-
Method Detail
-
mysql
final static Closeable mysql(Version version, Function<MysqldConfig.Builder, MysqldConfig.Builder> serverConfigBuilderFunction, SqlScriptSource initScripts)
启动 mysql 会因此产生几个新增的系统属性
mysql.port
mysql.host
mysql.database
mysql.username
mysql.password
- Parameters:
version- 数据库版本,默认Version.v5_7_latest,可选serverConfigBuilderFunction- 协助构建服务配置,默认就是中国时区,可选initScripts- 启动时应该执行的脚本,可选
-
redis
final static RedisServerEntry redis(String noEmptyButCanBeNullPassword)
完成后以下系统属性会被设置
redis.port
redis.password
- Parameters:
noEmptyButCanBeNullPassword- 可null但不可为空字符串的预设密码
-
createRedisWithPort
final static RedisServerEntry createRedisWithPort(String noEmptyButCanBeNullPassword, Integer port)
-
createRedis
final static RedisServerEntry createRedis(String noEmptyButCanBeNullPassword)
-
createMysqlOrProvided
final static Closeable createMysqlOrProvided(Version version, Function<MysqldConfig.Builder, MysqldConfig.Builder> serverConfigBuilderFunction, SqlScriptSource initScripts)
环境提供数据库的环境变量命名标准是:
provided_mysql_host(必须)
provided_mysql_port 默认 3306
provided_mysql_database(必须)
provided_mysql_username 默认 root
provided_mysql_password 默认 空
如果环境提供了 mysql 则优先使用(当然无法再管理) 没有的话则继续沿用createMysql,其系统属性协议与createMysql 保持一致
- Since:
1.1.0
-
createMysql
final static Closeable createMysql(Version version, Function<MysqldConfig.Builder, MysqldConfig.Builder> serverConfigBuilderFunction, SqlScriptSource initScripts)
创建指定版本的 mysql 实例 以下系统属性肯定会被设置:
mysql.port
mysql.host
mysql.username
mysql.password
mysql.database
-
currentMysqlDatasource
final static DataSource currentMysqlDatasource()
- Returns:
如果这里成功创建过 mysql,这个方法就可以获得一个有效的 datasource
-
-
-