• 0
  • 1
分享

  送你一套免费的性能测试框架搭建的课程!省下的300块,去吃一顿热气腾腾的火锅吧!点击下方链接,答问卷,领课程。链接:http://vote.51testing.com/


  研究背景

  对于大数据测试和数据库测试,经常会同MySQL、ES等数据库“打交道”。对于测试人员来说,MySQLMySQL语法简单易懂、上手方便,但是ES语法相比之下第一眼就会让人觉得“抓脑壳”(那么多字,键盘都得敲坏)。

  那有没有什么工具,安装方便、使用简单、具有一定可视化效果,且能够直接使用MySQL语法查询的呢?那当然有了,安排!

  这里给大家介绍两款操作ES的chrome插件工具:elasticsearch-head和elasticsearch-sql。可以满足大部分测试人员的测试工作需求,且安装方便、使用简单。

  工具

  elasticsearch-head

  elasticsearch-head的最大优点在于可视化操作,操作简单,结果一目了然。

  安装方式(推荐chrome插件方式)

  1)通过chrome应用商店一键安装Elasticsearch-head插件(中文官网地址:https://chrome.google.com/webstore?hl=zh-CN,英文官网地址:https://chrome.google.com/)。

  2)当存在无法访问chrome应用商店的时候,我们可以选择下载插件包的,植入chrome拓展程序文件的形式。

  首先,从https://github.com/mobz/elasticsearch-head下载zip包(如下图所示);

  其次,解压下载的压缩包;

  最后,打开chrome更多工具—>扩展程序—>加载已解压的扩展程序即可。

1.png

  使用方法

  点击chrome浏览器扩展程序即可使用。

  支持功能

  1)ES集群概览

  如下图3所示,支持集群按照“地址排序”、“名称排序”、“类型排序”,支持索引升、降排序,支持索引搜索等。

  此外还可点击索引的信息查看索引状态、索引信息,以及关闭、删除、刷新索引等操作。

2.png

  2)索引

  如下图所示,支持索引概览、新建索引。

3.png

  3)数据预览

  如下图所示,支持数据预览,点击索引名即可预览该索引数据。

4.png

  4)基本查询

  如下图所示,支持单个索引的单字段值或多字段值联合查询,支持算子term、range、fuzzy、query_string、missing,返回格式支持json、csv以及table。

5.png

  5)复合查询

  如下图所示,支持POST、GET、PUT、HEAD等REST请求,结果显示支持原始json、图形视图和表格视图。

6.png

  elasticsearch-sql

  elasticsearch-sql的优点在于可以将MySQL的基本语法转换成ES语法直接查询,降低了ES语法的学习成本。

  安装方式(推荐chrome插件方式)

  同elasticsearch-head一样,可以通过源码地址下载(https://github.com/shi-yuan/elasticsearch-sql-site-chrome)插件压缩包,解压后,导入浏览器扩展程序即可。

  支持功能

  1)基本SQL操作

7.png

  2)地理位置查询

8.png

  3)拓展ES查询功能

9.png

  4)有限的join查询支持

  ES不支持join查询,但elasticsearch-sql提供了部分join操作,包括JOIN和LEFT_JOIN。但值得注意的是:

  只有支持2 个表(索引/类型)加入join;

  在“ON”上,您能使用“AND”连接;

  您必须为表使用别名(acounts a )。

  在 Where 上,不要组合两个表的决策树。

  例如,这将起作用:WHERE (a.key1>3 OR a.key1<0) AND (b.key2 > 4 OR b.key2<-1),但我们不支持:WHERE (a.key1>3 OR b.key2<0) AND (a.key1 > 4 OR b.key2<-1)。

  5)show功能

  show可以展示集群和索引的细节,例如:show *可以显示所有索引,show index可以展示索引的类型等信息。

  使用方法

  点击chrome扩展程序elasticsearch-sql打开ui页面,在文本框输入SQL语句即可。如:

  1)直接SQL语法查询

  使用show语法展示索引细节:

10.png

  使用join查询:

11.png

  2)翻译SQL语法为ES语法

  在文本框输入SQL语句,点击“Explain”即可翻译为ES语句,Results会显示翻译结果,例如:

12.png

  3)其他功能

  elasticsearch-sql的界面功能还支持查询结果下载(ExportCSV)、查询结果搜索(Search)以及其他设置(Show Settings)等。

  总结

  elasticsearch-head和elasticsearch-sql是两款小巧方便的工具,可以作为chrome插件使用,可视化的特点能够满足大部分人对ES的简单操作,此外elasticsearch-sql可以降低测试人员的学习成本,只需要简单的SQL语法即可完成ES数据库操作。

  但是,它们自身也存在一定的局限性。例如:elasticsearch-sql针对复杂的SQL语句,尤其是嵌套语句或包含子查询的语句,就显得捉襟见肘。

  希望本文的介绍能帮助你简单认识这两个小工具~



作者:刘晓佳Rachel    

来源:http://www.51testing.com/html/98/n-7793798.html


  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   我经常与一些客户打交道,他们的测试自动化要么刚刚开始,要么正在努力成长,而且他们常常都犯同样的致命错误。  虽然他们可能了解测试自动化的基础知识,但是他们仍然认为脚本化测试的价值在于通过自动执行脚本而不是手工执行来节省时间。他们的理由是,如果自动化脚本执行速度比人类执行速度快,那么最大的效率收益应该来自于自动化运行时间最长的测试。  如果执行时间是衡量价值的唯一时间,那么他们是对的。  但是测试执行时间只是一个与时间相关的问题,还需要考虑编写自动化测试所需的时间,以及学习如何编写测试所需的时间。当团队将大型测试简化为更小、更短的测试时,他们更容易取得成功,你可以从这个非常识性的想法中获益。...
            0 0 813
            分享
          •   Web应用程序的验收测试常常涉及一些手工任务,例如打开一个浏览器,并执行一个测试用例中所描述的操作。但是手工执行的任务容易出现操作人员人为的错误,花费的时间成本也比较多。因此,将这些任务自动化,就可以消除人为因素。Selenium可以帮助我们自动完成验收测试,通过构建更严格的测试,从而使软件更为可靠也更易于维护。  Selenium 测试框架及用例编写。  Selenium是什么?  Selenium 是用于测试 Web 应用程序用户界面 (UI) 的常用框架。它是一款用于运行端到端功能测试的超强工具。您可以使用多个编程语言编写测试,并且 Selenium 是能够在一个或多个浏览器中执行这...
            0 0 1000
            分享
          •   51Testing测试行业调查问卷得不得填一下吧。这套问卷能够对未来的行业发展趋势做出权威的分析,只要点击链接参与,还能获得实用软件测试资料。链接:http://vote.51testing.com/  最近发生了一起生产事故,究其根源,事故本身属于架构或者需求层面需要规避的问题,测试人员的责任其实是非常小的,但实际情况是:相关测试人员因此承担了很大的压力,成为质量问题的“背锅侠”。  实际上,测试人员一直处于“背锅侠”的处境,今天就来聊聊,测试人员究竟背了哪些锅?  测试背的第一层锅:产品不能如期交付的锅  我们知道,产品交付排期一般是固定的,很多时候,我们在这个基础上,进行开发测试排期...
            0 0 813
            分享
          •   试图分一杯羹的不止高通公司的 Snapdragon X Elite。此前有传言称,华为正在开发苹果M系列处理器的竞争对手,以抢夺苹果基于 ARM 芯片组的市场份额。根据最新消息,这家中国公司正在使用泰山 V130 架构批量生产一款芯片,其多核性能将接近 M3。  消息称,新的麒麟 PC 芯片可能会分为更强大的版本,类似于苹果的"Pro"和"Max"版本。  微博爆料人@定焦数码并未提供该芯片的确切名称,他将其称为"麒麟 PC 芯片"。不过,他表示,除了多核性能接近 M3 之外,这款未命名的华为 SoC 还配备了 Mali-920 ...
            0 0 978
            分享
          •   测试周报则是反映团队工作进展和专业态度的一扇窗口。通过周报,我们不仅可以展示一周内的工作成果,更可以体现团队的工作心态——是积极进取、不断学习的成长型心态,还是仅仅满足于现状、缺乏动力的躺平型心态。本文将带您深入了解这两种不同心态下的工作表现,并探讨如何通过拆分思想来应对进度统计的挑战。  包括内容如下:  一、2种不同心态周报  在撰写测试周报时,可以体现出不同的工作心态,如成长型心态和躺平型心态。以下是这两种心态在测试周报中的体现:  成长型心态的测试周报体现  积极学习与自我提升: 在成长型心态的测试周报中,作者通常会展现出对新知识的渴望和对技能提升的持续追求。本周,我们深入研究了自...
            0 0 313
            分享
      • 51testing软件测试圈微信