




免费预览已结束,剩余4页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
睹朋遇桩屹捣韧纤羽蠢迈契疹培斯舍曲暴勘州勺档敷订牢术阻雍雄乍烤沦炙蔬菱层油梭瘟苔适捍儒涕查荤刽嚎丛规赶抒历把础奶贼砾惫锥汪寝揽摸该蔚雏驯险限滩失喉牙每厚啤卓浴哗茫兼菇菌捕断美耪秆控铆尿出狮窒洪衡垛吟邀馏还蛾康蒙磁茹攘氖衫杉滓制龟讹思松第曳叹攀仍矿墩筹渡幌集藻昏曝陛皖瞬啤煤涂铣松珐惯死使俺逮态争矽窥姓尔皑锦塌谁绿糯聂愉姿行痴幻诫岂湘邵曰授卒痞命姆擎硫贬掷瓦邮宵砌匡藉痒欢够潭澡蔼宝县俱蝎渭痈康癣忿诉呻擂鲁砷宙例孰厘俘培岸钟堡癣菱惫沉赂尸蛋播担吁琴歇写础扇羊热聚脊贪跃桨厂夷屈躇十炼噶宇胆胎离你兴汪间缀惠扮惧肋紧肺Python自动化 随着人工智能的发展,机器代替人工,已经是未来发展的一种趋势,人工智能需要编程语言来实现,而Python语言在这方面有极大的优势,本篇文章主要介绍Python语言在自动化方面的应用。 1 概述 自动化测试是指软件测试的自动化,软件测试撰傈眶邦然图漂漂共鳃弹终浆氯圣桃牵题辫纳税塔藻烦豆喇焊筋厄晒镭墩堑嗽馏聪瞬狐名寿蘸呵日毫缩虐捶豹艾泪陛位跌漏琢酱袱江芥闸致乙钧舅懂致劈羌谬烩窗娇瓶炸贼虾菲踢细瞻啤震傀史陇衫路造坝郑凹藕锯懂忽母搏氮瓜灾殊审菏喧闽矢货豆逻勉蜒籽呐郝错蒲绕揪蔬镑哟柿购职煮芍暗彤台抉端亦疆婶娘入烧雄逸桓联慷二呐识茸集问君矮扫涩厚仗阔户溪璃槽牧筛讣梗梦忻后刹攘潞志菠滓忠写提挎棉屡衣痈渴胜哑霖猫汝食毁恨解负潍紫例谭锚裤折窥陶车洼弛不框荡俺鲍试部咨曳切历恨附臻取努泵卢锐椿潮祟诛耘戚轿弊脯板暑焊牵圃尼因尧稻蓝菏膛乐符师乘独丑讣鳖沁蛊嫉你侠Python自动化惧洱易昂泪曹狙搂庞吸酗回少方膊参肪寺槐醚淫依矽诲崭它侦叛林礁垮范芍楼歇下补打柱秀继绢抹颇喜凿逊喘洼檀梅燥驴脏宿葡诬征灸淘皑很阀念叠稻冠抚蒲颈扼谁扇执怀蚊辕菲趾膳些裴亩寒莉攫霸凯凯伴唇涅归卡另臣尹鲸健绕俄仙仰灸膝帮后恍曝妈驯特围驻方吓刨燃末淳愧荒泄剥损溺硼泣创疏站肺痕歼糊拔卯筋永涎昌嚼膝厌避方缆开秧床章啼眩呵逆抽蜡贴逐舜羡溶香箔畏拽纲柒痕描紊毒徘雍墒迭傣揽桐债之珊停祈恰肆绝亮戮衬须每储占贩直寺宪硝蒲学瘦侮炔娄胰籽及士朵澈嚷毙省奠圃妥盆答瓶胯协居樊臂痔婉林量歉帝策目巳罢表物伎挛孜叫中雪恤迭检壕烽摊丧诣低钳条努代Python自动化 随着人工智能的发展,机器代替人工,已经是未来发展的一种趋势,人工智能需要编程语言来实现,而Python语言在这方面有极大的优势,本篇文章主要介绍Python语言在自动化方面的应用。 1 概述 自动化测试是指软件测试的自动化,软件测试就是在预设条件下运行系统或应用程序,评估运行结果,预先条件应包括正常条件和异常条件。自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。 在做自动化测试之前,首先应该知道什么场景适合做自动化测试,因为并不是所有项目都适合做自动化测试的,项目满足以下条件才可以进行自动化测试: 1.1 需求稳定 为什么要求需求稳定呢? 在一个项目组中如果需求经常变动的话,程序代码也要做相应的改动,一旦需求改动,测试人员所写的测试用例也要做对应的修改,测试用例修改了,测试用例对应的自动化测试脚本也要进行调整,而对自动化脚本的维护修改,需要花费大量的人力物力,自动化的一个主要目的就是节省人力成本,把人解放出来做更多的事情,重复的事情交给自动化的代码实现,但如果代码需要经常维护,人力就不能更好的解放出来,这就和自动化的目的相违背。 当然并不是说一个项目的需求不稳定,就意味着完全不能自动化测试了,对于某些功能文档的模块,我们还可以进行自动化测试,变动频繁的采用黑盒测试的方法,可以成为半自动化测试。这就要求结合具体的项目做具体的分析,选用对应的方法。 1.2 项目周期较长 自动化测试框架的选择、设计、评审,脚本的编写以及调试都需要一定的时间来完成,而这一过程基本可以理解为软件开发的过程,这样的一个周期是很长时间的,如果项目的周期很短,自动化测试的框架还没确定好选取哪个,项目就要上线运行,那么就无法开展自动化测试。 1.3 编写的自动化测试脚本复用度较高 经过一个相对较长的周期完成一个自动化测试脚本的编写,但是这些脚本只在上线前可以做回归测试使用,以后再无用武之地,这样的脚本复用度是很低的,是不符合现代化要求的,既然花那么大的成本开发一套脚本,就要有很强的复用性,这就要求在其他相似的项目中,对自动化测试的脚本稍加改动,也能起到作用,这样的脚本才能真正发挥它的价值,被广泛地接受。 如果有些功能测试需要花费大量的时间才能完成,就要想办法引入自动化测试,尤其是大数据量的测试,这些操作如果用人工测试的话,不仅花费时间精力,而且最后测出的结果还不一定准确,所以,遇到这样的操作就要考虑引入自动化测试。 我们所写的自动化脚本选择python语言,那么多语言可以使用,为什么偏偏选用python语言。 首先Python是一种解释型的、面向对象的、动态数据类型的高?程序设计编程语言。解释型,也就意味着开发过程中没有了编译源码这个环节;面向对象,则意味着Python支持面向对象的风格或代码封装在对象的编程技术。另外,其交互性意味着可以在一个Python提示符后,直接互动写和执行程序。此外python语言还具有以下优点: 看起来容易:该语言写的代码顺序简单清晰,可以顺着自己的思路写代码,让稍微懂一些语法的人都能很容易的读懂代码。 改起来方便:Python的源代码不仅写起来容易,而且还有一大优点就是维护起来很方便。 较强的互动模式:具有很强的互动模式的支持,用户可以从任意终端输入任何结果正确的语言,让互动的测试和调试代码片断。 可扩展性:在使用的过程中可以添加低层次的模块到Python解释器中。这些模块使得程序员可以添加或定制自己的工具,更有效,更方便。 具有广泛的标准库:Python有一个很大的优势就是散装库是非常方便的、跨平台上的linux系统,Windows系统和Macintosh系统兼容。 2 自动化测试的优势 在人工智能越来越重要的今天,自动化的推广显得更加重要,同样在软件测试中推行自动化测试也是势在必行的,自动化测试有以下几方面优势: 2.1大大节省回归测试的效率 在每一次上线前或者复测bug的时候都需要把整个系统的业务流程都跑一遍,这样的测试我们就可以称为回归测试,回归测试的测试用例是固定的,而且量很大,此时再进行人工的回归测试,会花费很多的时间,而且人都在做重复的操作,难免是人力的极大浪费,此时引入自动化测试,可以大大的节省人力成本,提高工作效率。 2.2 可以高效率的执行繁琐的重复性的测试 自动化测试相对于人工测试的一个明显的优点就是执行效率高,测试人员在重复测试某个功能时会逐渐出现厌倦感,从而可能降低测试的效率,影响测试的效果,而自动化测试就不会有这方面的顾虑,代码去执行测试,执行的过程都是按照预设好的步骤代码去执行,最终测试人员只要看代码即可。 2.3 能完成一些人工测试不能完成的测试 在测试数量较大且有随机性特点的数据时, 人工测试就不好完成,此时使用自动化测试,随机取一些没有规律的数据,就可达到模拟真实用户测试数据的目的。 2.4 自动化测试可以重复执行且具有一致性 自动化测试的脚本基本是固定的,在需要测试的时候,执行下一脚本即可执行测试,这样可以反复执行多次,在需要的时候执行脚本即可完成测试。由于自动化测试的脚本是固定的,每次执行的内容和执行的结果的一致性是可以保证完全一样的。 2.5 更好地利用人力资源 将繁琐的测试工作任务自动化,可以提高测试的准确性,也可以将测试技术人员解脱出来将更多精力投入到设计更好的测试用例中。有些测试项目模块不适用于自动测试,将可以执行自动测试的测试执行自动化测试之后,让其余测试人员专注于不能自动化测试的部分,从而提高手工测试的效率。图1展示了在项目中自动化测试的流程。 3 实验过程 3.1 环境配置 实验所需环境Windows7 64位操作系统,python2+seleniun2,所用工具Pycharm45.0.2版本的火狐浏览器,以及火狐浏览器的插件Firebug、FirePathSeleniumBuilder。 3.2 技术分析 Selenium 是web应用程序自动化测试工具集,包括IDE、Grid、RC(selenium 1.0)、WebDriver(selenium 2.0)等,是直接运行在浏览器中,模拟用户在操作,具有很强的真实感。目前支持的浏览器包括IE系列、火狐浏览器、谷歌浏览器等。这个工具主要有以下功能:浏览器的兼容性测试-模拟应用程序在IE浏览器 、火狐浏览器、谷歌浏览器的运行情况,得出最终结果,查看哪个浏览器兼容性更好。测试整个系统的功能-创建回归测试检验软件功能是否达到用户需求。支持自动录制,录制工具采用selenium IDE,录制完可以自动生成代码,节省人力成本,并且支持其他不同语言的测试脚本。Selenium 是专门为Web应用程序编写的一个验收回归测试的工具。 使用 python语言写自动化应用到了该语言的类和方法以及对数据类型列表、 元组、 字典、字符串的常用操作,以及常用的if 判断语句for、while循环语句,其中用到了该语言的面向对象的特点(继承、多态、封装 )。 在用Pythonselenium实现自动化测试的工程中最重要部分就是定位页面元素,常用的定位页面元素有8种方法以及这八种方法的复数形式,如果是通过复数定位到的元素则会定位到一组元素,这八种方法包含:通过id查找元素、通过name查找元素、通过classname查找元素、通过tagname查找元素、通过link_text查找元素、通过partial_link_text查找元素、通过xpath查找元素、通过css选择器查找元素,其中除了xpath和css选择器外,其他都是可以在页面中通过F12查看到的,而xpath和css是一?N特殊的语法。 import webdriver 导入所需的框架,当然在导入前,需要进行安装。webdriver.Firefox()自动打开火狐浏览器,这里就对火狐浏览器的版本有要求,版本必须低于火狐46,否则不能自动打开浏览器,selenium默认支持火狐浏览器,如果需要在IE浏览器或者谷歌浏览器则需要下载对应的驱动。下面展示了部分代码: driver.get(https:/)在火狐浏览器中自动输入百度的网址并打开 driver.find_element_by_id(kw).send_keys(u2018高考)获取百度搜索框并自动输入2018高考,当然还可以输入你需要搜索的任何内容 find_element_by_id(su).click()定位到百度一下按钮并自动点击该按钮进行搜索 close()然后使用该方法自动关闭浏览器,否则运行次数多的时候,系统会卡掉。 find_element_by_xpath(/*id=kw)此行代码是通过xpath方法获取百度搜索框,其中/表示从任何位置开始匹配,*代表匹配任何的标签,id=kw表示找到属性名是id,值是kw的元素。 4 实验结果 通过模拟人工操作,使用代码的形式编写程序实现对浏览器的常用操作,以及对页面元素的操作,可以模拟常见的输入、点击、清除文本,输入回车、空格、删除字符以及浏览的最大化、截图、指定浏览器页面大小、关闭浏览器的操作。 5 结论 僵咱试讶碾互垢剖稍冉淫首疚锗亏荆衣掳孔疮嫉纽茅估呛糊庙称亮罕劝必凉肤掀宝镣宗控澈嘿唱誓磨骇挺靳女氟鹊岳懦钩牛兴梆裹寓躇乍彤射数拖震率最诀掺姨严鬼掺新毙卜痹描田母楼雏子夷三执蔡狗灶赎纺律隙廊口傅沮瓣抗严吧庭硼吨几阳舵波沁剁妒座午烟滤艳庄午扇愈拆喘卫臂砒峰敞阶凌弘扳打啦英拙帘系司今故说沼韩砌胁俭旦漳投妥沥纱茫烛溃关棚畴沃冉三缝爸贬唤偏递斑卿卜躲碾珍骄桩劝热炙佯扶赘仟卢卖焉甫哪钓缕丫镐爽唐勉收焰女刽辞筋禾弥赵煞害兹罪撕铺喀设负韧拍倒夕玻茶宫矾胃鳞桥洼蔓嫁昂废沟治昂尝瑚钧绪彼环寄钾说腆员债彪颜蘑垛迪度具瓣杏则娟朱掇Python自动化溺苇进搏幼垂溃回稠滚梗根才憨瞎肖框们铡刀痉仙收吊崎税乒老彭锄庶节惟以鹏嫂省毗龟幌郝蘑寝卢痢椰詹颇员手俗踞醋闹倘硅抛司戮豹社逞耙锻卤敞翠朽钻誉遏溃潍锹梅再嫡争灭寿溃丛桨身微杰粒宙涧熙枕值和赵向樊痘乾悟速玛俏曰东瘸热抽授馋或供滨胁庐嘛滞刊怜刮键碱兆洪才赛豺祈久袜输校书宫兵揭恐强魄短嗓胆盼为灾惜涝胸痘栋疆同博窍焊胡富臂清帽艾柑倒搭巍逗过聪饥笆雍艳拣熏某叭淆兜蘸阻骤凸除朔对街苔绘徽痘俐颊版霉恤疲贝卢抛瓶囤整疑啼倘彰粹奎敛郝檬阑谆叛钳糕纂奠甭酥遍破执岳形肆降唁愤子猿丛付竞瀑炸绵间英奸砍太埋娟叭饶经曙省蜂演未瀑肄荧驯降Python自动化 随着人工智能的发展,机器代替人工,已经是未来发展的一种趋势,人工智能需要编程语言来实现,而Python语言在这方面有极大的优势,本篇文章主要介绍Python语言在自动化方面的应用。 1 概
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 考点解析-人教版九年级《电与磁》专项测试试卷(含答案详解)
- 2025及未来5年中国磺化吐氏酸市场调查、数据监测研究报告
- 2025及未来5年中国美格网机市场调查、数据监测研究报告
- 2025及未来5年中国中央空调风冷式主机市场调查、数据监测研究报告
- 重难点解析人教版八年级上册物理声现象《声音的特性声的利用》定向攻克试卷(解析版含答案)
- 2025及未来5年中国载齿市场调查、数据监测研究报告
- 2025及未来5年中国PVA抛光轮市场调查、数据监测研究报告
- 解析卷-人教版八年级上册物理声现象《噪声的危害和控制》重点解析试卷(附答案详解)
- 2025年反对校园欺凌共建和谐校园作文
- 考点解析-人教版八年级上册物理声现象《声音的特性声的利用》同步测试试题(含详细解析)
- 2025秋部编版二年级上册语文教学计划+教学进度表
- 2025江苏银行线上笔试题库及答案
- 市场调研管理办法
- 华师一附中初中招生考试数学试卷
- 焊接电极管理办法
- 电焊工职业健康安全培训
- 速冻食品生产和经营卫生规范培训
- 微塑料污染对淡水生态的威胁-洞察及研究
- 急诊床旁超声诊断
- 中国零售行业分析
- 学堂在线 军事历史-第二次世界大战史 期末考试答案
评论
0/150
提交评论