博客/社区

专业提示:在质量保证中使用Grafana

2018年11月29日 4分钟

Andrejs KalnacsAndrejs Kalnacs - Evolution Gaming

质量保证是我们的首要任务进化游戏正如测试软件开发负责人Andrejs Kalnacs在3月份的GrafanaCon EU谈话中所说的那样,Grafana已经成为了游戏规则的改变者。

Kalnacs和他的团队发现Grafana在许多领域都是无价的,下面是他们在整个过程中学到的三个最佳实践。

1.将测试结果置于上下文中

Kalnacs的《Grafana》之旅始于一件简单的事情:Evolution想要测试游戏的加载速度。“我用了一些工具,创造了一个解决方案,然后我得到了一些数字,”他说。“但数字就是数字。如果没有背景,它们就没有多大意义。”他咨询了一些大数据专家,他们建议他将信息放入InfluxDB,并在Grafana中可视化。瞧!卡尔纳克斯说:“我们有一些图表,我们可以比较不同的产品,这样我们的产品所有者就可以看到新功能是如何影响bob手机app官网性能的。”“Grafana成为了讨论我们游戏表现的平台。”

2.实时监控性能测试

“有时性能测试可能很长;比如30分钟、1小时、4小时,甚至一天,”卡尔纳克斯说。“在这些测试进行时获得反馈非常重要。”Evolution团队广泛依赖开源Apache JMeter负载测试工具,因为它易于使用。通过它的GUI,您可以单击并创建一个测试。此外,出于Kalnacs的目的,它具有将数据导出到InfluxDB协议的本机支持。“我刚从www.tubolov.com/dashboards并将其添加到现有的测试中,在短短几分钟内,我已经得到了一些测试的实时结果,”他说。“在JMeter中,我们可以在测试运行时观察我们的系统在测试中的表现,这是一个非常好的功能。如果你有长时间的性能测试,那么你可以在它们运行时监控它们,甚至在它们完成之前就得出一些结论。”

Kalnacs补充说,为了获得更多的信息,可以很容易地在仪表板上添加更多的信息。“例如,你可以在这个图表上添加一些关键的性能指标,比如被测系统的CPU负载,这将为你提供更多的信息。”

Evolution使用的另一个流行性能工具是加特林该软件在其Frontline企业版中支持导出到时间序列数据库(如InfluxDB)。

3.测试执行数据可视化

Kalnacs说:“在我们持续集成的过程中,我们希望了解我们的测试之间运行的速度有多快。”

他指出,如果您正在使用Jenkins,则有一个InfluxDB Jenkins插件,该插件支持导出不同的数据,例如测试长度或失败率,或有关的信息JUnit机器人框架测试,或者静态分析工具CoberturaSonarQube,或Java代码覆盖库JaCoCo

实际上,有这么多不同语言的测试执行框架,所以他建议使用一种开源的、多语言测试报告工具魅力.“基本上,你可以用一种通用的方式从所有不同的测试中收集信息,而不需要依赖任何像Jenkins这样的持续集成系统,”他说。“对于任何CI服务器上的所有这些测试执行框架,它都以相同的方式工作。”

他说,使用Allure让他“有无数机会在Grafana中展示数据”。例如:他可以比较不同产品和不同测试的执行长度,“可能会得出这样的结论:如果测试运行20分钟,而有单个测试运行3分钟,那么这些bob手机app官网20分钟的测试可能太长了。”

总之,Kalnacs敦促每个人“与公司的每个人分享有关Grafana的知识,因为它可以以非常不同的方式使用,而不仅仅是用于监控生产。”

下面是Andrejs演讲的完整视频下载他的演讲幻灯片

视频:在质量保证中使用Grafana