51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3017|回复: 5
打印 上一主题 下一主题

[求助] appium 获取元素空指针问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-9-9 14:15:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
package appium;


import org.testng.annotations.AfterClass;
import org.testng.annotations.Test;
import org.testng.annotations.BeforeClass;
import io.appium.java_client.AppiumDriver;
import io.appium.java_client.android.AndroidDriver;

import org.testng.annotations.BeforeClass;
import org.testng.xml.dom.Tag;

import java.net.MalformedURLException;
import java.net.URL;
import java.util.concurrent.TimeUnit;

import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.testng.annotations.AfterClass;

public class APPiumTest {
       
          AppiumDriver driver;
       
          @BeforeClass
          public void beforeClass() throws MalformedURLException {
                  DesiredCapabilities des = new DesiredCapabilities();
                  des.setCapability("deviceName", "Android Emulator");
                  des.setCapability("platformName", "Android");
                  des.setCapability("platformVersoin", "4.4.2");
                  des.setCapability("appPackage", "com.android.calculator2");
                  des.setCapability("appActivity", ".Calculator");
                  driver=new AndroidDriver(new URL("http://localhost:4723/wd/hub"),des);
          }
          @Test
          public void Test() {
                  System.out.println("开始");
                  driver.manage().timeouts().implicitlyWait(10,TimeUnit.SECONDS);//隐式等待
                  driver.findElementById("com.android.calculator2:id/digit7").click();
                  driver.findElementById("com.android.calculator2:id/digit4").click();
                  driver.findElementById("com.android.calculator2:id/plus").click();
                  driver.findElementById("com.android.calculator2:id/digit1").click();
                  driver.findElementById("com.android.calculator2:id/digit6").click();
                  driver.findElementById("com.android.calculator2:id/equal").click();
                  String num = driver.findElementByClassName("android.widget.EditText").getText();
                  System.out.println(num);
          }
          @AfterClass
          public void afterClass() {
                  driver.quit();
          }

}

  driver.findElementById("com.android.calculator2:id/digit7").click();处开始空指针
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

  • TA的每日心情
    慵懒
    前天 10:15
  • 签到天数: 1521 天

    连续签到: 5 天

    [LV.Master]测试大本营

    2#
    发表于 2020-9-10 11:02:02 | 只看该作者
    把隐式等待换成强制等待2s试试
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    前天 18:53
  • 签到天数: 755 天

    连续签到: 2 天

    [LV.10]测试总司令

    3#
    发表于 2020-9-10 11:08:17 | 只看该作者
    参考下这个链接http://ask.testfan.cn/question/824
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    昨天 07:50
  • 签到天数: 2818 天

    连续签到: 6 天

    [LV.Master]测试大本营

    4#
    发表于 2020-9-10 13:35:11 | 只看该作者
    还没识别吗
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2024-10-22 14:23
  • 签到天数: 1007 天

    连续签到: 1 天

    [LV.10]测试总司令

    5#
    发表于 2020-9-10 17:37:13 | 只看该作者
    没定位到"com.android.calculator2:id/digit7"这个元素吗?
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-24 08:04 , Processed in 0.067282 second(s), 22 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表