测试的apk: 一家民宿 断言使用的模块;unittest单元测试框架 unittest特点在于: 1、框架对测试人员来说比较友好,自带初始化方法,保证了用例运行环境,互不干扰: setup() ,在每一条用例开始前做准备工作 2、可以对测试结果生成测试报告 3、支持参数化(数据驱动:ddt),批量执行自动化用例 1、点击进入想要去的景点,这里获取的是id 2、进入后,获取文本框定位,这里获取的依然是id。因为appium推荐的(Find By)都是唯一的元素值,不需要去验证,当然,如果没有这种唯一的,那你就要考虑哪种更适合了 可以看到,在输入完北京以后,这些下拉内容全部都无法选择,那只能使用tap来点击咯 y = 210 4、以我刚才输入内容为条件,来用断言看看是否与北京一致 虽然我们用眼看到的是北京,但既然是自动化,那么也让机器来判断它吧 代码实现: 断言分很多种 assertIn(a,b) : 判断a是否在b里 其中,msg参数为断言失败的提示语,当断言失败时,就会提示你输入的这段话 我这里失败了,因为我用的是相等的断言,返回的内容为北京市,我断言的是北京 所以,在这种情况下,一定要符合场景来使用断言。 像上面这种情况,用包含就好了: assertIn()
teardown(): 在每条用例结束后做清除工作
setupClass(): 在全部用例开始前做一次准备工作
tearDownClass(): 在全部用例结束后做一次清除工作正文
3、输入文本内容为北京,并点击下拉框中的第一个内容
x = 200from appium import webdriver from appium.webdriver.common.touch_action import TouchAction import time import unittest caps = {} caps["platformName"] = "Android" caps["platformVersion"] = "5.1.1" caps["deviceName"] = "127.0.0.1:62001" caps["appPackage"] = "me.onehome.app" caps["appActivity"] = ".activity.ActivitySplash_" driver = webdriver.Remote("https://localhost:4723/wd/hub", caps) driver.implicitly_wait(15) time.sleep(5) TouchAction(driver).tap(x=207, y=1425).perform() # 点击立即开启 # 点击想去的目的地: driver.find_element_by_id('me.onehome.app:id/tv_Destination').click() #输入内容: input = driver.find_element_by_id('me.onehome.app:id/editText') input.send_keys('北京') # 点击下拉内容的第一个 time.sleep(3) # 因为是tap点击,所以先让下拉内容加载出来再去模拟手势去点击它 TouchAction(driver).tap(x = 200,y = 210).perform() # 获取主页内容的文本信息,来与我输入的内容做断言,符合既通过,不符合既用例失败 result = driver.find_element_by_id('me.onehome.app:id/tv_Destination').get_attribute('text') # 判断 是否相等 unittest.TestCase().assertEqual(result,"北京",msg='用例失败')
assertEqual(a,b): 判断a与b是否相等
assertTrue(a) : 判断a的布尔值是否为True,为True既通过,否则失败
assertIs(a,b); 判断a与b两个值的存储地址是否指向了一处
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算