自动化测试高手课
柳胜
原甲骨文高级开发经理
16849 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 34 讲
开篇词 (1讲)
自动化测试高手课
15
15
1.0x
00:00/00:00
登录|注册

24|启动运行:基于Job模型的框架实现和运行

你好,我是柳胜。
今天是设计篇的最后一讲,从第十七讲到现在,我们围绕 Job 元数据模型讲了很多内容。毕竟,这个 Job 模型设计,是一个新的设计方法论,需要从模型推演、设计方法、不同场景的设计案例等各个方面来学习理解。虽然过程中有点像盲人摸象一样,但我们最后终于勾勒出了一个全面的理解。
不过,一种新的设计方法想要生根发芽,不光要在理论层面讲得通,还要让使用者轻松快速地掌握它,并且学以致用。沿着这个思路,今天我们把基于 Job 模型的框架实现梳理一遍,明确都需要实现什么,以及怎么实现。
经历了这个思考过程,对你把 Job 模型在团队里推广和使用大有帮助,而且对你去设计、推广自己的框架也同样适用。一个设计方法要在工作里落地,它就必须要和日常的设计活动,开发维护活动结合在一起,有 3 个关键场景:
1. 自动化测试设计的评审和交流(设计文档化);
2. 自动化测试设计和实现的一致性维护(设计代码化);
3. 自动化测试的报告呈现(结果可视化)。

Job 设计文档化

我们先从设计评审和交流说起,这离不开一份清晰易读的设计文档。在软件技术迅猛发展的今天,开发人员可以用 Swagger 来表达 API 的接口设计,运维人员可以用 YAML 来表达部署的方案,但测试人员却没有一个表达自动化设计的文档格式,真是遗憾
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

本文介绍了基于Job模型的框架实现和运行,强调了设计方法论的重要性,让使用者轻松快速地掌握并学以致用。作者详细讨论了基于Job模型的框架实现的三个关键场景:设计文档化、设计代码化和结果可视化。此外,还介绍了注解驱动机制和设计文件即运行文件两种实现思路。总的来说,本文内容涵盖了基于Job模型的框架实现和运行的关键要点,以及两种不同的实现思路,为读者提供了全面的技术视角和实践经验。文章还探讨了如何利用Job模型优化测试报告,满足不同角色的需求,以及数据可视化的方法。通过对传统测试报告和Job模型的比较,展示了Job模型在设计态、运行态和结果态下的数据采集、聚合和展现过程。整体而言,本文为读者提供了宝贵的技术指导和实践建议,对于自动化测试领域的创新和落地具有重要参考价值。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《自动化测试高手课》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(5)

  • 最新
  • 精选
  • 羊羊
    测试报告的对象有:项目经理,不同测试部门的主管,测试流程的管理人员,再到具体的自动化测试人员。每个角色关注的内容都不同,设计report之前,需要收集不同角色的需求: 项目经理比较关心项目总的情况,希望看到每个版本迭代的历史曲线图,case数量的曲线,bug(还需要细化到bug等级)数量的曲线,每个版本case pass/fail率的曲线等, 功能测试部门主要关注,case的自动化率,发现bug的数量,一轮regression的时间,自动化是否提高的regression的效率。 性能测试的报告,更是各式各样,要能看出版本迭代后的性能有没有下降。 测试流程的管理人员,要看每次regression的进度;自动化/手工测试的进度;bug情况,有没有critical的bug,用于判断是否要终止这个版本的迭代。 case owner 就是要看详细的执行过程,log,截图,有些case还需要录屏。 以前我们是用Django开发的测试平台,case的信息从测试用例管理系统获取,自动化的数据从代码管理系统获取,然后在mysql中做关联。每次case的执行都会向mysql中插入一条执行的动态数据,动态数据中有case静态数据的ID。最后根据这些信息,用Django的template+bootstrap+datatable做report。report可以一层一层进去,直到最详细的日志信息。

    作者回复: 谢谢分享,详细具体的实践,请编辑设置为精华!

    2022-08-03归属地:日本
    5
  • 微笑的起点
    看了老师的课程,受益匪浅,结合github JobFramework深入学习和实践,但是com.sheng.jobframework.observer.ObserverSubscriber 这个类在github中没有,辛苦老师看下

    作者回复: 加我微信sunshinelius,我发给你整体代码。

    2022-07-29归属地:日本
    1
  • swordman
    这一讲的信息量很大,花了不少的时间阅读。有两个问题:1. 能否介绍一下JobRunner调用TestJobFile.xml的实现思路,如果能举一个例子,讲一下JobRunner调用TestJobFile.xml,完成selenium实体job的测试用例调用流程,就更好了。2.在“我们再把 Job 的设计态、运行态、结果态理一遍。通过下图,你会更清楚地看到这个数据采集到聚合的过程。”下面,漏了一个比较重要的图。

    作者回复: 谢谢swordman,第一个问题,可以看一下github的https://github.com/sheng-geek-zhuanlan/JobFramework。这里有example和代码示例。 具体问题,我们在微信上聊哈。 第二个问题,我能看到这个图呀。

    2022-07-03
    2
  • Duxuebing
    看不懂,达不到这个境界吧

    作者回复: 看到你的问题,我又特意回看了这讲。抱歉没有给你带来简单明了的阅读感受,这块知识需要一些开发知识的铺垫,在结束语有我的公众号,可以关注一下,我会定期写一些技术文章,来分享!

    2022-06-29
    3
  • ifelse
    学习打卡
    2024-02-28归属地:浙江
收起评论
显示
设置
留言
5
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部