定向班_答疑_20191218

有问题请回帖

问题1

appcrawer 如何pagediff

获取新老版本的两个相同步骤的page source (简称dom)

  • fucntion_1.0( a->b->c) = response_1.0;
  • function_1.1(a->b->c) = response_1.1

输入:测试用例是否一致

  • 相同的操作步骤,因为大部分是老功能,所以50%以上的业务流程都是一样的
  • 当操作步骤发生变化,如何把不同的控件抽象为相同的操作步骤,类似于PO。涉及到PO的步骤定义抽象。search(alibaba) search(jd)

输出:结果对比

  • 布局变化,比如控件的大小、控件的增加或者减少
  • 数据格式
  • 数据的内容,这个是经常变化,所以需要根据是否需要完全一致来去定制规则

类似于json schema

问题3

通过docker方式部署的Jenkins,在执行job的时候无法找到Android SDK。
Building remotely on 宿主机 (host_machine) in workspace /root/jenkins_workspace/workspace/DemoSTF
[android] Determination of SDK root failed

[android] No Android SDK found; let's install it automatically...
[android] Going to install required Android SDK components...
$ /root/jenkins_workspace/tools/android-sdk/tools/bin/sdkmanager --list --verbose
[android] Installing the 'platform-tool,extra-android-m2repository,extra-google-m2repository,emulator' SDK component(s)...
$ /root/jenkins_workspace/tools/android-sdk/tools/bin/sdkmanager --include_obsolete platform-tools extras;android;m2repository extras;google;m2repository emulator

[android] Failed to create file or directory: /root/.android
[android] Determination of SDK root failed
['/root/jenkins_workspace/tools/android-sdk']: Does not look like an Android SDK directory
Android SDK必须安装到Jenkins这个目录下吗?我在配置文件中已经创建了ANDROID_HOME、

我的机器是可以执行 $ANDROID_HOME//tools/bin/sdkmanager --list --verbose
可以这样检查下

  • 确定你的sdk路劲 root/jenkins_workspace/tools/android-sdk 是否真的存在/root/jenkins_workspace/tools/android-sdk/tools/bin/sdkmanager ,大概率是sdk路径没配置
  • 安装sdk的各种依赖,可能需要代理。你可以手工执行下/root/jenkins_workspace/tools/android-sdk/tools/bin/sdkmanager --include_obsolete platform-tools extras;android;m2repository extras;google;m2repository emulator 验证是否可以直接安装

通畅我们自己配置的ANDROID_HOME是在~/.bash_profile中,这个文件默认在jenkins执行shell的时候,不会被加载的。所以需要开头加上一句source

问题4

appium server:1.15.1
appcrawer:2.4.0
设备:2台真机
命令:和老师帖子里的一样
slaves:mac本机

现象:Jenkins调度2台设备并行,2台设备同时打开雪球、但只有一台设备在进行遍历
根据问题现象单机测试,发现小米这台机器appium日志报with no body,driver proxy active,passing request on a via http proxy。(这台机器跑monkey命令是正常的)

你用的可能不是一个appium,对于小米那个appium,可能你启动appium的时候,加上了一些代理设置。检查下那个进程的echo $http_proxy,或者你的wifi的代理模式。

关闭