首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏软件测试开发技术

    ​技术分享 | SeleniumIDE录制

    原文链接 1、录制回放方式的稳定性和可靠性有限 2、只支持 Firefox、Chrome 3、对于复杂的页面逻辑其处理能力有限 环境准备 Chrome 插件:https://chrome.google.com 操作完成后,切换到 IDE 窗口并单击停止录制按钮。 [6c7b28e55b6e6a07574d9b6025f90f6a14706b6a.png] 第四步:停止后,为刚录制的测试用取名ceshiren_demo1 利用 Selenium IDE 导出 pytest 导出代码如下: #注释是由 Selenium IDE 生成的代码 # Generated by Selenium IDE #导入可能用到的依赖 from selenium import webdriver 回放 选择想要回放的测试用,单击 play 按钮,在 IDE 中回放测试。

    69520编辑于 2022-04-19
  • 来自专栏软件测试开发技术

    技术分享 | Appium 录制

    Appium自动化用录制 Appium Inspect 提供了定位元素与录制的功能,使用 Appium Inspect 可以查看移动设备的 UI 布局结构,方便脚本的编写和生成。 .png] Appium-desktop自动化用录制 1. 3. 对于 Appium 的初学者,可以通过录制功能,了解编写的时候需要使用哪些 API,有哪些编写规范等,可以作为一个很好的参考。 = driver.find_element_by_accessibility_id("搜索查询") el3.send_keys("霍格沃兹测试学院") driver.quit() 上面是录制出来的代码,

    99230编辑于 2022-06-01
  • 来自专栏测吧测试开发

    技术分享 | SeleniumIDE录制

    虽然 Selenium IDE 可以帮我们生成代码、录制回放、元素定位等功能,但是缺点也很明显: 1、录制回放方式的稳定性和可靠性有限 2、只支持 Firefox、Chrome 3、对于复杂的页面逻辑其处理能力有限 ] 实战演示 录制第一个测试用 第一步:创建新项目后,取名为 hogwarts_demo1。 1650344544&q-header-list=&q-url-param-list=&q-signature=eea807228516819b52ddd918ae5e7e3065f525d6] 第四步:停止后,为刚录制的测试用取名 ceshiren_demo1 导出结构分析 利用 Selenium IDE 导出 pytest 格式代码。 导出代码如下: Python 代码 #注释是由 Selenium IDE 生成的代码 # Generated by Selenium IDE #导入可能用到的依赖 from selenium import

    1.4K30编辑于 2022-04-19
  • 来自专栏muller的测试分享

    技术分享 | SeleniumIDE录制

    原文链接 1、录制回放方式的稳定性和可靠性有限 2、只支持 Firefox、Chrome 3、对于复杂的页面逻辑其处理能力有限 环境准备 Chrome 插件:https://chrome.google.com 操作完成后,切换到 IDE 窗口并单击停止录制按钮。 [6c7b28e55b6e6a07574d9b6025f90f6a14706b6a.png] 第四步:停止后,为刚录制的测试用取名ceshiren_demo1 利用 Selenium IDE 导出 pytest 导出代码如下: #注释是由 Selenium IDE 生成的代码 # Generated by Selenium IDE #导入可能用到的依赖 from selenium import webdriver 回放 选择想要回放的测试用,单击 play 按钮,在 IDE 中回放测试。

    75010编辑于 2022-05-24
  • 来自专栏测吧测试开发

    技术分享 | Appium 录制

    Appium自动化用录制 Appium Inspect 提供了定位元素与录制的功能,使用 Appium Inspect 可以查看移动设备的 UI 布局结构,方便脚本的编写和生成。 就需要在测试设备上启动 APP,然后在终端输入如下命令(Mac OS / Linux 系统): adb logcat | grep ActivityManager 运行结果如下图: Appium-desktop自动化用录制 3. 对于 Appium 的初学者,可以通过录制功能,了解编写的时候需要使用哪些 API,有哪些编写规范等,可以作为一个很好的参考。 = driver.find_element_by_accessibility_id("搜索查询") el3.send_keys("霍格沃兹测试学院") driver.quit() 上面是录制出来的代码,

    1.8K30编辑于 2022-06-01
  • 来自专栏dongfanger

    tep集成mitmproxy录制流量自动生成

    命令说明在utils/mitm.py文件中有: ③录制流量 「示例」通过Postman发起请求: 「实际」在网页上点点点。 自动生成 就在tests/mitm实时生成好了,例文件名为当前时间: 每录制一个请求,就能在测试用中看到实时添加了一条测试步骤: # 接口描述 # 数据 # 请求 ,就可以再次编辑测试用完善它。 /usr/bin/python # encoding=utf-8 # mitmproxy录制流量自动生成 import os import time from mitmproxy import 自动生成的只支持tep风格。

    68630编辑于 2022-05-09
  • 来自专栏从零开始学自动化测试

    pytest + yaml 框架 -40.录制接口转 yaml 实现

    前言 pytest + yaml 框架基本不用写 python 代码,只需写yaml 文件就能实现接口自动化。 现在引入接口录制功能,连 yaml 文件也不用写了,点点点就能生成 yaml 例文件了。 /recorde.py -p 8099 4.电脑开启代理,设置对应端口 5.自动录制抓包转成 yaml """ addons = [ RecoderHTTP(['http://你抓的环境地址 :8001']) # 设置过滤环境 ] 3.执行命令启动服务, 指定监听 8099 端口 mitmweb -s . :8001 抓取完成后,重新打开一个终端窗口,输入pytest命令就能执行了 最后不用了需要关闭电脑上设置的代理功能

    46830编辑于 2023-08-22
  • 来自专栏软件测试那些事

    录制回放实现测试用自由

    以后点点点就OK了 在本小节中,将介绍如何通过拦截HTTP请求,通过录制的方式形成测试用 首先,我们来尝试一下如下的一个简单场景 1)调用MeterSphere的某个无参GET接口 2)录制该接口的请求和返回 3) 利用录制的结果再次执行前述接口调用 这个,就有点像“狗咬尾巴”了 ? 这样,我们拿到了一次HTTP服务接口测试所需的数据 1)服务的URL 2) 服务类型 3)预期结果 测试用 来写一个测试用验证一下 package io.metersphere.controller 在这个过程中,通过切面的请求拦截,将获取到的数据保存在了requests之中,用于在@Test中执行。 再次登录 在成功实现登录之后,我们再通过拦截录制得到的数据再次发起登录,有如下的, @Order(1) @Test public void testLoginRequest

    1.6K30发布于 2021-01-08
  • 来自专栏全栈程序员必看

    httprunner(4)录制生成测试用

    前言 写之前,我们应该熟悉API的详细信息。建议使用抓包工具Charles或AnyProxy进行抓包。 ,导出到/hrun_demo/har下,命名为baidu,格式选择HTTP Archive(.har),点击save 此时,har文件夹下会多出baidu.har文件 har2case生成 –exclude:指定exclude关键字,包括exclude的url字符串将被忽略,可以选择多个关键字以“|”联接 生成pytest格式的 HttpRunner 3.0.7版本开始,har2case html;charset=utf-8" ] } ] } ] } YAML/JSON和 pytest例文件含有相同的信息,也可以使用hrun运行。

    84720编辑于 2022-09-16
  • 来自专栏从零开始学自动化测试

    pytest + yaml 框架 -41.postman 和 python代码自动录制成yaml

    前言 python代码 和postman 写的接口也能通过录制功能自动生成yaml格式了。 /recorde.py -p 8099 4.电脑开启代理,设置对应端口 5.自动录制抓包转成 yaml """ addons = [ RecoderHTTP(['http://httpbin.org ,只需执行对应的接口,就可以自动抓取转成yaml了. yaml 中不会带上cookies 3.save_base_url是否在 pytest.ini 保存全局base_url环境地址, 默认False. ,yaml 默认保存目录cases

    51040编辑于 2023-08-22
  • 来自专栏TalkPython

    Python播放和录制声音

    Python语言已经无所不能了,今天就来分享一下,如何使用Python来录制和播放音频文件。 下面是一些可以播放和录制音频的Python第三方库: playsound,支持MP3和WAV,目前只支持简单的回放。 simpleaudio,支持WAV,提供检查文件是否仍在播放的功能。 pydub.playback import play sound = AudioSegment.from_mp3('myfile.mp3') play(sound) 使用pyaudio库 1、安装 既然您已经了解了如何使用许多不同的库来播放音频,现在就来看看如何使用Python自己录制音频。 二、录音 Python -sounddevice和pyaudio库提供了Python录制音频的方法。 ') sound.export('myfile.mp3', format='mp3') 如果觉得内容还不错,分享给更多朋友,一起提升编程技能。

    8.2K30发布于 2019-05-24
  • 来自专栏Ceph对象存储方案

    S3上传代码-golang

    S3上传-golang 使用AWS-SDk-golang实现文件上传,支持大文件并发,注意只支持AWS4签名,因此ceph的jewel以上版本才可以。 s3manager" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/s3" ) func : aws.Bool(false), //virtual-host style方式,不要修改 } newSession := session.New(s3Config) s3Client := s3.New(newSession) cparams := &s3.HeadBucketInput{ Bucket: bucket, // Required } _, err := s3Client.HeadBucket(cparams) if err !

    7.2K80发布于 2018-03-26
  • 来自专栏软件工程师成长笔记

    UML图及其描述

    在系统分析阶段,我们一般UML来画很多图,主要包括图、状态图、类图、活动 图、序列图、协作图、构建图、配置图等等,要画哪些图要根据具体情况而定。 其实简单的理解,也是个人的理解,UML的作用就是很多图从静态和动态方面来 全面描述我们将要开发的系统。 二.建模简介 建模是UML建模的一部分,它也是UML里最基础的部分。 建模的最主要功能就是用来表达系统的功能性需求或行为。依我的理解建模可分为 图和描述。图由参与者(Actor)、(Use Case)、系统边界、箭头组成,画图的方法来完成。 描述用来详细描述图中每个文本文档来完成。 1. 图 参与者不是特指人,是指系统以外的,在使用系 统或与系统交互中所扮演的角色。

    2.3K30发布于 2019-04-22
  • 来自专栏从零开始学自动化测试

    Cypress web自动化29-失败截图以及录制mp4视频

    前言 做 web 自动化的时候,我们希望失败了能截图,这是之前 selenium 写 ui 自动化用的时候经常遇到的问题。 cypress 可以说是业界良心了,不仅帮我们失败的时候自动截图保存下来,还把每个录制成了mp4的小视频,方便追踪问题的时候回放视频 screenshots 失败截图 Cypress自带截屏功能, 当我们用命令行执行完后 cypress run 运行结果 (Video) - Started processing: Compressing to 32 CRF - Finished 从上面截图就能快速定位到问题,访问登录页面的时候,定位 #count 元素失败了 videos 视频录制 在运行的时候,已经对每个录制了对应的视频 /cypress/videos 目录下就能找到以脚本命名的 很容易看出是因为没打开登录首页,因为其他用登录后有 cookies 了,就直接进入到已登录后的页面了 视频功能 可以通过将video设置为false来关闭录制视频功能。

    2K20发布于 2020-06-04
  • 来自专栏UML

    图示例:包含和扩展

    什么是图? 提供了系统的高级视图。建模是与用户和其他利益相关者就系统和目标进行沟通的有效方式。描述了系统执行的动作序列,其为特定的actor产生可观察的值结果。 图指南 确保每个都能满足可观察的用户目标 图未显示的详细信息:它仅总结了,参与者和系统之间的一些关系。 图未显示为实现每个的目标而执行步骤的顺序。 你如何写一个包含以下元素: 名称 - 用于传达范围的明确动词/名词或演员/动词/名词描述符。 简要说明 - 描述范围的简短文本段落。 发布条件 - 完成时必须为true的任何内容。 包含和扩展 图示例描述: 此图示例描述了几个业务的模型。 模型表示餐馆(业务系统)与其主要利益相关者(业务角色和业务角色)之间的交互。在确定了基本之后,您可以使用<extend>和<include>使它更清晰。 使用此图模板创建自己的图表。

    3K90发布于 2018-07-04
  • 来自专栏全栈程序员必看

    UML 图_uml建模图和细化用

    UML 图 参考 【UML】— 图 初学UML——图 需求中如何画图 为什么使用用图 从业务事件、发起事件以及系统如何响应这些事件来建模系统功能的过程。 图被广泛使用于系统的需求建模阶段,并在系统的整个生命周期中被不断细化。 确定 的特征保证能够正确地捕捉功能性需求,同时也是判断是否准确的依据。 是动宾短语 是相对独立的 是由参与者启动的 要有可观测的执行结果 一个是一个单元 与参与者 一个可以隶属一个或多个参与者,一个参与者也可以参与一个或多个。 包含的两个基本约束: 基可以看到包含,并需要依赖于包含的执行结果,但是它对包含的内部结构没有了解; 基一定会要求包含执行。 使用扩展我们就可以在不改变基的同时,根据需要自由地向用中添加行为。 图示例 依赖关系对比 描述 一个完整的模型应该不仅仅包括图部分,还要有完整的描述部分。

    1.9K20编辑于 2022-10-04
  • 来自专栏软件开发 -- 分享 互助 成长

    图从用户的角度描述对软件产品的需求,并分析产品所需要的功能和动态行为。 图的组成元素: 1、参与者:代表系统的用户(可以是人、物、时间或者其他系统),小人表示。 2、系统边界:矩形表示。 3椭圆表示。 4、关联:包含(include)、扩展(extend)、泛化(generalization)       包含:表示一个的行为包含了另一个的行为(基本的步骤中一定含有被包含的步骤),如“ 扩展:表示对基本的一个扩展。(基本的步骤中有时会用到扩展的步骤)。 扩展有一个扩展点,只有扩展点被激活的时候,子才会被执行,如“交罚款”是"还书"的一个扩展,扩展点是欠费,即只有欠费的情况下去还书才会交罚款,否则不需要。    

    2.2K50发布于 2018-02-05
  • 分析方法定义 (Use Case)是一种描述系统需求的方法,使用用的方法来描述系统需求的过程就是建模。建模可分为图和描述两个部分。 图由参与者(Actor)、(Use Case)、系统边界、箭头组成。描述用来详细描述图中每个,可用文档来完成。 我们可以这样去理解,是参与者想要系统做的事情。对于对的命名,我们可以给取一个简单、 描述性的名称,一般为带有动作性的词。在画图中用椭圆来表示,椭圆下面附上的名称。 描述 图只是简单地图描述了一下系统,但对于每个,我们还需要有详细的说明,这样就可以让别人对这个系统有一个更加详细的了解,这时我们就需要写描述。 以下是说明表格一般格式: 名称: 标识号: 参与者: 简要说明: 前置条件: 基本事件流: 1. 2. 3

    58110编辑于 2025-04-05
  • 来自专栏软件测试那些事

    我骄傲- PowerMock系列之3

    测试场景 笔者最近参加了一系列校园招聘,问到同学们熟悉哪些设计模式时,基本上所有人都提到了单模式。 单模式是常见的一种创建型设计模式,保证了采用该模式的类的实例的全局唯一性。 ); } } 上述被测应用中的invokeSingleton方法调用了一个Singleton单类的方法来完成某项特定工作。 该单类的源码如下: public class Singleton { public String printHelloWorld( String value ) { StringBuilder mockSingleton); 这样,就实现了当调用SingletonInstance.INSTANCE时,将返回被mock过的Singleton对象mockSingleton ,也就是实现了对于单模式的模拟 最后说一句,情非得已,慎用单

    3.3K20发布于 2020-12-01
  • 来自专栏全栈程序员必看

    图详解_图include是什么画的

    我们还可以根据具体的操作把它抽象成3,它展示的系统需求和单个是完全一样的。 3.例规约   对于每一个,我们还需要有详细的描述信息,以便让别人对于整个系统有一个更加详细的了解,这些信息包含在用例规约之中。 基本流描述的是的基本流程,是指用“正常”运行时的场景。    (3)场景:同一个在实际执行的时候会有很多不同的情况发生,称之为场景,也可以说场景就是的实例。    一个基础可以拥有一个或者多个扩展,这些扩展可以一起使用。 3.泛化   的泛化指的是一个父可以被特化形成多个子,而父和子之间的关系就是泛化关系。    3.构建模型   系统管理员直接参与的为登录、找回密码、查看班级基本信息、删除班级基本信息、修改班级基本信息和录入班级基本信息。校领导直接参与登录、找回密码和查看班级基本信息。

    2.9K40编辑于 2022-10-04
领券