干货-卷起来,企业级web自动化测试实战落地(三)

这篇具有很好参考价值的文章主要介绍了干货-卷起来,企业级web自动化测试实战落地(三)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


前言

Selenium 自动化测试方案

基础方案:
使用unittest,主要是用 TestCase(测试用例);
使用模块化(基本的模块化,抽取公共模块);
使用数据驱动的方式(主要包括 数据库的形式 和文件读取 );

定制执行需要测试的用例,使用unittest,主要用的是TestSuite(测试套件)、和 TextTestRunner(文本测试运行器)[或者HTMLTestRunner]

生成测试报告(发送报告到指定邮箱)

方案实现的具体

使用PyCharm创建新的PurePython项目
在项目中创建如下的文件夹(python package)

TestCase
Data
Common
TestRunner
Report

分别实现上述模块
在Data中存放数据,CSV文件,或者也可以放到数据中,使用数据驱动

## 使用csv文件
csv.reader()

## 使用数据库(MySQL),可以参考www.imooc.com的python操作MySQL的视频
cur.fetchall()

在Common中,创建测试公共模块,实现模块化的操作

## __init__(self, driver: webdriver.Firefox, base_url)
self.common = RanzhiCommon(self.driver, self.base_url)

在TestCase创建自动化测试用例,注意使用unittest.TestCase

def setUp()
def tearDown()
det test_xxx()

在TestRunner创建测试执行器和测试套件,使用unittest.TestSuite和HTMLTestRunner(第三方)

test_suite = unittest.TestSuite()
test_suite.addTest(RanzhiLogonTc01("test_xxx"))
html_test_runner = HTMLTestRunner(stream=report_file, title="xxx", description="dddd)
html_test_runner.run(test_suite)

在项目根目录创建main.py,作为测试项目的主入口,运行测试。
检查测试报告

Selenium 可能遇到的问题

<iframe>框架

f1 = find_element_by_css_selector(frame)
switch_to.frame(f1)

<select>下拉框

s1 = find_element_by_css_selector(select)
ss1 = Select(s1)
ss1.select_by_index(0)
ss1.select_by_value("人事部")

编码问题 utf-8
时间等待问题 sleep(5)

单元测试框架

unittest

unittest.TestCase
前置条件
清理
测试过程步骤
断言 assertEqual(期望值, 实际结果, 错误提示)

运行测试 test_开头的方法

unittest.TestSuite
addTest(xxx("test_batch_login"))

自定义的添加测试用例,并执行

unittest.TextTestRunner
run(suite)

执行创建并维护好的测试套件

test_runner test_suite test_case

测试运行器 测试套件 测试用例

模块化操作:
面向对象的实践:
编写一个类,类里面描述公共的方法;
实例化这个类,调用这个类的方法;

类的构造方法,需要传递 webdriver.Firefox()

self.common = RanzhiCommon(self.browser, self.base_url)

数据驱动测试:
读取csv,循环每一行数据进行操作
读取MySQL,用例存到MySQL中

中文编码的问题

# coding="utf-8"

读csv的时候,添加 encoding=‘utf-8’

csv.reader(open("xxx.csv", "r",1, encoding="utf-8")

循环放到最外层

文件路径在控制台读取不到的问题,需要用绝对路径来指向文件
封装WebDriver

避免第三方代码的威胁,防止大批量修改测试用例
节约人力的成本(如果封装以后,不需要每个自动化测试工程师都会WebDriver)
标准化自动化用例的操作,只需要调用公共的标准模块就好。

下面是我整理的2023年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

干货-卷起来,企业级web自动化测试实战落地(三),软件测试,自动化测试从入门到精通,selenium,软件测试,自动化测试,python自动化测试,web自动化测试,selenium自动化测试,selenium,软件测试工程师

二、接口自动化项目实战

干货-卷起来,企业级web自动化测试实战落地(三),软件测试,自动化测试从入门到精通,selenium,软件测试,自动化测试,python自动化测试,web自动化测试,selenium自动化测试,selenium,软件测试工程师

三、Web自动化项目实战

干货-卷起来,企业级web自动化测试实战落地(三),软件测试,自动化测试从入门到精通,selenium,软件测试,自动化测试,python自动化测试,web自动化测试,selenium自动化测试,selenium,软件测试工程师

四、App自动化项目实战

干货-卷起来,企业级web自动化测试实战落地(三),软件测试,自动化测试从入门到精通,selenium,软件测试,自动化测试,python自动化测试,web自动化测试,selenium自动化测试,selenium,软件测试工程师

五、一线大厂简历

干货-卷起来,企业级web自动化测试实战落地(三),软件测试,自动化测试从入门到精通,selenium,软件测试,自动化测试,python自动化测试,web自动化测试,selenium自动化测试,selenium,软件测试工程师

六、测试开发DevOps体系

干货-卷起来,企业级web自动化测试实战落地(三),软件测试,自动化测试从入门到精通,selenium,软件测试,自动化测试,python自动化测试,web自动化测试,selenium自动化测试,selenium,软件测试工程师

七、常用自动化测试工具

干货-卷起来,企业级web自动化测试实战落地(三),软件测试,自动化测试从入门到精通,selenium,软件测试,自动化测试,python自动化测试,web自动化测试,selenium自动化测试,selenium,软件测试工程师

八、JMeter性能测试

干货-卷起来,企业级web自动化测试实战落地(三),软件测试,自动化测试从入门到精通,selenium,软件测试,自动化测试,python自动化测试,web自动化测试,selenium自动化测试,selenium,软件测试工程师

九、总结(尾部小惊喜)

要想登上人生巅峰,就别让懒惰和畏惧成为阻碍!抛开疑虑,放下束缚,迈出勇往直前的步伐。只有敢于冒险、坚持奋斗,才能创造属于自己的辉煌!

只要心中燃起坚定的火焰,任何挑战都能被征服;不停耕耘,终将收获丰盛的果实;在追求梦想的路上,坚持不懈才是通向成功的唯一途径。

只有拼尽全力,才能超越极限;只有坚持奋斗,才能创造辉煌;只有永不放弃,才能追寻梦想;勇往直前,努力奋斗,让未来的自己感动自己!文章来源地址https://www.toymoban.com/news/detail-541584.html

到了这里,关于干货-卷起来,企业级web自动化测试实战落地(三)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 企业级高负载web服务器-Tomcat小项目

    静态页面: 在网站设计中,纯粹HTML格式的网页(可以包含图片、视频JS (前端功能实现)、CSS (样式)等)通常 被称为\\\"静态网页\\\" 特点: 处理文件类型:如.html、jpg、.gif、.mp4、.swf、.avi、.wmv、.flv等2. 地址中不含有问号\\\"?\\\"或等特殊符号。 保存在网站服务器文件系统上的,是

    2024年02月14日
    浏览(31)
  • 企业级web开发框架-期中测试(答案由chatgpt被动提供)

    选择题 B、@RequestMapping A、SpringBoot默认不支持日志配置是错误的描述。SpringBoot默认使用Logback作为日志框架,并且可以通过配置文件进行日志的配置。 B、warn 我之前的回答有误,正确答案是D、info。因为debug级别包含了info级别,所以配置了debug级别后,info级别的日志信息也会被

    2024年02月07日
    浏览(35)
  • 安装企业级高负载web服务器tomcat,并部署应用

    Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。 Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是

    2024年02月14日
    浏览(33)
  • Yunfly 一款高效、性能优异的node.js企业级web框架

    Yunfly 一款高性能 Node.js WEB 框架, 使用 Typescript 构建我们的应用。 使用 Koa2 做为 HTTP 底层框架, 使用 routing-controllers 、 typedi 来高效构建我们的 Node 应用。 Yunfly 在 Koa 框架之上提升了一个抽象级别, 但仍然支持 Koa 中间件。在此基础之上, 提供了一套强大的插件系统, 给开发者提

    2024年02月15日
    浏览(49)
  • 【企业级SpringBoot单体项目模板 】——Mybatis-plus自动代码生成

    😜 作           者 :是江迪呀 ✒️ 本文 : SpringBoot项目模版 、 企业级 、 模版 ☀️ 每日   一言 : 我们之所以这样认为,是因为他们这样说。他们之所以那样说,是因为他们想让我们那样认为。所以实践才是检验真理的唯一准则。 上回 我们说了一些开发规范

    2024年02月07日
    浏览(32)
  • Vue.js 与 ViewDesign:为企业级 Web 应用提供高效可靠的解决方案

    在当今瞬息万变的商业环境中,企业需要高效、稳定且易于维护的 Web 应用程序来支持其日常运营和业务发展。幸运的是,Vue.js 和 ViewDesign 的强大组合为开发人员提供了构建复杂企业级 Web 应用程序的完美解决方案。 Vue.js 是一个开源的渐进式 JavaScript 框架,专为构建用户界面而生

    2024年03月11日
    浏览(26)
  • Python代码规范:企业级代码静态扫描-代码规范、逻辑、语法、安全检查,以及代码规范自动编排(2)

    本篇将总结实际项目开发中Python代码规范检查、自动编排的一些工具,特点,使用方法,以及如何在Pycharm中集成这些工具,如autoflake、yapf、black、isort、autopep8代码规范和自动编排工具。上一篇总结的pylint、pyproject-flake8、pyflakes、flake8、mypy代码规范扫描工具参考: https://blo

    2023年04月09日
    浏览(33)
  • 「自动化」聊起来简单,做起来难 | 谈效风生

    第4期:“自动化”聊起来简单,做起来难 在上一期《如何找到现有研发体系的「内耗问题」?》中,我们聊了评估现有研发体系,正确的找到“体系内耗问题”,是改变研发体系的第一步。本期我们继续聊下一个关键点就是研发体系中引入自动化,看看下面两位嘉宾朋友是如

    2024年02月03日
    浏览(22)
  • 干货|移动端App自动化之触屏操作自动化

    工作中我们经常需要对应用的页面进行手势操作,比如滑动、长按、拖动等,AppiumDriver 为我们提供一个模拟手势操作的辅助类 TouchAction,可以通过它对手机屏幕进行手势操作。 具体用法参见链接:chromedriver下载地址与webview自动化关键代码 2 导入TouchAction 常用的手势操作 To

    2024年02月01日
    浏览(40)
  • 技术干货 | pytest 自动化测试实战展示

    pytest是目前企业里面使用最多、最流行的Python的单元测试框架,那我们今天就使用这个框架来完成  一个网易163邮箱登录的自动化实战案例 。 下面我们先把我们案例需要的工具进行相关的介绍: pytest是一个非常成熟的Python单元测试框架,主要特点有以下几点: 简单灵活,容

    2024年02月05日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包