• xctest可以直接切换app,appium不知道能不能。。

  • XCUIApplication.init(bundleIdentifier: "xxxxxxxx")

  • 运行时长就是fastmonkey里的运行次数
    monkey.monkeyAround(iterations: 1000)

  • 额,待测试app完全没启动,还是启动了又拉回到这个demo app,完全没启动的话可能还是bundleID的问题吧,具体没看到代码也不清楚。。。还有一种方法是你可以找到10.1的xctest framework替换到11的Xcode下 也可以使用原来的那个monkey

  • 可以二次开发swiftmonkey,把不支持10.1以上的XCEventGenerator换成xctest的API
    这是我之前二次开发的记录https://www.cnblogs.com/dreamyu/p/11280030.html
    这是我之前改造的https://github.com/lcyfly/sjk_swiftmonkey
    只是修改了下tap点击事件,如果是其它手势操作可以根据xctest的API自己修改下,修改后点击频率会降低到大约每秒3-4个action,但是已经超过了用户正常操作频率了

  • 先确认你测试是在应用层还是数据库层,如果是应用层只需要关注应用层对数据的逻辑处理,如果是etl数仓测试的话,可能要对每一层数据的处理进行校验,包括但不限于数据表结构,字段类型边界等校验,数据一致性校验,数据完整性校验,数据正确性校验,数据转换逻辑校验。

    需要注意的地方,如果前期可能更加关注的是数据完整性和正确性,简单来说就是数据量是否正确,是否缺失数据,正确性的话就是数据抽样检查每个字段是否正确。这也是最容易出问题的,例如数据量有问题,数据字段缺失,数据转换逻辑有问题,因此在测试的时候需要更加关注,让开发提供完整的表映射文档,表结构文档,自测sql等辅助文档进行测试

  • 我现在也有同感,现在有一些帖子对于一些人的引导是有问题的。

    测试平台应该是基于团队,基于项目流程等需求的产物,不是每个公司的必需品。
    以接口测试平台为例,在做之前是否有对其他工具框架有深入的认识,是否能通过使用工具框架来快速解决问题,是否可以通过二次开发框架来解决问题,如果能解决问题为什么还要做平台。

    我之前就受到这方面影响了,好多框架平台上来就分析其他工具框架的缺点,例如postman,不好用啊,不适合团队协作用啊,然后推广自己的轮子,但其实深入调研学习后发现大多数框架平台的实现就是postman的缩影,甚至还没postman做的好。比如:

    1. 测试环境的配置,postman支持全局变量配置
    2. 测试setup配置,postman支持pre-script脚本
    3. 测试断言,postman支持test,如果你不会写代码,postman提供了好多test模版点一下就能用,修改下参数,如果这点东西都不想学就别做接口测试了。
    4. 测试执行,postman支持collection集合执行,还可以设置执行次数,执行时间
    5. 调试的话,postman有postman console
    6. 团队协作的话,postman支持teamwork,可以使用team workspace,还支持collection分享,即使免费的一个月可以分享2000次,还可以导出
    7. 持续集成可以用Newman Jenkins啥的
    8. postman还支持mock数据

    当然,学习实践一些新技术是每个人的自由,毕竟现在还多也有测试平台啊各种这样的需求,只是不希望一些刚刚接触测试或者接口测试的同学上来就被引导为做接口测试做个平台才行或怎样怎样,而不去深入学习了解本质以及一些开源工具框架的优点。

  • 单独调试一条,用postman就解决了,何必执着于框架,本来数据驱动就是针对数据量比较大的情况好做统一的处理,即使做了是否运行的标记,运行的时候还是要一条条判断筛选,效率太低了。

  • 可以参考httprunner的思路,将测试数据,接口数据抽离出来,相同业务流程的在一个testcase中,动态创建多个test方法来执行接口