自动化测试常用断言的使用方法(python+selenium)
自动化测试常用断言的使用方法(python)
自动化测试中寻找元素并进行操作,如果在元素好找的情况下,相信大家都可以较熟练地编写用例脚本了,但光进行操作可能还不够,有时候也需要对预期结果进行判断。
这里介绍几个常用断言的使用方法,可以一定程度上帮助大家对预期结果进行判断。
这里介绍以下几个断言方法:
assertEqual
assertNotEqual
assertTrue
assertFalse
assertIsNone
assertIsNotNone
(一)assertEqual 和 assertNotEqual
assertEqual:如两个值相等,则pass
assertNotEqual:如两个值不相等,则pass
下面看下具体使用方法
self.driver.find_element_by_xpath("//android.widget.LinearLayout[1]/android.support.v7.app.ActionBar.e[2]").click()#切到超模25tab
sleep(3)
self.assertEqual(self.driver.find_element_by_id('com.boohee.secret:id/tv_title').text,u'超模25','切到超模25tab失败')
- 1
- 2
- 3
(1)这边是通过id(com.boohee.secret:id/tv_title)获取它的text值,与预期“超模25”对比,如相等则pass;不相等则fail。
(2)后面的“切到超模25tab失败”是fail时需要打印的信息,可写可不写。
断言assertNotEqual反着用就可以了。
(二)assertTrue和assertFalse
assertTrue:判断bool值为True,则pass
assertFalse:判断bool值为False,则Pass
下面看下具体使用方法
self.driver.find_element_by_xpath("//android.widget.LinearLayout[1]/android.widget.TextView[1]").click()#点击登录入口
sleep(2)
self.driver.find_element_by_xpath("//android.widget.LinearLayout[1]/android.widget.EditText[1]").send_keys("testq1")#输入用户名
sleep(2)
self.assertTrue(self.find_element_by_id('com.boohee.secret:id/btn_login').is_enabled(),'未输密码登录按钮为不可点状态,Fail')
- 1
- 2
- 3
- 4
- 5
(1)这边是通过id(com.boohee.secret:id/btn_login)获取它的激活状态,如为True则pass;反之则fail。
(2)后面的“未输密码登录按钮为不可点状态”是fail时需要打印的信息,可写可不写。
断言assertFalse反着用就可以了。
(三)assertIsNone和assertIsNotNone
assertIsNone:不存在,则pass
assertIsNotNone:存在,则pass
下面看下具体使用方法
self.driver.find_element_by_xpath("//android.widget.LinearLayout[1]/android.widget.TextView[1]").click()#点击登录入口
sleep(2)
self.driver.find_element_by_xpath("//android.widget.LinearLayout[1]/android.widget.EditText[1]").send_keys("testq1")#输入用户名
sleep(2)
self.driver.find_element_by_xpath("//android.widget.LinearLayout[2]/android.widget.EditText[1]").send_keys("boohee")#输入密码
sleep(2)
self.driver.find_element_by_xpath("//android.widget.LinearLayout[1]/android.widget.Button[1]").click()#点击登录按钮
sleep(10)
self.assertIsNotNone(self.driver.find_element_by_id('com.boohee.secret:id/tv_edit_profile'),'无编辑资料按钮,登录失败,Fail')
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
(1)这边是通过寻找id(com.boohee.secret:id/tv_edit_profile)的元素是否存在,如存在则pass;不存在则fail。
(2)后面的“无编辑资料按钮,登录失败,Fail”是fail时需要打印的信息,可写可不写。
断言assertIsNone反着用就可以了。
总结:这边的断言虽然不能像人工判断预期结果那样准确,但合理灵活地运用,对于重要节点加上断言也是具有一定判断预期的效果的。
原文转至:https://blog.csdn.net/zhuquan0814/article/details/51049498
最新文章
- BZOJ 2006: [NOI2010]超级钢琴
- [深入浅出WP8.1(Runtime)]浮出控件(Flyout)
- 把excel中的数据导入到数据库
- Android端如何获取手机当前的网络状态,比如wifi还是3G, 还是2G, 电信还是联通,还是移动
- 11417 - GCD
- Java HashSet和LinkedHashSet的用法
- sql学习之基础(MySql)
- Oracle逐行累加求和
- MySQL的Master/Slave群集安装和配置
- iOS_22自定义键盘工具栏
- 详解SpringMVC请求的时候是如何找到正确的Controller
- 简述.jpg .Gif .png-8 .png-24的区别
- Ubantu 16.4 samba安装配置
- Windows 部署 Redis 群集(转)
- 好系统重装助手教你如何让win10系统快速开机
- MT【27】对数方程组求范围
- 有关g++的Xlinker选项
- Oracl 12c安装
- 使用HTTP协议向服务器传参的方式及django中获取参数的方式
- 研究table-cell和overflow
热门文章
- Ipinstall软件工具-可视对讲
- Activiti Service介绍
- Retrofit 二次封装实践
- vue判断图片为空或者图片加载不成功时显示默认图片
- 安装cnpm出现问题
- C++中几种字符串表示方法
- collections模块之defaultdict()与namedtuple()方法简单介绍
- day48——css样式
- Vue框架(一)——Vue导读、Vue实例(挂载点el、数据data、过滤器filters)、Vue指令(文本指令v-text、事件指令v-on、属性指令v-bind、表单指令v-model)
- 深度学习-生成对抗网络GAN笔记