我是耿晓,27 岁,在北京做了 5 年的软件测试。
近 4 年服务于一家医疗培训公司,平时在做功能测试之余,也会做接口测试相关。
在开荒、实践过程中会遇到很多问题,我会将阶段性的总结发布于此,渴望交流,希望佬儿哥佬儿姐们多多指点。

  • 这个问题被解决了!定义两个用于生成编号的生成器
    具体是这样的:在此之前为了 allure 报告的展示顺序,我是在编写 case 的同时手动添加的编号,这样就会导致在编写 case 时费时费力,在后期维护过程中也不能很好的解决在用例中间插入新用例的编号如何选取的问题。为此,经过不断地实践,确定了目前的方案:定义两个用于生成编号的生成器函数,一个是用于不同测试板块的编号"module_id()",另一个是用于生成各个测试用例的编号"case_id()",然后在测试用例中,在 allure.feature() 中添加测试板块编号,在 allure.story() 中添加测试用例编号,去除之前版本中的@allure.title() 和测试用例中的编号 (意义不大,那就能省则省。直接上图,直观些:
    原测试用例如下:

    升级后用例如下:


    升级后 allure 测试报告如下

    从以上描述可以看出我们即优化了测试用例的编写,又控制住了 allure 报告中的用例展示顺序。
    当然,如果有佬儿哥佬儿姐有更好的解决方案,还希望可以多多指点。

    题外话:此前有关注过我的小伙伴可能知道我将接口自动化的搭建过程总结过两篇文章,将从 0 摸索的过程详细的记录了下来,这本就是一个有趣的不断发现问题,解决问题的过程,距上次升级,又有了一些沉淀,我打算将此次更新过程再总结发布出来,此次升级大致的内容如下:
    1.升级测试模块和测试用例的编号形式 (如上);
    2.解决接口依赖情况下依赖参数如何做数据驱动的问题;
    3.解决各个用例中部分内容重复编写的问题,例如每个用例中都会写 allure 报告信息收集的代码、接口响应时间和 status_code == 200 的断言语句。最终效果是同一用例由原 18 行缩减至 10 行,同样的测试脚本由原 3600 行缩减至 2800 行。
    4.增加对接口返回数据的数据类型断言功能;
    除此之外还有一些测试脚本的目录优化等内容,如果感兴趣的伙伴可以关注一下。在自我总结之余,我更希望的也是可以收到小伙伴们的各种指导意见,下次见~😆

  • 如果在 order 中手动编序号那我感觉和我直接在用例名称里添加序号无异了,后续维护时在用例中间添加新用例的话这个 order 是不是还需要重排😧

  • 我用例中添加了 feature 和 story,我希望 allure 的报告中也先按照用例定义的 feature 顺序排序,然后同一 feature 下按照用例定义的 story 顺序排序,目前使用 order 只能让最里层的用例 (#1、#2 这些) 顺序排序,至于 feature 和 story 还是乱的。我贴张图可能会清楚些:

  • 必然试过了,必然不行,至于 order 和名称的逻辑规则我也正在查😄

  • 平时多和 Error 见见面,等调试的时候就不那么发憷了!😀
    测试基础-Python 篇 PyCharm 调试步骤及 Python 运行时常见错误

  • 测试基础-Python 篇 基础① at 2023年02月22日

    补充一下 Python 项目目录和文件的命名规范,建议来源于 ChatGPT。

  • 接口自动化除了脚本框架外,核心其实还是用例设计,怎么设计用例才能保证代码覆盖率,更细粒度的场景能不能自动化,比方说服务与三方服务的异常交互,这样就衍变出单服务的自动化测试及测试思维,从单服务入手也能模拟各种故障演练,有时间的话可以研究研究这部分,比研究框架更有价值,框架够用就行。

    受益了,确实,接入接口自动化测试一段时间之后,越发的能体会到 “框架够用就行,核心还是用例设计” 这句话,后续会在佬哥儿指出的方向上加大投入,感谢指点。

  • 哈哈,我这么做了没多久就被社区中的佬儿哥推荐了解使用 allure,学习了解后很快对 excel 的爱就消失了,建议你也了解下,或者看一下我的下一篇文章接口测试 - 从 0 不到 1 的心路历程 (二)

  • 又涨了那么亿点点知识👍

  • 不好意思,最近有点忙,回复不及时,方便的话加个 V 讨论下:GXY1162031010,不一定能解决,但我尽力帮你搞搞明白。

我是耿晓,27 岁,在北京做了 5 年的软件测试。
近 4 年服务于一家医疗培训公司,平时在做功能测试之余,也会做接口测试相关。
在开荒、实践过程中会遇到很多问题,我会将阶段性的总结发布于此,渴望交流,希望佬儿哥佬儿姐们多多指点。