基于性能的ci/cd平台构建评估与提升

cd_perf_promotion的Python项目详细描述


持续交付绩效提升工具

持续交付性能提升工具是一个python程序 用于评估应用程序性能是否足够好 在连续交付系统中转入下一阶段。这个 工具允许用户定义他们的应用程序应该如何执行 通过一个简单的json配置文件,然后计算 应用程序的实际性能与这些标准不符。目前, 程序支持appdynamics、blazemeter和webgetest,但目标是 支持其他负载测试工具,如SilkPerformer和Visual Studio 将来也会有测试套件。

开始

安装(基本)

  1. 运行pip install cd_perf_promotion
  2. 你完了!

安装(高级)

  1. 确保您有最新版本的python和pip 已安装,并且可以通过命令行界面运行 (客户端)。
  2. 下载源代码并使用cli导航到它。
  3. 在cd-perf-u promotion下载目录中,运行 python setup.py install开始安装。
  4. 应用程序将通过pip和 自行安装。现在您可以从cli运行该程序 通过命令cdperfpromotion
  5. 你完了!

定义你的晋升标准

您的config.json文件包含所有配置信息 该工具需要从性能工具中检索数据,并且 评估应用程序是否符合性能标准。 我们提供了一些示例配置文件(位于 documentation/sample_configs/input)帮助您开始。一个 可用于的所有可用数据项的完整列表 评估应用程序的性能以及 它们真正的意思是在 documentation目录。

我们做了很多工作来确保程序是模块化的 可自定义,这样就不必包含所有数据项 配置文件中存在的。相反,只包括工具 以及要包含的数据项。 任何未包含的内容都不会被评估。请注意 必须包含用于收集的工具的配置信息 定义的信息。例如,如果您想包括 应用程序的平均响应时间,还必须包括 具有BlazeMeter API密钥和测试ID的BlazeMeter部分。

评估结果

输出文件中的promotion_gatesjson对象包含 关于每个数据度量是否满足 配置文件目标。如果任何事务/运行有数据 不符合预定义性能目标的项,整个 数据项在promotion_gates节中标记为失败。如果 数据项失败,可以转到相应数据项的父级 工具并找出失败的地方和实际结果。

例如,示例配置文件config_all.json.sample 定义不得有任何违反AppDynamics运行状况规则的行为 严重性为警告("warning": true)或严重 ("critical": true)。不幸的是,输出文件, cdperfpromodata_timestamp_all.json.sample,中的状态 promotion_gates节此数据项失败 ("appdynamics_health": false)。知道了,我们可以上去看看 在appdynamics部分,它揭示了 评估中违反了运行状况规则,警告的严重性为 正在通知我们应用程序使用了太多内存。

需要注意的是,如果 配置文件失败,整个应用程序将失败且不会 被提升到下一阶段。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java StoredProcedureCall 1x Varchar输出1x游标输出   java StackOverflower运行时错误   算法Java基准测试:确保对象在超出范围后不被重用   java在SpringDataNeo4j中使用RelationshipEntity保存节点的正确方法是什么?   命令行参数设置登录java的属性   Java泛型AnyType,如何允许调用任何方法?   java如何检查Html字符串和字符串   sql如何插入一个日期,然后从java执行的存储过程中向oracle数据库中插入的日期添加小时、分钟和秒   java 安卓 3布局相同的活动   安卓应用程序中的java毕达哥拉斯   使用javaw在批处理文件中运行JAR的服务会在process explorer XYNTService中产生多个java进程   java需要在Derby中编写正确的查询   多线程Java在缓存中为多个线程保存变量   持久化java实体引用问题   java在SpringMVC应用程序中使用本地线程安全吗?   JavaSwing,100个文本字段都有类似的任务,所以我想写一个函数来完成这个任务   java我们在新字符串(“literal”)中放置的字符串文字发生了什么变化;   java注入需要在GUI中使用枚举的对象   在Spark SQL中加载JDBC表时java数据不正确