sonarqube restfull api

sonarqube 提供了restfull api。 加入我的sonarqube部署到了 http://www.hissummer.com:9000/ 那么,可以直接通过访问 http://www.hissummer.com:9000/web_api/ 查看所有的api 文档。

常用的一些接口如下:

1. 搜索项目
/api/projects/search

2. 搜索指定的某个项目下的所有分析结果
/api/project_analyses/search?project=com.hissummer:test

3. 查看某一个扫描的结果指标值
如下就是获取 com.hissummer:test 该项目下的单元测试分支覆盖率和行覆盖率。
/api/measures/component?metricKeys=branch_coverage,line_coverage&component=com.hissummer:test

关于metrickeys可以通过该接口查询到所有的keys。

4. 查询所有的扫描指标metrickeys
/api/metrics/search

这样我们可以通过接口的方式获取项目的扫描结果,可以用来集成到我们自己内部的项目平台上进行结果展示使用。

navicat导出sql bit字段包含soh字符

在用mysql客户端工具导出或者拷贝成sql语句时,例如在使用navicat,导出的sql可以看到soh字符。

大家可以看到is_from_app = 后面是一个方框,因为这是一个不可见字符,用纯文本编辑工具打开时,会线程一个’soh’ 的占位符。 看了下表结构,is_from_app 是一个bit类型。 且这个值是1。 当是0时,这里显示的’\0’, 1的时候显示 SOH。
更多…

Jmeter用户自定义变量和脚本中var的关系以及处理

Jmeter有个配置元素叫做用户自定义变量(英文名称是User Defined Variables) 而我们提到的vars即是Variables 的简写。
之前我们也说到过Jmeter的脚本中(jsr223 sampler或者beanshell 编写的脚本) 使用vars put和vars get的操作(vars get和put的操作仅在threadgroup 测试组线程中执行,所以结果的改变也仅影响该threadGroup,所以不是跨线程组的。 需要跨线程组的的变量共享则可以使用prop, vars和props 的使用可见 vars和props使用对比1vars和props使用对比2 )。 那“用户自定义变量”和脚本中的vars 操作这2个关系是如何的呢?
更多…

代码行数覆盖和分支覆盖和条件覆盖的区别?

如何对白盒测试质量进行量化,通常就是使用代码覆盖。
line coverage(行数覆盖), branch coverage(分支覆盖),condition coverage(条件覆盖)到底有什么区别呢? 是否行数覆盖100%则意味着分支覆盖100%,条件覆盖100%呢? 如果条件覆盖100%,则是否意味着分支覆盖100%以及行数覆盖100%。

行覆盖,顾名思义代码行数(也可以成为statement 语句)的覆盖。
分支覆盖是指代码if else while等有条件导致的分支时,分支的覆盖情况。
条件覆盖(通常现代定义,例如sonarqube), 是指每一个分支条件表达式里,所有条件的覆盖。

那么我们回到这个问题。 是否行数覆盖100%则意味着分支覆盖100%,条件覆盖100%呢? 如果条件覆盖100%,则是否意味着分支覆盖100%以及行数覆盖100%。 借助这个问题,来更深入看看他们到底有什么区别。
下面举2个例子。
更多…

moco mock server多个配置文件

当我们的mockserver需要的配置项越来越多时, 就会导致该配置文件非常大,每次定位查找和修改时非常困难。 moco mock server支持多个配置文件。
moco 支持多个配置文件的方式有2种方式。
1) 直接启动时指定多个配置文件(不建议)

利用通配符的方式,可以将该目录下所有的*.json 配置文件集合到一起并运行mock server。 问题是,*.json 的顺序并不是严格的按照alphabet的顺序解析配置。 所以比较多的配置文件,对配置的顺序有严格的要求时,建议使用如下的方式。
更多…

bing必应怀疑又被“强”2019年已经多日无法访问

用户可以暂时使用 www2.bing.com 域名来访问必应搜索服务。

备注: 从昨天2019-01-23日开始,北京地区电信和联通运营商已经无法直接访问bing.com的搜索服务。 2019-01-25 日已经恢复正常。

linux下redis cluster部署

#同样的方法,在7001,7002,7003,7004,7005 里创建 redis.conf. 记住redis.conf 里面的port 需要分别改成 7001,7002,7003,7004,7005
#备注: 如果我们使用replicas=1的话, 需要最少6个节点。即7000-7005 6个nodes。 其中最少需要3个master 节点。如果replicas=0 的话, 只需要3个节点是可以部署的。
#开启6个tab ssh 登录。 分别 cd 7000,7001,7002,7003,7004,7005
更多…

vs code ide中vue代码如何去掉 invalid-end-tag 的lint错误

vs code ide中vue代码如何去掉 invalid-end-tag 的lint错误
更多…

个别服务器出现git clone提示需要密码或者无法连接的问题

因为代码仓库地址变更, 昨天在更新git remote url时, 发现一个诡异的问题: 在部分服务器上进行下拉代码时提示如下错误(更新remote url之后)。

我重新执行克隆操作也是同样的错误:
git clone ssh://[email protected]/ibg/ibg_test.git (git clone [email protected]:ibg/ibg_test.git “[email protected]:ibg/ibg_test.git” == “ssh://[email protected]/ibg/ibg_test.git” ) ,在某些机器上可以正确拉取到代码,某些机器上拉取时提示

更多…

vue&webpack升级后代码无法runtime运行和编译的解决

前一段时间重装了系统, 准备重新调试下之前开发的简单spa应用(vue)。 安装了最新的node后, 重新安装vue和相关webpack,结果发现再次runtime运行和编译都不太正常。 尝试升级了很多package后, 还是有一些莫名其妙的错误。 除了package的要升级外, 可能还存在因为升级更新导致的config需要修改的情况。

尝试手动升级并解决的过程中,碰到有很多错误,均需要一点点排查比较费工夫。

例如:

更多…