第二章 测试环境搭建(下)
Posted 测试开发探秘
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第二章 测试环境搭建(下)相关的知识,希望对你有一定的参考价值。
2.3 模拟器管理
经过上面的环境配置,我们已经搭建起了一个Appium+Python安卓App的测试环境。不过要运行具体的app测试用例的时候,我们需要有运行环境,通常有模拟器和真机两种。在此我们先创建一个模拟器,检测一下我们的环境是否搭建成功。
新AVD模拟器
? 启动我们安装的ADT中的eclipse,点击Eclipse软件的Windows菜单,选择其下的android Virtual Device Manager菜单项,进入Android Virtual Device Manager其对话框。如图2.3.1所示:
图2.3.1 Android Virtual Device Manager
? 点击左侧Create按钮可新建android手机模拟器。在Create new Android Virtual Device Manager对话框的输入相应的内容:
A, name文本框内给要创建的模拟器起个名字,例如antester。
B,在Device列表框内选择Galaxy Nexus(4.65,720*1280;xhdpi)。
C, target列表框自动选择了android 4.4 API Level 19{现在已安装的开发环境里只有一套API,读者可自行安装其他API,届时可任选其他API作为自己测试平台}默认即可,其他选项此时可以不做选择默认设置即可。
D,点击对话框的OK按钮确认,即可创建Android 模拟器。
以上所有设置,如图2.3.2所示。
图2.3.2,创建模拟器
启动android模拟器
模拟器的启动方法有两种:
一,在Android Virtual Device Manager中选择要启动的模拟器,单击右侧的“start”按钮,然后在弹出的对话框中单击“launch” 按钮即可启动。
二,cmd之后键入 emulator @antester,等待数秒之后android手机模拟器启动。如图2.3.3所示:
图2.3.3 启动模拟器
2.4 检测测试环境
1,启动appium
在Windows下,找到appium应用程序,双击打开,然后单击右上角的appium启动按钮,看到输出日志,如图2.4.1所示,表明启动成功。
2,启动android模拟器
启动方法:在cmd下输入:emulator @antester,过一会儿就会弹出android模拟器:如图2.3.3所示。使用adb安装要测试的App,我们使用的是众筹网的App。
3,编写测试用例
使用你习惯的编辑软件来写你的测试用例,我用语言是python,下面介绍一下具体的测试用例login.py。
#-*- coding: UTF-8 -*-
#导入常用的包
import os
import time
import unittest
from selenium import webdriver
from lib2to3.pgen2.driver import Driver
from lib2to3.tests.support import driver
#设置路径信息
PATH=lambda p:os.path.abspath(
os.path.join(os.path.dirname(__file__),p)
)
global driver
class LoginAndroidTests(unittest.TestCase):
def setUp(self):
#初始化测试平台
desired_caps={}
desired_caps[‘device‘] = ‘android‘
desired_caps[‘platformName‘]=‘Android‘ #测试平台
desired_caps[‘browserName‘]=‘‘
desired_caps[‘version‘]=‘4.2.2‘#系统版本
desired_caps[‘deviceName‘]=‘antester‘#模拟器名称
desired_caps[‘app-package‘]=‘com.subject.zhongchou‘#要测试的app
desired_caps[‘app-activity‘]=‘.ZhongChou‘#当前活动应用
self.driver=webdriver.Remote(‘http://localhost:4723/wd/hub‘,desired_caps)
def tearDown(self):
self.driver.quit()
def test_login(self):
time.sleep(30)
#点击“注册登录”按钮
button=self.driver.find_element_by_id("com.subject.zhongchou:id/register_button")
button.click()
time.sleep(10)
#登录
name = self.driver.find_element_by_id(‘com.subject.zhongchou:id/loginnumber_phone‘)
name.click()
name.send_keys(‘183XXXXX905‘) #输入用户名
psd = self.driver.find_element_by_id(‘com.subject.zhongchou:id/loginnumber_password‘)
psd.click()
psd.send_keys(‘XXXXXXX‘) #输入密码
blogin=self.driver.find_element_by_id(‘com.subject.zhongchou:id/go_numberlogin‘) #单击登录按钮
blogin.click()
time.sleep(10)
#此处要检测是否登录成功,我懒省事,略了!
if __name__ == ‘__main__‘:
suite = unittest.TestLoader().loadTestsFromTestCase(LoginAndroidTests)
unittest.TextTestRunner(verbosity=2).run(suite)
上面是一个完整的测试用例,如果里面有不明白的地方,不要紧先对这个自动化测试用例有个整体的了解,后面的章节我们会详细介绍。
4,运行测试用例
打开终端,进入到测试用例的目录下,运行测试用例文件:
Python login.py,回车后可以看到Appium终端有日志输出,而在模拟器上会安装众筹的App,安装过程是看不到的。
然后启动要测试的App,进入例登录界面,输入用户名和密码,登录成功。如果这个过程没有出错的话,说明我们的环境没有任何问题,就可以开始我们的Appium手机App自动化编程旅了。
当然不同的操作系统,不同的软件版本,难免会遇到各种奇葩的问题。在此我也不能一一列举出所遇到的问题及解决方案。大家要会在网上查询,以及查看appium的输出日志。很多问题都是因为手机或是模拟器Android版本,Appium Api版本以及app的版本不一致造成的。希望大家从此入手,去排查出现在各种问题、
2.5 本章小结
本章我们讲解了Windows环境下appium开发环境的搭建,而且通过一个简单的测试用例来检测一下我们搭建的环境是否成功。通过本章的学习,你应该能搭建出自己的开发环境,如果测试用例不理解,没有关系,我们后面会逐步讲解的。工欲成其事,必先利其器。有好的开发环境,在以后的学习中才能如虎添翼。
以上是关于第二章 测试环境搭建(下)的主要内容,如果未能解决你的问题,请参考以下文章
Windows下怎么搭建Python+Selenium的自动化环境
测试驱动开发 001:VSCode + CMake + CppUTest 环境搭建