发布于2025-01-07 22:04 阅读(306) 评论(0) 点赞(17) 收藏(3)
以下是我的情况:
我有一个 Java 应用程序,它从数据库 D1 的表 T1 读取数据,处理数据并将其放入另一个数据库 D2 的另一个表 T2 中。这是实时发生的,即,当在表 T1 中插入或更新记录时,应用程序将选择数据、处理数据并将其推送到目标表。我希望使用测试(最好是 JUnit)和/或性能框架来监控此应用程序的性能。在我的测试用例中,我希望有以下内容
我希望创建的测试应该是
所以,我的问题是,测试这种情况的最佳方法是什么? 是否有可用的工具可以帮助我实现这一点?
数据库无关
为了实现这一点,我建议使用最简单的 SQL 和一些低级 JDBC 抽象层:
Commons DbUtils 库是一小组类,旨在简化 JDBC 的使用。JDBC 资源清理代码是单调乏味且容易出错的工作,因此这些类将所有清理任务从您的代码中抽象出来,让您专注于您真正想用 JDBC 做的事情:查询和更新数据。
MyBatis 是一流的持久性框架,支持自定义 SQL、存储过程和高级映射。MyBatis 消除了几乎所有的 JDBC 代码以及手动设置参数和检索结果的麻烦。MyBatis 可以使用简单的 XML 或注释进行配置,并将原语、Map 接口和 Java POJO(普通旧式 Java 对象)映射到数据库记录。
两者都能帮你解决问题。只要你足够注意细节,你就能提供足够灵活的解决方案,并测试尽可能多的数据库。
提供可以显示趋势并可使用 Jenkins 等 CI 工具进行配置的结果
定义几个KPI,并确保您可以定期获取所有值。例如,您可以测量吞吐量(每秒记录数)。定期导出数据(例如以 CSV 或属性的形式)并使用PlotPlugin进行可视化:
您还可以查看相关问题:如何在 Jenkins 矩阵项目中绘制基准数据
适当的测试
请确保您的测试策略明确,并且不会错过任何内容:
作者:黑洞官方问答小能手
链接:http://www.javaheidong.com/blog/article/694779/14b8f662bcf2f4923b06/
来源:java黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 java黑洞网 All Rights Reserved 版权所有,并保留所有权利。京ICP备18063182号-2
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!