开发自测-经验交流总结

接触过的很多项目都有自测环节,但什么样的自测才是有用的?在这些项目实践经验中,有哪些共通的痛点、有效经验?

通过对有项目测试经验的人发起问卷(https://wj.qq.com/s2/3210970/0b92/),对收到的问卷数据进行分析,做出如下统计总结:

1、  自测规范、流程、效果的实际情况:

  • 只有少数的项目有明确的自测规范和流程
  • 没有自测规范的项目往往对自测环节不重视,这需要有人站出来去推进和改善。
  • 有明确的规范不等于有好的自测效果。好的自测效果=明确规范+合理的自测内容&时间+真实的执行+及时监控&效果反馈&持续改进
  • 有些项目的自测效果不稳定,受不同开发的个人自测意识影响限制,这可能需要让自测效果好的开发发起一些自测经验分享、培训,减少不同开发间自测效果的差异性。或者增加自测的执行者,不仅局限在单个开发。

2、不自测或不好好自测会带来的问题:

  • 需求遗漏、部分代码合并提交遗漏,这些问题需要按照需求来制定明确的自测内容并记录执行,防止遗漏
  • 项目延期:如果不自测,测试花大量的时间沟通低级bug,甚至测试主流程都进行不下去,这样无疑需要更多的开发返工、重复测试、耗时,最终导致项目延期。如果在项目初期就能计划、预期合理的开发自测时间,保证一定的自测效果,这样其实是更高效省时间的选择。

3、自测进行的环境:

  • 在未自测导致的问题中,测试环境配置问题排第三。但实际上能保证自测在测试环境下进行的项目仅占36.8%。
  • “在我本地好好的,怎么你那里有问题”这种环境问题,如果在自测的最后、联调后、验收或送测前能在测试环境下进行自测,就可以避免送测时还存在环境配置上的问题
  • 联调可以用开发环境,但是送测前最后一轮自测希望能在测试环境,真的是利大于弊。

4、自测的方法和方式:既然自测这么重要且能避免这么多不必要的问题,那么如何实践呢?

  • 自测依据:测试&自测用例、测试&自测点、主流程、需求
  • 自测依据提供人:测试&开发&双方共同评审后决定(用例、点、主流程);产品(需求、交互、视觉)
  • 自测执行人:开发;产品&交互&设计(验收);自测巡查小组(监督);负责不同模块的其他开发(交叉自测、代码审查);
  • 自测方式:公开演示;自动化执行;接口正常用例跑通;单元测试;功能测试
  • 自测执行结果记录:验收kb记录;自测报告

5、自测效果好的项目经验分享:

  • 持续监督自测效果(制定低级bug率月目标并监控达成率),定期反馈自测流程问题、不断改进,让自测符合项目特点
  • 软件开发完成打包后,在送测前一天,开发集中花半个小时,开发中每个模块功能由对应主要开发和非该模块的开发过一遍自测用例
  • 制定明确的自测规定、自测用例设计规范。记录自测模块及负责人。推行走查发现bug的模式。
  • 测试写好用例给到开发评审,ok后 整理完主流程给到开发自测。
  • 尽早提供可执行的测试用例,用线上页面或任务的方式,来确保某个人已自测某功能。
  • 开发评审测试用例并与测试共同制定主流程用例(自测用例);送测前建立自测测试计划,模块交叉分配;将环境部署到送测环境上,在送测环境上执行自测用例。

6、若送测内容涉及多个开发、模块、端,如何保证集成自测效果(整体功能的正常):

  • 引入第三方监督机制,比如建立开发自测巡查小组,让非本项目的开发人员看着开发人员演示功能并接受检查。
  • 新需求送测前,由交互、视觉对产品进行一轮验收;然后送测时由一到两个开发负责人负责产品所有模块的自测。
  • 交叉自测,功能开发负责人自测自己开发的功能通过后,交由其他开发执行用例
    跨端、跨模块 Android/iOS互测:同一端跨功能互测。 互测过程中尽量减小被代码编写人员的逻辑影响,局外人身份参与。
  • 开发自测个人开发模块,还有测试联动点,查看数据之间交互是否正确
  • 每周固定一天,所有开发对产品进行走查,提出优化、缺陷,提交后由产品、交互决定该问题如何修改,何时安排送测

7、自测中需要注意的内容:

  • 思维模式:开发自测时需要走出具体技术实现时用的开发思维,需要站在产品用户、需求的角度上去衡量自测是否通过。
  • 工作量:自测工作量需平衡适中。自测效果满足一般要求即可:主流程无明显报错,无阻碍性bug引起的中断。
    开发拿到的自测用例如果太重了,就很难去执行。轻量级的冒烟测试用例(仅针对未改动/小改动模块,新增模块需详细点)比较适用,开发执行效率快且容易发现严重问题,可以提高开发的积极性。
  • 积极意义:与其让开发把自测当做任务完成,建议倡导走查模式,鼓励发现问题,给予奖励
  • 兼容性:若产品有兼容性需求,开发就最好别每次都用同一台机型或浏览器去自测,可以在不同送测时尝试换测不同的浏览器或机型
  • 执行力:有流程有用例,如果没有执行力都无效
  • 自测不仅仅在A1需要,修复bug后的自测也需要执行,否则存在问题被多次打回的可能
  • 时间:提前合理计划预留自测时间,而不是压缩测试人员的测试时间
  • 环境:开发经常会使用虚拟机进行自测,会因为物理环境与虚拟环境的差异而导致一些低级问题。

8、对于自测,测试人员能做些什么:

  • 输出对外部门测试相关的分享,培训,启发开发的测试思维。
  • 持续关注、监控自测效果、改进
  • 及时更新自测用例 
  • 16
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: 要从入门到精通Canoe开发,需要掌握以下几个方面的知识和技能: 1.基础知识:学习Canoe的基本概念和术语,例如Canoe数据库、面板、消息等。 2.系统配置:了解Canoe在Windows操作系统中的安装和配置,在常规操作中可以处理Canoe开发的各种问题。 3.CAPL编程:掌握CANoe中的CAPL编程语言,可以设计和实现各种自动测试脚本,例如消息生成、数据分析、请求-应答等等。 4.测试环境:理解CAN多路仿真工具的测试环境,了解它在汽车系统中的应用前景,和其它测试工具的关系和交互。 5.协议开发:熟悉管理和应用CAN、LIN、Flexray、MOST等各种协议的开发结构和相关API,可以方便地完成对各个协议的仿真和测试。 6.网络管理:掌握高效的网络管理技巧和方法,可以大大提高测试效率。 7.性能评价:了解CANoe的性能评价和优化技术,可以快速发现和解决测试中的各种问题,使测试效果得到更好的提升。 总之,要从入门到精通Canoe开发,需要持续地学习、实践和总结,不断提高自己的能力,同时也应加强交流和分享,与同样学习Canoe的同学交流部分实践,共同拓展学习领域,共同推动Canoe的发展和应用。 ### 回答2: Canoe是一种用于汽车ECU开发的工具。它主要用于验证、测量、分析和模拟ECU软件和硬件的性能和功能。Canoe广泛应用于汽车行业,特别是在汽车网络和通信领域。学习Canoe开发需要具备相关领域的知识和技能,如通信协议、控制算法、汽车电子、嵌入式系统等方面。 以下是从入门到精通Canoe的几点建议: 1. 学习基本概念和操作。Canoe的基本概念包括要素、信号、消息、通道、面板、程式、节点等,要理解它们之间的关系和怎样进行配置和调试。了解软件的操作,包括创建、配置和连接面板、节点设置和控制等。 2. 深入了解Canoe的各种模块和功能。了解Canoe中各种模块的功能和使用,例如面板相关的功能(DIAG、NVOL、TRACE、CDD、DMX、J1939等)、节点设置(ECU、SUT、CAPL等)、数据记录(LOG、TRC、DAT等)等。 3. 掌握相关的通信协议和技术。Canoe主要支持各种通信协议,例如CAN、Lin、FlexRay、Ethernet等。还需要了解相关的网络和通信技术,例如TCP/IP、UDP、SOCKET等。 4. 学习CAPL语言。CAPL语言是Canoe中重要的编程语言,可以用于编写测试点和测试脚本,检测和分析ECU的性能和功能。可以通过多种途径学习CAPL,例如查看官方文档和示例,参加培训课程,阅读相关书籍和论文等。 5. 实践练习和分享经验。学习Canoe的最重要的是要进行实践练习,通过开发项目来熟悉Canoe的操作和使用。同时和其他Canoe开发者交流和分享经验,可以更好地增加自己对Canoe的理解和掌握程度。 总之,要成为一名优秀的Canoe开发者,需要有广泛的知识储备、深入的技术理解和实践经验。坚持不懈地掌握Canoe的基本知识和技能,并不断充实自己的知识库,通过不断学习与实践,才能成为Canoe开发的专家级人才。 ### 回答3: Canoe是一种基于Windows操作系统的全球通用开发与测试平台。它主要应用于汽车电子控制单元(ECU)的开发与测试,它提供了一整套的功能和开发工具,包含测试用例管理、仿真模型、网络模拟、冷启动和热启动等功能,有效地降低了汽车电子控制模块的开发成本和测试周期。 要成为一名Canoe开发高手,从入门到精通有以下几个方面需要注意: 一、学习Canoe的基础知识 了解Canoe的基础知识,包括Canoe提供的模块、不同的工具、基本的命令和脚本语言,对于Canoe开发人员来说是非常重要的。可以通过读Canoe的官方文档、参加培训课程或者查看相关的学习资料来学习。 二、掌握Canoe的实际应用技巧 学好基础知识是前提,但要想真正掌握Canoe开发,还需要在实践中不断积累经验。例如,掌握Canoe中的仿真配置、消息发送和仿真模型等技巧。此外,根据自己的开发需求不断使用Canoe提供的各种工具,例如日志分析器、通信矩阵等,以提高开发效率。 三、使用Canoe调试工具 Canoe提供了很多实用的调试工具,例如traces、log等,了解并熟练使用这些调试工具,将大大提高开发效率和稳定性。 四、持续学习与实践 Canoe是一个不断发展和更新的平台,要想保持竞争力,就需要持续关注最新的技术和趋势,并通过实践探索新的应用场景。 总的来说,成为一名Canoe开发高手需要不断学习和实践,要有耐心和恒心不断提高自己的技术水平,才能在这个领域获得成功。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值