首页/新闻资讯/正文详情

操作自动化测试如何实现用例设计实例

发布时间:2026/9/27 8:45:05 来源:云帆数科 栏目:资讯中心
操作自动化测试如何实现用例设计实例
点击文末小卡片免费获取软件测试全套资料资料在手涨薪更快在编写用例之间笔者再次强调几点编写自动化测试用例的原则1、一个脚本是一个完整的场景从用户登陆操作到用户退出系统关闭浏览器。2、一个脚本脚本只验证一个功能点不要试图用户登陆系统后把所有的功能都进行验证再退出系统3、尽量只做功能中正向逻辑的验证不要考虑太多逆向逻辑的验证逆向逻辑的情况很多例如手号输错有很多种情况验证一方面比较复杂需要编写大量的脚本另一方面自动化脚本本身比较脆弱很多非正常的逻辑的验证能力不强。我们尽量遵循用户正常使用原则编写脚本即可4、脚本之间不要产生关联性也就是说编写的每一个脚本都是独立的不能依赖或影响其他脚本。5、如果对数据进行了修改需要对数据进行还原。6、在整个脚本中只对验证点进行验证不要对整个脚本每一步都做验证。一、登陆用例实例笔者建议通过excle 表格来编写自动化测试用例。用例001代码示例备注通过匹配用户登录之后的昵称来判断用户是否登录成功。用例脚本login.py#codingutf-8 from selenium import webdriver from selenium.webdriver.common.action_chains import ActionChains import time driver webdriver.Firefox() driver.get(http://passport.kuaibo.com/login/?referrerhttp%3A%2F%2Fwebcloud.kuaibo.com%2F) driver.maximize_window() #浏览器最大化 #登陆快播私有云 driver.find_element_by_id(user_name).send_keys(testing360) driver.find_element_by_id(user_pwd).send_keys(198876) driver.find_element_by_id(dl_an_submit).click() time.sleep(3) #获取用户名 now_userdriver.find_element_by_xpath(//div[idNav]/ul/li[4]/a[1]/span).text #用户名是否等于虫师不等于将抛出异常 if now_useru虫师: print 登陆成功 else: raise NameError(user name error!) #退出 driver.find_element_by_class_name(Usertool).click() time.sleep(2) driver.find_element_by_link_text(退出).click() time.sleep(2) driver.close()二、添加文件用例实例用例002备注通过计算用户列表中的文件的数量来判断文件是否添加成功。用例脚本collect.py注用例登陆与退出参考用例001本用例只关注收藏用户分享的逻辑代码。#判断当前文件个数inputsdriver.find_elements_by_tag_name(input) n0 for i in inputs: if i.get_attribute(type)checkbox: nn1 print u当前列表文件为%d %n #收藏用户分享文件 driver.find_element_by_class_name(collect).click() time.sleep(3) #再次获取当前文件的个数 inputsdriver.find_elements_by_tag_name(input) ns0 for ii in inputs: if ii.get_attribute(type)checkbox: nsns1 print u当前列表文件为%d %ns #判断执行收藏文件之后比收藏之间文件加1 否则抛异常 if nsn1: print ok! else: raise NameError(添加文件失败!)三、删除文件实例用例003备注因为删除了一个文件对文件的数据发生的改变如果多次执行脚本列表中的文件被删除完了就会引发异常所以在删除一个文件后需要再添加一文件但添加文件操作不做验证。用例脚本del_one_file.py#判断当前文件个数inputsdriver.find_elements_by_tag_name(input) n0 for i in inputs: if i.get_attribute(type)checkbox: nn1 print u当前列表文件为%d %n #删除操作 driver.find_element_by_xpath(/html/body/div/div[2]/div[2]/div/div[4]/table/tbody/tr/td/input).click() driver.find_element_by_class_name(dele).click() driver.find_element_by_xpath(/html/body/div[2]/div[2]/div[2]/div).click() time.sleep(4) #再次获取当前文件的个数 inputsdriver.find_elements_by_tag_name(input) ns0 for ii in inputs: if ii.get_attribute(type)checkbox: nsns1 print u当前列表文件为%d %ns #判断执行删除单个文件之后比删除之后文件减1 否则抛异常 if nsn-1: print ok! else: raise NameError(删除文件失败!) #收藏用户分享单个文件 driver.find_element_by_class_name(collect).click() time.sleep(3)四、重命名文件用例实例用例004备注文件的重命名其实我们很难找到证据验证点证明重命名成功那么脚本整个运行没有报错我们也可模糊的判断功能测试是OK 的。用例脚本renaming.py#勾选重命名的文件 driver.find_element_by_xpath(/html/body/div/div[2]/div[2]/div/div[4]/table/tbody[5]/tr/td/input).click() time.sleep(3) #鼠标移动到“更多”按钮弹下拉框 elementdriver.find_element_by_class_name(more-fe) #定位到“更多”按钮 ActionChains(driver).move_to_element(element).perform() #鼠标移动到“更多”按钮弹下拉框 time.sleep(2) #在li 标签更多下拉框中筛选到data-actionrename重命名选项点击 lisdriver.find_elements_by_tag_name(li) for li in lis: if li.get_attribute(data-action) rename: li.click() time.sleep(2) 在input 标签中筛选typetext 的重命名输入框 inputsdriver.find_elements_by_tag_name(input) for input in inputs: if input.get_attribute(type) text: input.send_keys(u新文件名) #进行重名操作 input.send_keys(Keys.ENTER) #回车确认重命名 time.sleep(2)五、总结在本章中简单对比了手工测试用户与自动化测试用例的区别自动化测试用例编写的原则如何通过python 捕捉异常和抛出异常以及webdriver 提供的get_screenshot_as_file()函数以及如何编写自动化用例与脚本等。不过先不要急于开始实施自动化测试虽然我们可以编写单个的测试用例并通过异常捕捉判断用例是否运行成功。但只有与通过测试框架的整合我们才能真正有效可行的运用自动化测试技术。最后感谢每一个认真阅读我文章的人礼尚往来总是要有的虽然不是什么很值钱的东西如果你用得到的话可以直接拿走这些资料对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库这个仓库也陪伴我走过了最艰难的路程希望也能帮助到你凡事要趁早特别是技术行业一定要提升技术功底。

相关推荐

数字孪生·智慧城市 监管体系:三维重构+目标跟踪
数字孪生·智慧城市 监管体系:三维重构+目标跟踪

数字孪生智慧城市 监管体系:三维重构目标跟踪一、核心定位以数字孪生底座为核心,对城市全域物理空间完成高精度三维重构,搭载智能视频、物联网、北斗定位等感知设备,实现人、车、设施、事件的全域轨迹跟踪,形成可视化、… · 2026/9/13 16:47:54

计算机毕业设计之基于数据挖掘的网络流量识别方法研究
计算机毕业设计之基于数据挖掘的网络流量识别方法研究

基于数据挖掘的网络流量识别方法研究是计算机网络领域的一个重要研究方向。该方法利用数据挖掘技术对网络流量数据进行分析和处理,以实现对不同类型网络应用的识别和分类。通过收集网络流量数据、进行数据预处理、应用数据挖掘算法、评估模型以及进行网络流量识别等… · 2026/9/11 23:07:26

用 Claude API 做专业术语一致性翻译的提示词方法
用 Claude API 做专业术语一致性翻译的提示词方法

用 Claude API 做翻译本身并不复杂,真正麻烦的地方在于:一旦文档变长、文件变多,或者进入技术文档、产品本地化这类场景,术语就很容易“跑偏”。很多团队遇到的并不是译文读不通,而是同一个功能名在不同页面被翻成了几… · 2026/9/20 6:35:45

嵌入式 Linux 快速开机冷启动优化:从 U-Boot 裁剪到 Busybox 极速 1.5 秒拉起实战
嵌入式 Linux 快速开机冷启动优化:从 U-Boot 裁剪到 Busybox 极速 1.5 秒拉起实战

嵌入式 Linux 快速开机冷启动优化:从 U-Boot 裁剪到 Busybox 极速 1.5 秒拉起实战在车载数字仪表盘(如汽车通电后必须在 2 秒内显示倒车后视影像)、工业机器人急停控制器、智能门锁以及各类对冷启动开机时间(Cold Boot Time&#… · 2026/9/27 8:45:04

NoneBot2 适配器(Adapter)完全指南:注册、获取 Bot 与事件通用信息
NoneBot2 适配器(Adapter)完全指南:注册、获取 Bot 与事件通用信息

后端即时通讯 【免费下载链接】nonebot2 跨平台 Python 异步聊天机器人框架 / Asynchronous multi-platform chatbot framework written in Python 项目地址: https://gitcode.com/gh_mirrors/no/nonebot2 点击查看 免费下载 适配器(Adapter&#xff09… · 2026/9/27 8:45:04

新手入门企业手机网站建设提升用户体验的三个点避坑指南
新手入门企业手机网站建设提升用户体验的三个点避坑指南

新手入门企业手机网站建设提升用户体验的三个点避坑指南 昨晚凌晨两点,我还在给河北石家庄一家做机械配件的客户擦汗。他盯着屏幕,脸色铁青,指着页面角落那个一闪而过的弹窗问我:“这玩意儿哪来的?我网站被黑挂马不知道怎么办,是不是要赔钱?”… · 2026/9/27 8:44:58

做网站颜色黑色代码多少?老手揭秘建站报价里的隐藏坑
做网站颜色黑色代码多少?老手揭秘建站报价里的隐藏坑

做网站颜色黑色代码多少?老手揭秘建站报价里的隐藏坑 域名服务器搞不懂,是90%新手在拿到建站报价单时最大的心理障碍。很多客户拿着Excel表格问:“这行CSS里背景色为什么填000000?这跟我的服务器配置有什么关系?”别急,今天咱们不整虚… · 2026/9/27 8:44:52

PaddleGAN 预测接口(ppgan.apps)使用指南:上色、超分、插帧、动作驱动与人脸解析的 Python 推理实战
PaddleGAN 预测接口(ppgan.apps)使用指南:上色、超分、插帧、动作驱动与人脸解析的 Python 推理实战

人工智能深度学习计算机视觉媒体生成视频处理图像处理 【免费下载链接】PaddleGAN PaddlePaddle GAN library, including lots of interesting applications like First-Order motion transfer, Wav2Lip, picture repair, image editing, photo2cartoon, image style transfer,… · 2026/9/27 8:44:40

重保前的 Web 自查渗透(六):API 接口未授权与签名重放漏洞闭环
重保前的 Web 自查渗透(六):API 接口未授权与签名重放漏洞闭环

重保前的 Web 自查渗透(六):API 接口未授权与签名重放漏洞闭环在重保与大促前夕的外部暴露面排查中,传统的 SQL 注入与文件上传漏洞因 WAF 和参数化框架的普及已大幅减少。相反,业务逻辑层面的“API 未授权访问&#x… · 2026/9/27 8:44:40

MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现

简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01

汕头网站建设制作厂家避坑指南:5大注意事项救急
汕头网站建设制作厂家避坑指南:5大注意事项救急

汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01

多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习

简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01

MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现

简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01

汕头网站建设制作厂家避坑指南:5大注意事项救急
汕头网站建设制作厂家避坑指南:5大注意事项救急

汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01

多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习

简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码