python+appium+unittest 启动一次app,执行多条test

本文介绍了一种在App自动化测试中优化代码执行效率的方法,通过在测试用例执行前仅启动一次App,避免了每次测试重复启动App的时间浪费,提高了整体测试效率。文中详细展示了使用unittest框架实现这一目标的具体代码,包括setUpClass和tearDownClass方法的应用,以及如何进行滑动屏幕和点击操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

参考地址 https://blog.youkuaiyun.com/YZF_DD/article/details/85118078

执行用例过程中只启动一次app,减少代码运行时间,利于代码封装

@classmethod
setUpClass
tearDownClass
 1 class TestCase(unittest.TestCase):
 2     @classmethod
 3     def setUpClass(self):
 4         print('开始测试')
 5         self.driver = DriverApp().driver()
 6 
 7     # 滑动手机屏幕
 8     def test_001(self):
 9         for i in range(2):
10             GestureMainpulation().swipe_left(self.driver)
11 
12     # 点击立即体验
13     def test_002(self):
14         AppActions().a(self.driver)
15 
16     @classmethod
17     def tearDownClass(self):
18         print("结束测试")
View Code

 

转载于:https://www.cnblogs.com/ljf520hj/p/11601015.html

### Python Appium 夜神模拟器 安装配置 计算器 自动化测试 实战教程 #### 准备工作 为了确保能够顺利进行自动化测试,需先确认已安装并正确配置以下组件: - **Java Development Kit (JDK)**:用于支持 Android SDK 和其他依赖项。 - **Android SDK**:提供必要的工具和库文件以操作安卓设备或模拟器。 - **Python 3.x**:编写测试脚本的语言环境。 #### 下载与安装必要软件包 1. **夜神模拟器** - 前往官方网站获取最新版本的夜神模拟器,并按照官方指南完成安装过程[^1]。 2. **Appium Desktop Server GUI** - 可通过链接下载适合的操作系统的安装程序,并遵循说明文档中的指示执行安装流程[^3]。 3. **pip 安装 `Appium-Client ``` 4. **pip 安装 `pytest` 测试框架** ```bash pip install pytest ``` #### 启动服务及设置参数 启动 Appium Server 并设定目标平台为 Android 设备/模拟器。对于夜神模拟器而言,默认情况下 ADB 已经集成在其内部,因此无需额外配置即可识别连接状态。 #### 编写第一个测试用例——验证加法运算功能 创建一个新的 Python 文件作为入口点,在其中定义如下所示的基础结构: ```python import unittest from appium import webdriver from time import sleep class CalculatorTest(unittest.TestCase): @classmethod def setUpClass(cls): desired_caps = { 'platformName': 'Android', 'deviceName': 'Nox', # 这里填写的是夜神模拟器的名字 'appPackage': 'com.android.calculator2', 'appActivity': '.Calculator' } cls.driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps) @classmethod def tearDownClass(cls): cls.driver.quit() def test_addition(self): self.driver.find_element_by_id("digit_9").click() self.driver.find_element_by_accessibility_id("plus").click() self.driver.find_element_by_id("digit_8").click() self.driver.find_element_by_accessibility_id("equals").click() result = self.driver.find_element_by_class_name("android.widget.EditText").text assert int(result) == 17, f"Expected sum to be 17 but got {result}" if __name__ == '__main__': suite = unittest.TestLoader().loadTestsFromTestCase(CalculatorTest) unittest.TextTestRunner(verbosity=2).run(suite) ``` 这段代码实现了打开计算器应用程序并通过点击按钮的方式计算两个数相加之和的功能;最后断言预期的结果是否等于实际显示出来的数值[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值