![e960b895736a030ad673d8277321c005.png](https://i-blog.csdnimg.cn/blog_migrate/31b07d245e486daddba9d7cfbe589d72.jpeg)
用python做自动化测试时,很多情况下需要切换应用来模拟用户的行为,然而很多刚接触自动化测试的同学不知道如何做到跨应用。本文将介绍python+appium实现跨应用自动化测试。
一、环境:
1)python3.6
2)appium
二、步骤:
1.使用adb logcat ActivityManager:I *:s命令查看手机上已安装的第一个APP的包名和launch-activity
![833742dfdae4c52a3e2d4ec0897e900b.png](https://i-blog.csdnimg.cn/blog_migrate/d1906345b1bf713b6b30e3eae7cab19b.jpeg)
2.使用aapt dump badging C:IMIMweixin.apk查看第二个APP的包名和activity
![b2194c6f533b38c86975163c974f1a1d.png](https://i-blog.csdnimg.cn/blog_migrate/b6f43a133aad9cea20834a012f95c101.jpeg)
3.分别将两个不同的APP驱动定义在不同的变量里:
下面是第一个APP的驱动及要实现的功能:
![37ae8ec5c7e1c57e0d8bb82776d35b91.png](https://i-blog.csdnimg.cn/blog_migrate/0bcca2723efd358b41a22bc3b981812d.jpeg)
下面是第二个APP的驱动及要实现的功能:
![82703b57691383e12cb253c2e808f71e.png](https://i-blog.csdnimg.cn/blog_migrate/a975738ba5dd640b7d346b45761b544b.jpeg)
4.appium侧不勾选安装包
![b2df02063e7ba57d3f6fc9dbfcee0159.png](https://i-blog.csdnimg.cn/blog_migrate/20396458c408a62f4dc0f5bf3c96ae9f.jpeg)
勾选覆盖当前存在的session:
![2fae70b926f473c86878dcbc84e7e271.png](https://i-blog.csdnimg.cn/blog_migrate/6d92f59304704806b2c6b8755ff331ac.jpeg)
5.函数的调用:
![095e309bdd768eb249de35d7ef441d4f.png](https://i-blog.csdnimg.cn/blog_migrate/e577a18c2d97ac4b294ad1f07c831e34.jpeg)
说明:
1)因本文实现的是同一台手机使用一个appium进行应用切换,驱动的配置只能放在代码中实现,如果在appium的设置中配置,一个appium只能设置一个应用;
2)因本文未加入驱动的结束,所以需要在appium中勾选overwrite Existing Session,以结束现有session重启新的session;
3)文中的APP为社交APP,需要发送消息,如果想要发送中文消息,需要禁用系统键盘使用Unicode编码发送消息