测试之家
  • Topics
  • QA
  • 招聘
  • 社区学堂新
  • 开源项目
  • 活动
  • Wiki
  • Sign Up
  • Sign In
新手
cmlanche-github (cmlanche)
第 42310 位Users / 2019-04-04
24 篇帖子 • 274 条回帖
33 关注者
17 正在关注
82 收藏
做冷门无所谓,做全套即可
打赏支持
GitHub Public Repos
  • jixieshou-autowatch-ku... 352

    自动看快手、抖音视频的app,可以刷快手极速版金币,一键启动,无需复杂的设置

  • lightningvine-docs 229

    闪电藤文档

  • ghost-next-theme 10

    Next theme for ghost blog

  • wedock 3

  • wx-manage 1

    🔥微信公众号管理系统,包含公众号菜单管理🗄、自动回复🗨、素材管理📂、模板消息☘、粉丝管理🤹‍♂️等功能,前后端都开源免费🛩

  • wx-api 1

    🔥微信公众号管理系统,包含公众号菜单管理🗄、自动回复🗨、素材管理📂、模板消息☘、粉丝管理🤹‍♂️等功能,前后端都开源免费🛩

  • webdav_client 0

    A dart WebDAV client library

  • super_native_extensions 0

    Native drag & drop, clipboard access and context menu.

  • modal_bottom_sheet 0

    Flutter | Create advanced modal bottom sheets. Material, Cupertino or your own style

  • WuKongIMFlutterSDK 0

    Flutter sdk for WuKongIM

More on GitHub
  • 个人信息
  • 专栏
  • 话题
  • 回帖
  • 收藏
  • 关注中
  • 关注者
  • Appium 切换到 webview 页面,使用 ActionChains 时候,报 “Original error: 501 - "unimplemented command” 错误。麻烦帮忙看下 at June 20, 2019

    还有个手机 logcat 日志不知道你会不会看,看 espresso 的 server 发生了什么

  • appium+python 解决安装权限弹窗 at June 19, 2019

    正解,看我专栏https://zhuanlan.zhihu.com/custom-appium

  • Appium 切换到 webview 页面,使用 ActionChains 时候,报 “Original error: 501 - "unimplemented command” 错误。麻烦帮忙看下 at June 19, 2019

    看你这个表好像是一样的

  • Appium 切换到 webview 页面,使用 ActionChains 时候,报 “Original error: 501 - "unimplemented command” 错误。麻烦帮忙看下 at June 19, 2019

    value 值不符合规则?

    你是用 espresso driver 来做测试的吗?

    我看这个错误只在 espresso 中才会存在:

    /*
     * Licensed under the Apache License, Version 2.0 (the "License");
     * you may not use this file except in compliance with the License.
     * See the NOTICE file distributed with this work for additional
     * information regarding copyright ownership.
     * You may obtain a copy of the License at
     *
     *     http://www.apache.org/licenses/LICENSE-2.0
     *
     * Unless required by applicable law or agreed to in writing, software
     * distributed under the License is distributed on an "AS IS" BASIS,
     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     * See the License for the specific language governing permissions and
     * limitations under the License.
     */
    
    package io.appium.espressoserver.lib.helpers.w3c.processor;
    
    import java.util.Arrays;
    
    import io.appium.espressoserver.lib.handlers.exceptions.InvalidArgumentException;
    import io.appium.espressoserver.lib.helpers.w3c.models.ActionObject;
    import io.appium.espressoserver.lib.helpers.w3c.models.InputSource.Action;
    import io.appium.espressoserver.lib.helpers.w3c.models.InputSource.ActionType;
    import io.appium.espressoserver.lib.helpers.w3c.models.InputSource.InputSourceType;
    
    import static io.appium.espressoserver.lib.helpers.w3c.models.InputSource.ActionType.KEY_DOWN;
    import static io.appium.espressoserver.lib.helpers.w3c.models.InputSource.ActionType.KEY_UP;
    import static io.appium.espressoserver.lib.helpers.w3c.models.InputSource.ActionType.PAUSE;
    import static io.appium.espressoserver.lib.helpers.w3c.processor.PauseProcessor.processPauseAction;
    import static io.appium.espressoserver.lib.helpers.w3c.processor.ProcessorHelpers.throwArgException;
    
    @SuppressWarnings("unused")
    public class KeyProcessor {
    
        /**
         * Follows the 'process a key action' algorithm in 17.2
         * @param action Action being processed
         * @param inputSourceType Source type
         * @param id ID of input source that it's part of
         * @param index Index within the 'actions' array
         * @return Processed action object
         * @throws InvalidArgumentException If failed to process, throw this. Means that args are bad.
         */
        public static ActionObject processKeyAction(Action action, InputSourceType inputSourceType, String id, int index)
                throws InvalidArgumentException {
    
            // 1-3 get and validate the action type
            ActionType subType = action.getType();
            ActionType[] validKeyTypes = new ActionType[]{ KEY_UP, KEY_DOWN, PAUSE };
            if (!Arrays.asList(validKeyTypes).contains(subType)) {
                throwArgException(index, id, "has an invalid type. 'type' for 'key' actions must be one of: keyUp, keyDown or pause");
            }
    
            // 4 if pause return PAUSE action
            if (subType.equals(PAUSE)) {
                return processPauseAction(action, inputSourceType, id, index);
            }
    
            // 5-7 get the Unicode value of the keystroke (verify that it's a single character)
            String key = action.getValue();
    
            if (key.length() != 1) {
                throwArgException(index, id, String.format("has invalid 'value' %s. Must be a unicode point", key));
            }
    
    
            ActionObject actionObject = new ActionObject(id, inputSourceType, subType, index);
            actionObject.setValue(key);
            return actionObject;
        }
    }
    
    

    错误说按键 key 值不是的字符长度不是 1 就会抛出异常,检查下吧

  • Appium 切换到 webview 页面,使用 ActionChains 时候,报 “Original error: 501 - "unimplemented command” 错误。麻烦帮忙看下 at June 19, 2019

    方案一:你可以做一个简单的测试,按下,滑动,弹起,在这个华为手机上看行不行,如果行,基本就可以说跟手机没关系的。
    方案二:比对两个手机的时候,这个 while 循环最后产生的 actions 数量和信息是不是一致的(推荐先验证这个)

  • Appium 切换到 webview 页面,使用 ActionChains 时候,报 “Original error: 501 - "unimplemented command” 错误。麻烦帮忙看下 at June 19, 2019

    注意看:unimplemented command: session/8f1ab4e86d833902be2f4ba7b24d79f4/actions

    这个请求是会包装一系列请求发送过去的,通常用来做连贯的绘制,你确保在华为手机的时候,发送过去的 actions 能形成一个连贯的闭合,否则 appium 是会解析失败的

  • Appium 切换到 webview 页面,使用 ActionChains 时候,报 “Original error: 501 - "unimplemented command” 错误。麻烦帮忙看下 at June 19, 2019

    你这是 python 脚本日志,得看看 appium 日志

  • 测试领域有哪些大牛 at May 28, 2019

    小菜一个,努力成为大牛,关注我的自定义 appium 专栏:https://zhuanlan.zhihu.com/custom-appium

  • 改造思寒的 AppCrawler,使其支持 Appium 最新版本 at May 20, 2019

    appium 版本是多少?
    确定按照我的方法重新打包了吗?

  • appium 的技术架构 at May 17, 2019

    博客:https://cmlanche.com
    知乎专栏:https://zhuanlan.zhihu.com/custom-appium 自定义 appium,你都可以关注

  • 查找元素 找不到但程序也不终止 手动碰下 app 才会继续执行 有碰到这种情况的吗 at May 13, 2019

    是不是感觉有一个蒙层一样?

  • 初步成功自定义 Appium at May 13, 2019

    是这个?npm run build:bootstrap

  • 改造思寒的 AppCrawler,使其支持 Appium 最新版本 at May 08, 2019

    大佬求推荐精华😀 😀

  • appium 如何测试非原生 app,它的接口是否可以定制化 at May 08, 2019

    只要能力可以,当然支持定制开发,需要对 UIAutomator1,UIAutomator2,espresso 有深入理解,请看我的知乎专栏:https://zhuanlan.zhihu.com/custom-appium,如有需要,我可以提供商业技术支持

  • appium 的技术架构 at May 08, 2019

    关键还是 xpath 写的有问题吧,可以直接打开一个 chrome 网页,模拟调试,看怎样的 xpath 是只获取你所说的子元素,屏蔽孙元素(我也不会写😀 )

  • appium 的技术架构 at May 08, 2019

    之前在 testin,对这俩货做了深入的改造

  • appium 的技术架构 at May 08, 2019

    老深入了,国内应该没几个人比我更了解了

  • appium 的技术架构 at May 03, 2019

    没有精力维护

  • appium 的技术架构 at May 03, 2019
    1. 是的
    2. 可以直接调用,一样,有提供接口,但不建议使用,直接使用 appium 就好
    3. 跟驱动使用无非就是在指定位置找 jar 或者 apk 包,安装使用
  • appium 的技术架构 at April 29, 2019

    desired_caps ["automationName"] = "uiautomator2" 改为 UiAutomator2

  • appium 的技术架构 at April 29, 2019

    控件没找到,最后超时了吧

  • appium 自动化测试,权限框你们都是怎么处理的? at April 17, 2019

    uiautomator2 自己安装时不也弹框吗,怎么办?

  • 有没有什么技术能把自动化脚本放到手机上执行? at April 15, 2019

    用 UIAutomator1 就好了,很简单,你可以直接把 appium 中的 Bootstrap 工程拿出来做改造,内置你说的那个脚本程序行为就好了

  • appium 自动化测试,权限框你们都是怎么处理的? at April 15, 2019

    测试过程中的动态权限冒出,或者其他系统弹框弹出怎么办?

  • appium 自动化测试,权限框你们都是怎么处理的? at April 15, 2019

    只能解决部分手机部分权限吧

  • Prev
  • 1
  • 2
  • 3
  • …
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • Next
  • 关于 / 活跃用户 / 中国移动互联网测试技术大会 / 反馈 / Github / API / 帮助推广
    TesterHome社区,测试之家,由众多测试工程师组织和维护的技术社区,致力于帮助新人成长,提高测试地位,推进质量发展。Inspired by RubyChina
    友情链接 WeTest腾讯质量开放平台 / InfoQ / 掘金 / SegmentFault / 测试窝 / 百度测试吧 / IT大咖说
    简体中文 / 正體中文 / English

    ©testerhome.com 测试之家   渝ICP备2022001292号
      渝公网安备 50022202000435号    版权所有 © 重庆年云聚力信息技术有限公司