代码改变世界

appium测试之获取appPackage和appActivity

  虫师  阅读(33691)  评论(3编辑  收藏  举报

 

  appPackageappActivity 进行appium自动化测试非常重要的两个参数,我们所测试的APP不同,这两个参数肯定也是不一样的。那如何快速的获取这APP的这两个参数呢?我这里介绍两个方法。

复制代码
import org.openqa.selenium.remote.DesiredCapabilities;
import java.net.MalformedURLException;
import java.net.URL;
import io.appium.java_client.android.AndroidDriver;


public class appiumZhihu {

    public static void main(String[] args) throws MalformedURLException, InterruptedException {

        DesiredCapabilities capabilities = new DesiredCapabilities();
        capabilities.setCapability("deviceName", "Android Emulator");
        capabilities.setCapability("automationName", "Appium");
        capabilities.setCapability("platformName", "Android");
        capabilities.setCapability("platformVersion", "6.0");
        capabilities.setCapability("appPackage", "??");  
        capabilities.setCapability("appActivity", "??");  

        AndroidDriver driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);

    }
}
复制代码

 

方法一

首先,你要有一个APP的安装包 xxx.apk,

然后,通过这个解压工具将.apk解压。如下:

 通过notepad++ 打开AndroidManifest.xml 文件,在里面搜索:manifest对应的就是appPackage

搜索:activity对应的就是appActivity。(activity关键字很多,你要注意辨别。

 

 

方法二

这种方法也比较简单,主要针对你没有.apk包的情况,比如Android原生自带的APP(计算器、通讯录、短信...),可以通过adb 命令。

1,打开APP

2,执行> adb logcat>D:/log.txt

 

3, 胡乱的对APP做一些操作。

4Ctrl+c 结束adb命令。

5, 打开log.txt文件,搜索:Displayed 

appPackage:   com.android.messaging

appActivity.ui.conversationlist.ConversationListActivity

 

方法三 

使用 adb 命令,首先在android手机或模拟器上打开App。输入下面的命令。

adb shell dumpsys window windows | findstr mFocusedApp

 

方法四

评论所提供的方法,使用aatp命令。我的aapt工具位于“D:\android\SDK\build-tools\28.0.3\aapt.exe” 目录。

D:\android\SDK\build-tools\28.0.3> aapt dump badging d:\\test.apk

 

编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
历史上的今天:
2012-08-12 Oracle表空间(tablespaces)
Web Page Counters
Computer Desks
点击右上角即可分享
微信分享提示