• @CelebrateMeaningless https://testerhome.com/articles/17038
    https://testerhome.com/articles/18485

    https://testerhome.com/articles/18525

    用好jmter 的这几个概念 就可以做到 分层 分类 各层之间耦合度低

    我们内部 约定了个 用Jmter 的目录规范 主要就是 步骤 用例 和 场景

    按照此约定 该去哪层写的去哪层写 核心和基线是 step 和 case层 场景只是做调度和组装 。

    步骤step是最原子性的
    步骤层举例

    Tips:1、步骤层里面互不依赖,如果模块很多可根据模块名创建文件夹来分类保存。

    2、步骤层的测试计划命名为步骤,通过Test Fragment这样的测试片段来进行包含。(建议Test Fragment名称和整个步骤的jmx文件名称保持一致,方便查询)。

    3、步骤层根据具体业务需求来切分,可以是单独一个sampler或者多个sampler组合,而且一般会使用事物控制器包含。(如果sampler里面的变量需要传递使用vars.get方法获取,里面有变量需要提取也是同步进行)。

    4、为了接口测试严谨性,一般步骤层,会跟随sampler绑定这个接口的必填参数测试的简单控制器,方便阅读。(必填参数测试:缺失必填参数后,接口返回值是否正确)。

    用例层举例

    Tips:1、用例层里面只调用步骤层来进行组装,不添加任何sampler。

    2、用例层一般会使用Parameterized Controller插件来对步骤层进行参数传递,一般需要和步骤层绑定。如果需要再获取上级参数传递可写为变量

    3、用例是独立存在的,用事物控制器进行包含,由于JMeter本身的特性,需要在场景层中组合的话,也只能存放为Test Fragment给与调用。

    4、用例名称中,事物控制器,测试片段,jmx文件名称尽量保持一致,方便查找。

    场景层举例

    Tips:1、场景层是由线程组通过Include Controller调用Test Fragment的测试用例来直接运行的jmx文件,也是最后输出的报告展示结果。

    2、所有用例都需要使用的变量可以在场景层存放,比如用户账户数据,数据账户密码,APPID,AppSecret等,如果不需要在场景层使用可以在用例层进行传值覆盖。

    3、场景层中的用例没有依赖关系,可以顺序或者乱序组合,互不干扰。

  • 图中 “用例分层” 和 “用例设计共性步骤” 再好好看看。

    先把需要被测试设计的“测试对象” 找明白喽。

    啥是狭义的“业务流” 就好比 A注册 B登录 C搜商品 D下订单 E 支付 A B C D E 就是业务流 不同的组合序列就是业务流了。 他的逻辑对象 就是 你们平台的 各种大类 “功能” 他的物理承载对象 就是 各种 功能页面 比如 注册页面 下订单页面 支付页面等。

    啥是狭义的“操作流” 就是 站在用户角度 去做交互体验测试 就是在某个具体的 功能性页面 做页面操作的序列 比如 注册页面
    用户要操作 各种 输入行控件 和 各种展示型控件 他们之间有逻辑 和 业务规则制约关系 和交互效果要求 这些都是逻辑对象关系 所以 把一个页面中的输入型提取出来 比如测试 注册输入控件 就是 账号 密码 确认密码 邮箱 手机 这些就是 物理操作对象 找到了他们 才可以用 因果 判定表法 去设计组合序列。

    啥事狭义的数据流 就是 具体的输入型控件或数据 他们找到了 比如 注册 就要根据业务规则 和各种逻辑限制关系 去用 等价和边界值了

    所以 图中的概念 是具体分层到某一个层内 一个概念内 是狭义的 但广义上来看 这些方法 是可以在其他层通用的 所以不要玩死这些设计方法。

    所以 共性的步骤 都是 找测试对象 和 设计组合序列 然后等价边界设计取值策略 你先要看的请 你的测试目标是啥 你目前处在哪个层在测试 然后分别用好测试用例设计方法。

    以上都是 站在 比较通用的 黑盒设计策略 从功能来展开 属于比较常用的业务测试方法

    实际 还要站在 系统技术实现层 来继续优化深入用例 比如 要站在 三层结果 前端 服务 和 数据 从系统大的这些层 去再优化用例。
    弄清 服务处理流 和 数据流 做到 全生命周期性的系统测试设计。

  • Author only
  • Author only
  • https://github.com/appium/appium/issues/12269#issuecomment-489378179

    升级appium-doctor到1.10.0

    系统环境变量PATH 添加bundletool.jar 存放路径 如: D:\Android\android-sdk\bundle-tools
    系统环境变量PATHEXT 追加 ;.JAR 即可

  • 配置Jmeter BackendListerer 沒配对 influbdb 对应的记录db=jmeter的库 就没这些

  • Author only
  • 我看了下 https://stackoverflow.com/questions/54250178/appium-finishing-setting-up-optional-dependencies
    stack也有人问 你可以去appium github 提个issue
    官方这个https://github.com/google/bundletool 才发布10个月 估计国内关注使用的少 所以暴露问题的少.

    https://developer.android.com/studio/command-line/bundletool

    按照 http://appium.io/docs/en/writing-running-appium/android/android-appbundle/ 也没说什么 就是说 有jar包 添加PATH appium-doctor就能识别了.... 你去appium-doctor github下 也提问issue一下吧.
    我看appium-doctor下 https://github.com/appium/appium-doctor/releases 1.8.0 才支持了 app bundle tool check
    但是这个 bundle tool 我用android studio 升级了下 android sdk 到28.0.3版本 并没有在相关目录下看到这个 倒是在android studio目录下找到了个

    我按照 stack那个人的弄法 doctor 也没法识别 bundle tool

    我已经提了 https://github.com/appium/appium/issues/12269 或者你们自己issue里 搜bundletool

  • 你俩 确定 要用到 opencv4nodejs 和 ffmpeg 的功能来做UI自动化么....

    你俩是做游戏APP的?

    bundletool.jar 问问 你们开发怎么用的.... 这个我也不清楚

  • opencv4nodejs

    ffmpeg 你牛啊 win环境 这个两个装好了吗? 怎么装的 我装过一次 opencv4nodejs 失败了 但我用不上这个 就没管它.

    至于 bundletool.jar 不是提示你 看 Pleas
    e read http://appium.io/docs/en/writing-running-appium/android/android-appbundle
    / to install it

只知道围绕前端弄的 那是初级测试员;知道围绕前端和数据的 那是中级测试员 ;知道围绕前端 服务 数据的 那是高级测试员;
“别跟我说你测试理论有多深,开发技术有多厉害,用的工具有多深奥,系统测试,三个字,一前一后一数据。合不起来的,躺下喽,合的起来的才有资格讲话。你说这话对吗?”