手机计算器1+1=2---Appium自动化

要想计算1+1=2,首先要定位到按钮1,定位方式和selenium类似

用uiautoview工具

index表示第一个按钮,text文本名字--name,resource-id资源id--id,class跟网页的class一样。

选中ctrl+c,复制

1 driver.find_element_by_id("id的值")。click()
2 找到按钮1的id
3 #driver.findElement(By.id("XXXX"))

然后找到+的resouce-id,

1 driver.find_element_by_id('XXXXX').click()  #+号
2 driver.find_element_by_id('XXXX').click()   #2

  然后,

1 time.sleep(20)   #20S,在程序退出前加10秒的时间等待,方便我们观察测试结果,只有编写或者调试测试用例时才加时间等待,正式运行时去掉

driver.quit()   通过下面的quit这个方法可以自动退出应用,才可以重新运行。如果没有这个quit方法,则appium会认为这个session还没有结束,不能直接开启下一个测试用例。

 


 

接下来考虑这个问题,现在1+1=2等测试步骤写完了,还没有断言跟期望结果,没有判断和验证。

已知期望结果是2,如何自动判断测试用例执行是否成功?

1 #如何获取控件显示框中的值?用.text方法
2 #先定位显示框,然后用。text()获取它 的显示内容

 1 #先定位到显示框,然后用text方法获取显示文本,赋值给变量
 2 actual=driver.find_element_by_class_name("XXXXX").text()
 3 
 4 
 5 if (expected==2)    #为什么expected永远不等于2,因为expected是文本类型,2是整型
 6 
 7 #解决方式:直接2加双引号
 8 或者:类型转换
 9 
10 if (int(expected==2)):
11     print('测试用例通过,期望结果等于实际结果')
12 
13 else:
14     print ('测试用例失败,期望结果是"+expected+"但是实际结果是"+actual)

期望结果:来自从测试用例执行之前,一般是根据客观实际或者需求文档或者手工测试用例中的期望结果

实际结果:测试用例执行后产生的结果,从手机应用的结果页面获得

 

posted @ 2017-10-14 11:36  Yi个人  阅读(809)  评论(0编辑  收藏  举报