安庆大理运城常德铜陵江西
投稿投诉
江西南阳
嘉兴昆明
铜陵滨州
广东西昌
常德梅州
兰州阳江
运城金华
广西萍乡
大理重庆
诸暨泉州
安庆南充
武汉辽宁

web自动化测试实战之批量执行测试用例

2月18日 观潮阁投稿
  一、实战之分离测试固件
  在UI自动化测试中,不管编写哪个模块的测试用例,都需要首先在测试类中编写测试固件初始化WebDriver类及打开浏览器,执行登录,才能进行下一步业务逻辑的操作,测试用例执行完成后还需要关闭浏览器,这部分的代码如下:importunittestfromseleniumimportwebdriverimporttime,osclassInitTest(unittest。TestCase):classmethoddefsetUpClass(cls):print(start!进入初始化环境)cls。drwebdriver。Chrome()cls。dr。maximizewindow()print(测试浏览器为:{0}。format(cls。dr。name))time。sleep(1)ulr1http:。。com。cnclassmethoddeftearDownclass(cls):cls。dr。quit()
  在每一个测试类中都要编写以上代码,因此需要重复编写很多代码。是否可以把测试固件这部分代码分离出去,测试类直接继承分离出去的类呢?我们把测试固件分离到项目中,新建文件名称为publicXFlogin。py类名为:InitTestimportunittestfromseleniumimportwebdriverimporttime,osclassInitTest(unittest。TestCase):classmethoddefsetUpClass(cls):print(start!进入初始化环境)cls。drwebdriver。Chrome()cls。dr。maximizewindow()print(测试浏览器为:{0}。format(cls。dr。name))time。sleep(1)ulr1http:。com。cn(u访问测试环境后台管理系统)cls。dr。get(ulr1)print(测试地址为:{0}。format(cls。dr。currenturl))time。sleep(1)xpathcls。dr。findelementbyxpath点击账号登录,输入用户名密码xpath(〔idapp〕pp〔2〕p〔2〕pp〔1〕p)。click()time。sleep(1)捕捉账号文本栏,进行输入账号xpath(〔idapp〕pp〔2〕p〔2〕pformp〔1〕input)。sendkeys(u)time。sleep(1)捕捉密码文本栏,进行输入密码xpath(〔idapp〕pp〔2〕p〔2〕pformp〔2〕input)。sendkeys(u)time。sleep(1)点击登录xpath(〔idapp〕pp〔2〕p〔2〕pformp〔3〕input)。click()classmethoddeftearDownclass(cls):cls。dr。quit()
  fromtestpython。publicXFloginimportInitTest在需要引用该类的文件先进行引用该类,测试类进行继承InitTest,继承后,在测试类中直接编写要执行的测试用例,例如(该2条case是小编实际项目的自动化代码,各位可以也拿)case001验证登录是否成功,代码如下:codingutfimporttimeimportunittestfromtestpython。publicXFloginimportInitTestclassAdmin(InitTest):deftestCase001(cls):验证用户是否登录成功cls。assertEqual(http:。com。cn,cls。dr。currenturl)time。sleep(1)cls。dr。quit()ifnamemain:unittest。main(verbosity2)
  fromtestpython。publicXFloginimportInitTest在需要引用该类的文件先进行引用该类,测试类进行继承InitTest,继承后,在测试类中直接编写要执行的测试用例,例如case002验证登录是否成功,代码如下:codingutf8importtimeimportunittestfromtestpython。publicXFloginimportInitTestclassAdmin(InitTest):deftestCase002(cls):进入门店评分报表页面验证门店查看明细功能xpathcls。dr。findelementbyxpathtime。sleep(2)进入门店评分报表页面xpath(htmlbodysectionsectionasideulli〔3〕span)。click()time。sleep(1)刷新门店评分报表页cls。dr。refresh()time。sleep(5)点击列表第一页,第五行门店的查看按钮,进入评分信息详情xpath(htmlbodysectionsectionsectionmainp〔2〕ppp〔2〕p〔2〕p〔1〕p〔3〕tabletbodytr〔5〕td〔10〕pbuttonspan)。click()断言门店详情页面制定元素是否展示的为神秘访客判断页面是否成功跳转到详情页textxpath(htmlbodysectionsectionsectionmainp〔2〕ppp〔2〕p〔2〕pp〔1〕p〔1〕p〔1〕)。textcls。assertEqual(u神秘顾客,text)time。sleep(1)cls。dr。quit()Case002执行完毕关闭浏览器ifnamemain:unittest。main(verbosity2)
  注解:首先需要导入publicXFlogin。py模块中的InitTest类,测试类Admin继承InitTest类。这样执行测试类后,会先执行setUpClass方法,再执行具体的测试用例,最后执行tearDownclass方法。python的类继承的方式解决了在每个测试类中都需要编写测试固件的问题。把测试固件分离出去后,即使后期测试地址发生变化,只需要修改publicXFlogin。py模块中InitTest类中的url地址即可,而不需要在每个测试类修改测试地址,减少了编写重复性代码的开销。分离了测试固件,运行以上代码,对应的测试用例执行通过。二、实战之批量执行测试用例
  在实际测试中,常常需要批量执行测试用例。例如,在testCase包中有case001login。py和case002Scorereport。py两个文件,下面批量执行这两个模块的测试用例。创建新文件testcasesuite。py,在testcasesuite。py文件中编写批量执行的代码,测试用例的代码跟上面文件中的一致,目录大概如下
  接着我们在创建AllTest。py我们来看看如何进行调用全部的测试用例,如下代码就可以实现codingutf8importunittestimportosdefAllTest():获取所有的测试模块suiteunittest。TestLoader()。discover(startdiros。path。dirname(F:python3pythoncodetestcasesuite),patterncase。py,topleveldirNone)returnsuiteifnamemain:unittest。TextTestRunner(verbosity2)。run(AllTest())
  注解:在以上代码中,批量获取测试模块用到的方法是discover。discover方法有三个参数,第一个参数startdir是测试模块的路径,存放在testCase包中;第二个参数pattern用来获取testCase包中所有以test开头的模块文件,会获取到testbaidu。py和testsina。第三个参数topleveldir在调用的时候直接给默认值None。我们执行AllTest。py文件执行代码如下,这就是批量化执行case。
  后面我会在基于这集中测试方法上,补充一些可优化的点,最近工作比较繁忙,会抽空给大家分享好文,持续分享持续输出,希望本文对你们会有所帮助,也欢迎大家支持小编,进行分享,广而告之。
  最后我也整理了一些软件测试学习资料,对于学软件测试的小伙伴来说应该会很有帮助,为了更好地整理每个模块
  需要的私信我关键字【555】免费获取哦注意关键字是:555
  全套软件测试自动化测试教学视频
  300G教程资料下载【视频教程PPT项目源码】
  全套软件测试自动化测试大厂面经
投诉 评论 转载

鸿蒙系统迎来3。0时代,官方宣布将在7月27日正式发布7月4日,AITO品牌旗下第二款新车AITO问界M7正式上市引起了各大车迷的关注,其中最大的卖点就是问界M7与华为合作后,新车会搭载华为全套车载系统,包括HarmonyOS智能……中汽协上半年汽车销量预计完成1200。2万辆,同比下降7。1集微网消息,7月6日,中汽协发文称,根据重点企业上报的周报数据推算,2022年6月,汽车行业销量预计完成244。7万辆,环比增长34。4,同比增长20。9;2022年16月,销……十部门发文支持宅基地发展乡村民宿,3方面重大利好本文作者:王小明北京在明律师事务所(此处已添加小程序,请到今日头条客户端查看)近年来,如雨后春笋般遍布乡村的民宿客栈成为了乡村旅游领域中的生力军。亲近自然、亲近乡村、亲近……生活中必看的养生小常识1。不要在潮湿的地方久住2。睡前不要喝太多水容易水肿3。植物不要放在关门窗的卧室4。睡觉不要把窗子全关了5。半年洗一次牙6。牙刷三个月一换7……12强赛唯一全败球队!下轮不胜出局,PK国足有望拿12强赛第不知不觉间世界杯预选赛亚洲区的12强赛已经战罢6轮,在这6轮比赛里,有一支球队全部失利一分未得,已经到了出局的边缘。下一轮如果他们还不能够取胜,那他们就将提前3轮出局,和卡塔尔……德国人的夏日清凉大法,看到第5个我饿了导语:近日,高温天气席卷全国,想知道在炎炎夏日如何让自己更凉快一点吗?快来看看德媒推荐的10种方法吧!1。水上之旅游泳无疑是在天气炎热下的最佳活动。人们经常在社交媒……好像又胖了!贝克汉姆带小七坐船游玩,亲吻女儿太阳穴似乎被嫌弃点击上方关注小丸子,获取更多有趣有料的时尚资讯和明星穿搭。作为曾经足球场上的明星,贝克汉姆被许多粉丝喜欢,男球迷喜欢他踢球的技巧,而女球迷则为他的颜值而疯狂。贝克汉姆和妻……5轮过后各队渐入佳境,泰山海港国安将会逆袭,三镇难争冠中超联赛已经进行了5轮的比赛,在前5轮比赛中,排在积分榜前两位的还是多少让人感到意外的,武汉三镇和上海申花均以4胜1平的不败战绩排在前两位;山东泰山虽然新赛季磕磕绊绊,但还是取……最痴情艺人张译守候植物人初恋10年,妻子二婚带娃还是丁克1985年,7岁的张译竟因为贪玩,拯救了全家人的性命。这天张译一家打算乘船去松花江游玩,到了码头票都买好了,可张译不知咋回事,就是死活不上船,还非要拉着爸妈要去动物园看大……web自动化测试实战之批量执行测试用例一、实战之分离测试固件在UI自动化测试中,不管编写哪个模块的测试用例,都需要首先在测试类中编写测试固件初始化WebDriver类及打开浏览器,执行登录,才能进行下一步业务……杨洋特战荣耀成长型主角,剧情过去一半,男主还在新手村刚开始还觉得这部剧可以期待一下,毕竟男女主角们,没有一上来,就在剧里恋爱谈个不停。可是看着看着,就有点坚持不下去。明白人无完人,男主是成长型主角。需要在不断成长的过……芝麻酱糖饼铜锅涮肉写进企业经营范围,这项试点能体现地域文化近日,北京便宜坊烤鸭集团有限公司旗下北京壹条龙清真餐饮有限公司前门店,在北京市企业信用信息网公示了铜锅涮肉芝麻酱糖饼油饼等7项特色经营活动,成为全国首家使用经营范围规范条目自主……
慈禧专业户吕中穿衣简约大方,到老也是时髦人爱奇艺腾讯缠斗东南亚出海专题圆通速递完成高管换届潘水苗继续担任总裁8名履新高管中5位为82022。10。13星期四新闻摘要(图抖音更换LOGO)12位星二代大变样!任达华翁虹女儿颜值逆天,有人却遗憾长残4个中药方剂,有效治疗各种外感咳嗽中高端市场的卷王,双芯配置的Reno8Pro到底值不值得入手年轻时倾国倾城,老了却成胖大婶,这5位身材走样的女星好可惜中国女排二队30菲律宾队,提前晋级亚洲杯8强,末轮战伊朗争全经常喝酒的人,若身体出现6个现象,建议早戒酒北京仅有的两座花塔之一镇岗塔延续免购置税政策,新能源汽车热度不减,来看这款插电式混动汽车采购工作总结关胜为什么在林冲前面林冲和关胜谁的武功厉害男孩起名,软糯可爱,又拽又奶的男宝宝乳名大全身份证查酒店记录最长多久(如何查询别人入住酒店)什么叫忘年恋(忘年恋的定义)为什么女性容易长皱纹呢一般女性长皱纹原因有什么呢陈正道最好的电影未来厨房全能做饭机器人会普及吗?会计实习日记精选模板女生喜欢一个人会有什么暗示2016全国中小学生安全教育日主题活动总结苹果取消iPhoneSE4发布计划,或是因为自研5G芯片失败

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找七猫云易事利