在上篇文章中记录了各方面环境的问题,这次与上次不同的就是这次是用夜神模拟器来指定联系人打QQ电话
一、夜神模拟器配置:
在夜神模拟器上下载一个QQ,在QQ官网上就有,可自行下载。
二、打开Appium服务器、打开夜神模拟器,打开dos窗口



三、在dos窗口中连接夜神模拟器:
如果经常连接,那么打开模拟器,在dos窗口使用adb devices命令就能搜索到,不然就话,就要切换到夜神安装目录下,使用命令连接:
三、在eclipse工具上编写代码
在测试用例模中:

package com.testQQTel;import java.net.URL;
import java.util.concurrent.TimeUnit;import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.DesiredCapabilities;import io.appium.java_client.AndroidKeyCode;
import io.appium.java_client.AppiumDriver;
import io.appium.java_client.MobileBy.ByAndroidUIAutomator;
import io.appium.java_client.TouchAction;public class TestCase {DesiredCapabilities dc;AppiumDriver driver;@Beforepublic void setUp(){//1、创建DesiredCapabilities对象dc = new DesiredCapabilities();//2、设置属性
//      dc.setCapability("deviceName", "MYQNW20507042786");dc.setCapability("deviceName", "127.0.0.1:62001");dc.setCapability("platformName", "Android");dc.setCapability("appPackage", "com.tencent.mobileqq");dc.setCapability("appActivity", ".activity.SplashActivity");//设置appium可以输入中文dc.setCapability("unicodeKeyboard", "true");}@Testpublic void testQQTel() throws Exception{driver = new AppiumDriver(new URL("http://127.0.0.1:4723/wd/hub"), dc);//隐式等待driver.manage().timeouts().implicitlyWait(15, TimeUnit.SECONDS);System.out.println("开始执行啦");//1、点击同意协议driver.findElement(By.id("com.tencent.mobileqq:id/dialogRightBtn")).click();//2、点击登录按钮driver.findElement(By.id("com.tencent.mobileqq:id/btn_login")).click();driver.findElementByAccessibilityId("请输入QQ号码或手机或邮箱").clear();driver.findElementByAccessibilityId("请输入QQ号码或手机或邮箱").sendKeys("QQ账号");driver.findElement(By.xpath("//android.widget.EditText[@content-desc=\"密码 安全\"]")).clear();driver.findElement(By.xpath("//android.widget.EditText[@content-desc=\"密码 安全\"]")).sendKeys("QQ登录密码");//勾选 已阅读协议....driver.findElement(By.id("com.tencent.mobileqq:id/q6i")).click();//成功 登录driver.findElement(By.id("com.tencent.mobileqq:id/login")).click();//搜索联系人
//      driver.findElement(By.id("com.tencent.mobileqq:id/kag")).click();driver.findElement(By.id("com.tencent.mobileqq:id/et_search_keyword")).sendKeys("刘五杠");Thread.sleep(5000);//点击搜索到的结果TouchAction action  = new TouchAction(driver);action.press(500, 300).release().perform();Thread.sleep(3000);// 打电话之前,发送消息        driver.findElement(By.id("com.tencent.mobileqq:id/input")).sendKeys("姐姐要打电话啦");     driver.findElement(By.id("com.tencent.mobileqq:id/fun_btn")).click();Thread.sleep(2000);//点击 + 号driver.findElement(By.id("com.tencent.mobileqq:id/gny")).click(); System.out.println("快要打电话啦");      Thread.sleep(2000);//点击电话按钮driver.findElement(By.id("com.tencent.mobileqq:id/dcf")).click();//提醒授权,两项都允许driver.findElement(By.id("com.android.packageinstaller:id/permission_allow_button")).click();driver.findElement(By.id("com.android.packageinstaller:id/permission_allow_button")).click();//发送萌萌表情//driver.findElement(By.id("com.tencent.mobileqq:id/gnb")).click();//Thread.sleep(2000);//driver.findElementByAccessibilityId("卖萌").click();//driver.findElement(By.id("com.tencent.mobileqq:id/fun_btn")).click();  System.out.println("等待结束");
}@Afterpublic void tearDown(){driver.quit();}
}

在执行测试用例的main方法中:

package com.testQQTel;import org.junit.runner.JUnitCore;
import org.junit.runner.Result;
import org.junit.runner.notification.Failure;public class TestRunner {public static void main(String[] args) {// TODO Auto-generated method stubResult result = JUnitCore.runClasses(TestCase.class);for(Failure failure:result.getFailures()){System.out.println(failure.toString());}System.out.println(result.wasSuccessful());}}

最终执行结果:
在控制台:

在模拟器:


通话成功,没有手机也能打QQ电话啦。

Appium+Eclipse+夜神模拟器 实现QQ打电话功能相关推荐

  1. appium+python+夜神模拟器 实现QQ的模拟登录与自动发消息

    实现的效果在网盘 链接:https://pan.baidu.com/s/1tgLUJoXewOu0qQLp6ylu8A 提取码:sfnf 用到的工具: 夜神模拟器 appium pycharm cmd ...

  2. Appium 连接夜神模拟器并启动

    Appium 连接夜神模拟器并启动 1.adb连接夜神模拟器设置 参考以下链接进行相关设置链接: https://blog.51cto.com/u_15354476/5342062 设置完成可查到对应 ...

  3. appium连接夜神模拟器的坑

    配置好appium的安装环境,安装夜神模拟器. 配置系统环境:在Path中添加C:\Programfile\Nox\bin; (夜神模拟器安装的bin目录) 将SDK目录下的adb.exe文件,复制到 ...

  4. Appium+Python appium启动夜神模拟器定位元素(三)

    ① 目的 使用appium启动夜神模拟器定位元素 ② 环境 Python+Appium+Android模拟器 ③配置启动项 1.platformName:Android //设备型号 2.platfo ...

  5. Appium+python+夜神模拟器微信公众号 记录第一次写用例所踩的坑

    这里写自定义目录标题 登录微信 进入微信公众号 登录微信 caps = {} caps["platformName"] = "Android" caps[&qu ...

  6. appium+mitmdump+夜神模拟器抓取抖音app

    最近项目在搞抖音app,记录一下过程和遇到的坑 第一步 准备环境 1,appium 2,fiddle 3,夜神模拟器 4,Android SDK 详情可以借鉴这篇文章 https://www.cnbl ...

  7. appium、夜神模拟器 环境配置 出现报错 整理及其解答

    环境配置 配置Java环境,JAVA_HOME多参考确保配置正确 Android SDK包下载 官网下载 网盘下载 Android SDK文件目录 安装参考 SDK环境配置 其他几个路径配置到系统环境 ...

  8. mac下使用appium连接夜神模拟器,包含百度云盘安装包链接

    1.安装appium-desktop 2.安装android-sdk 3.安装jdk 4.配置环境变量 5.连接夜神模拟器- appium-desktop是appium的服务器,默认的配置就行,不用改 ...

  9. appium+python+夜神模拟器 自动化测试(1)

    1.原理 2.环境准备 3.测试--打开酷狗音乐 1.原理 自动化脚本--发送指令--appiumsrever--转发指令--AndroidSDK环境-操作手机终端--被测手机终端(模拟机/真机) 2 ...

最新文章

  1. mysql通过参数文件启动_mysql启动的时参数文件中的[mysql]下的参数没有生效
  2. Android学习记录之:Toast的使用
  3. 您试图打开以前版本的Microsoft Office创建的文件。注册表策略设置已阻止此文件在该版本中打开的解决办法
  4. 直播预告 | AAAI 2022论文解读:基于生成模型的语音/歌声合成与歌声美化
  5. ubuntu16.04配置量化投资tensorflow/pytorch深度学习环境
  6. 【机器视觉】 dev_close_window算子
  7. 【编译原理】FIRSTVT和LASTVT求法
  8. 什么MySQL语句在存储过程体中是合法的
  9. createtrackbar函数_【3】OpenCV图像处理模块(10)inRange函数实现阈值化,HSV图像分割...
  10. Tavas and Karafs 二分+结论
  11. weblogic点击服务器没有信息,无法安装Weblogic服务器12C,jar文件甚至没有打开
  12. JSK-9 元素移除【入门】
  13. iphone 3G 刷机到3.12
  14. 双三次插值c语言源代码,双三次插值原理及MATLAB源码实现
  15. #定位系统性能瓶颈# sysdig
  16. 使用IE浏览器将pfx转为cer证书
  17. 学习新体验-itron
  18. FastReport批量打印
  19. air 新浪开放平台 登录部分接口案例
  20. 驾考 科目一 扣分罚款 复习的内容

热门文章

  1. Docker-- 什么是Docker和Docker的基本知识
  2. 读研不要钱?就业可定向推荐?国防科大计算机学院yyds
  3. Android 调用系统照相机拍照和录像
  4. java中对字符串的一些简单操作
  5. Top 100 大学
  6. 差分隐私:原理、应用与展望(新加坡国立大学 萧小奎)
  7. 初学者如何学习logo设计?
  8. 记录 coda装pytorch并不需要单独装cuda和cudnn|李沐评论
  9. eclipse 配置汤姆猫Tomcat
  10. Python一些技巧