前提准备
1. 需求
- 给指定手机号发送三条短信
2. 准备目录
- script
-- test_sms_sending.py
- pytest.ini
3. 代码
test_sems_sending.py
import pytest
from appium import webdriver
"""
业务流程分析:
1.启动短信应用
2.定位到新增按钮
3.定位接收者元素
4.涉及到输入框的先clear 在输入
5.定义三条信息
6.定位到发送元素
7.遍历发送的信息
8.关闭app driver对象不会关闭
9.关闭驱动对象
"""
class TestSmsSending:
def setup_class(self):
desired_caps = dict()
# 测试设备信息
desired_caps['platformName'] = 'Android'
desired_caps['platformVersion'] = '5.1'
desired_caps['deviceName'] = '192.168.56.101:5555'
# app信息
desired_caps['appPackage'] = 'com.android.mms'
desired_caps['appActivity'] = '.ui.ConversationList'
# 驱动信息
self.driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
def teardown_class(self):
# 关闭app driver对象不会关闭
self.driver.close_app()
self.driver.quit()
def test_sms(self):
# 2. 定位到新增
self.driver.find_element_by_id("com.android.mms:id/action_compose_new").click()
# 3.定位接收者元素
receive_number = self.driver.find_element_by_id("com.android.mms:id/recipients_editor")
# 4.涉及到输入框的先clear 在输入
receive_number.clear()
receive_number.send_keys("17611111111")
send_list = [11, 'aaa', 'bbbb']
# 5.定位到发送元素
send_sms = self.driver.find_element_by_id("com.android.mms:id/embedded_text_editor")
send_btn = self.driver.find_element_by_id("com.android.mms:id/send_button_sms")
# 6.遍历发送的信息
for i in send_list:
send_sms.clear()
send_sms.send_keys(i)
send_btn.click()
pytest.ini
[pytest]
addopts = -s
# 测试环境
testpaths = ./script
#测试文件
python_files = test_*
# 测试的类
python_classes = Test*
# 测试的函数
python_functions = test_*