今天写了个简单向上滑动,执行到向上滑动操作,报nullpoint异常,经过各种乱碰终于解决了,现记录一下过程,以备以后参考!

环境背景:java+testng+appium

在@Test下调用 direct_slide_f("up");  这个方法的时候,最初成员变量up我是没有初始化的,只是简单声明了一下,然后在调用的的时候,没有传“up”,居然传了变量up;

且    if(direct.equals(this.getUp())){     这句代码之前是   if(direct.equals(up)){  这样写的,所以就报了nullpoint。

原因就是direct_slide_f 接收的应该是一个具体的字符串参数,而我传了一个没有初始化的变量 up,所以程序就不知道用什么去与   up 进行比较的,当然这个时候 up本身也没有值,

其实就等于拿自己和自己做对比,然后就报nullpoint了!

修改方案:将变量up初始化,然后调用方法direct_slide_f的时候,传入字符串“up”,而非变量up,执行就不报nullpoint了!

总结:如果在新添加一段代码后,代码报nullpoint,首先检查下新添加代码中变量和方法的关系!

public class Login extends KeyClass implements BaseExecuteInterface{public Login(){}private boolean isInstall = false;public static AndroidDriver driver;public  final String up = "up";@Testpublic void login_f_tmp() throws Exception{ String username="18576816231";String passwd="123456";driver.findElement(By.id("com.jiubei.shop:id/telephoneEt")).sendKeys(username);Thread.sleep(2000);driver.findElement(By.id("com.jiubei.shop:id/ed_pwd")).sendKeys(passwd);Thread.sleep(2000);//System.out.println("test");//key();driver.findElement(By.id("com.jiubei.shop:id/submitTv")).click();System.out.println("test2");//已进入到APP首页Thread.sleep(4000); driver.findElement(By.name("我的")).click();sleep(1);direct_slide_f("up");}// 调用出空指针,现在已修复public  void direct_slide_f(String direct){TouchAction touchAction =new TouchAction(driver); if(direct.equals(this.getUp())){     touchAction.longPress(360, 720).moveTo(360, 600).release().perform();System.out.println(up);sleep(3);}else if(direct.equals((this.getDown())){touchAction.longPress(360, 600).moveTo(360, 720).release().perform();sleep(3);}else {System.out.println("参数错误");sleep(3);}}

appium测试代码nullpoint相关推荐

  1. 每日10行代码57: appium测试坚果手机出现socket hang up报错的解决

    今天在用appium测试的时候,老是出现socket hang up的报错,在网上搜索了下,找到了答案,原来是手机的系统自动把appium需要的后台进程给优化掉了. 解决办法也很简单,就是设置系统,不 ...

  2. Appium使用Python运行appium测试的实例

    Appium使用Python运行appium测试的实例 一.  Appium之介绍 https://testerhome.com/topics/8038 详情参考-- https://testerho ...

  3. android 访问web.py,Appium 测试 Android 时,python 用例调用 Webdriver.remote 后无回应

    大家好!遇到一个问题,希望大家能指点一下.我搭建好了 Appium 测试 Android 应用的测试环境,在运行 Python 编写的测试用例时,发现调用 Webdriver.remote 后,没有任 ...

  4. 基于 webdriver 的测试代码日常调试方python 篇

    看到论坛有人写了JAVA的测试代码日常设计,就给大家分享一下偶自己平时是如何测试测试 代码的.主要基于python语言.基于 webdriver 的日常调试在 python交互模式下非常方便, 打开p ...

  5. 九、Appium测试入门

    移动端Appium使用 工具介绍 Appium是一个自动化测试开源工具,支持IOS和Android平台上的移动原生应用(指用IOS或者android sdk写的应用).移动Web应用(指使用移动浏览器 ...

  6. 测试代码发布到博客效果(Windows Live Writer发布)

    测试代码发布到博客效果(Windows Live Writer发布) public class SwitchCase {/*** 1.switch后面的表达式为常量表达式,类型只能是可以转化为int. ...

  7. 【camera】自动泊车-基于深度学习的视觉车位检测项目(课程设计--训练代码、测试代码、部署demo)(2)

    **基于深度学习的点定位回归和角度预测的车位检测 基于深度学习的点定位回归和角度预测 基于深度学习的角点检测和角度回归 ** 项目下载地址:训练代码.测试代码.部署demo 数据集百度网盘下载:数据集 ...

  8. 匿名函数应用-多线程测试代码

    多线程测试代码,不用单独再写一个类,比较方面而已. public class MainThread { static int a=0; for (int x = 0;x<100;x++){ Th ...

  9. Windows/Linux TCP Socket网络编程简介及测试代码

    典型的网络应用是由一对程序(即客户程序和服务器程序)组成的,它们位于两个不同的端系统中.当运行这两个程序时,创建了一个客户进程和一个服务器进程,同时它们通过从套接字(socket)读出和写入数据在彼此 ...

最新文章

  1. kubernetes ConfigMap
  2. webpack4.0让编译速度飙升
  3. aspose.word在某个字后面自动换行_在Arctime里制作字幕如何自动换行?如何添加注释、广告语?...
  4. linux轻量级进程LWP
  5. docker的安全管理与TLS/LLS加密通信
  6. java session使用_java学习之web基础(8):使用session实现带验证码的登录功能
  7. 【渝粤教育】广东开放大学 地基与基础 形成性考核 (27)
  8. float数据在计算机内存中的存储方法
  9. 【非常基础实践】 微信小程序 - 腾讯云 - PHP - DEMO - 002 - 云环境搭建和开通指引- 实践
  10. 微型计算机 总结,微机室活动总结
  11. Python3 threading的多线程管理中的线程管理与锁
  12. 详解Python中的位运算符规则、原理与用法
  13. Class.forName()方法抛出异常
  14. VIM文本编辑器相关命令实验总结
  15. 中医处方软件加方开方操作
  16. LimeSDR Mini轻松上手系列1: 介绍
  17. 【英语:发音基础】A1.元音与辅音
  18. 不用充电的监控摄像头有哪几种供电方式
  19. 实验改变人类:震撼世界的十大科学实验- -
  20. C# 提取Word中插入的多媒体文件(视频、音频)

热门文章

  1. 国际短信系统平台软件源码开发路由功能—移讯云短信系统
  2. 编译Linux 内核
  3. 2021年5月23日《一开口就让人喜欢你》读后感
  4. 想去微软工作吗?这些岗位年薪超过1100000元
  5. Diagonal Scaling
  6. Linux添加环境变量,以配置MySQL环境怕变量为例
  7. 一种基于CUDA标准的异构并行编程模型开发简介
  8. Fedora 服务启动管理
  9. 使用MOG2对运动物体进行检测
  10. 2019FME博客大赛——基于 FME 求算最佳租房方案