测试派 Give testers a home.
测试派
社区愿景和功能特性
所见即所得 Markdown 编辑
随时自由编辑分享内容
支持注销账号来去自由
柠檬班
柠檬班官网
腾讯课堂
柠檬班简介
排行榜
帖子打赏排行
积分排行
活跃度排行
贡献排行
长歌测试半生,归来仍是少年
登录
注册
测试
自动化
测开
性能
安全
音视频
社区
开源
工作
招聘
生活
分享
问答
关注
30,421 浏览
查看所有领域
验证码识别如此简单 - 带带弟弟 OCR
在做web自动化的时候大家一定碰到过各式各样的验证码,验证码作为一种安全机制,可以有效防止暴力破解密码、发帖、灌水、刷票等,大家在做web自动化的时候应该有碰到验证码这个难题,一般我们可以和开发沟通请求他们的帮助:去掉验证码或者设置一个万能验证码,而如果开发不帮忙我们该如何去解决呢? ddddocr ddddocr是由 ..
Selenium
26
引用 •
22
回帖 •
1
关注
206
基于 YAML 接口自动化测试框架设计
在设计自动化测试框架的时候,我们会经常将测试数据保存在外部的文件(如Excel、YAML、CSV),或者数据库中,实现脚本与数据解耦,方便后期维护。目前非常多的自动化测试框架采用通过Excel或者YAML文件直接编写测试用例,通过脚本读取出来驱动自动化测试代码执行。至于采用Excel还是YAML格式各位小伙伴都有不同见 ..
接口测试
32
引用 •
28
回帖 •
1
关注
857
自动化测试必会之数据驱动测试
数据驱动测试 在实际的测试过程中,我们会发现好几组用例都是相同的操作步骤,只是测试数据的不同,而我们往往需要编写多次用例来进行测试,此时我们可以利用数据驱动测试来简化该种操作。 参数化: 输入数据的不同从而产生不同的测试结果(简单来说就是将输入的数据作为变量传入)。 比如搜索商品,不同的搜索关键字和搜索条件作为入参,就 ..
数据驱动
3
引用
488
Appium 环境搭建保姆级教程
APP自动化测试运行环境比较复杂,稍微不注意安装就会失败。我见过不少朋友,装了1个星期,Appium 的运行环境还没有搭好的。 搭建环境本身不是一个有难度的工作,但是 Appium 安装过程中确实存在不少隐藏的比较深的坑,如果一不小心踩中了其中的一个,那可能会花费比较长的时间来解决。 今天出一个 Appium 安装的详 ..
App自动化
22
引用 •
24
回帖 •
1
关注
526
selenium 截图实例封装
from selenium import webdriver from time import sleep, strftime, localtime, time from selenium.webdriver.common.by import By from Common import project_path cla ..
Web
19
引用 •
9
回帖
621
selenium4 与 selenium3 的区别
1)初始化浏览器对象 在初始化driver对象的时候,selenium4多了一个Service类,用来管理驱动程序的启动,停止。 service = Service(r'E:\python39\chromedriver.exe') driver = webdriver.Chrome(service=service) 2 ..
Selenium
26
引用 •
22
回帖 •
1
关注
807
IOS+Appium 自动化测试环境搭建
关于Appium for IOS Appium是目前最主流的app自动化测试技术,能够同时支持IOS、Android平台上的移动应用自动化测试,能支持众多语言,包括:Java、Python、Ruby、JavaScript等;并且Appium是开源免费使用的。 目前网上的关于Appium的学习教程绝大多数以Android ..
App自动化
22
引用 •
24
回帖 •
1
关注
1.5K
selenium 中多个相同的伪代码(::before)如何定位,伪代码出现的顺序是动态的。(如图)
[图片]
Selenium
26
引用 •
22
回帖 •
1
关注
20
【深圳】【国信证券】测试工程师 / 高级测试工程师 岗位内推,待遇优质
[图片] 一、岗位职责 负责相关业务的产品质量保障工作,从产品角度对相关软件制定测试方案和测试用例; 负责依据测试分层制定项目的功能测试和非功能测试计划,对测试结果进行分析并输出测试报告,具备良好的问题定位和分析能力,并能对产品提出需求漏洞和优化建议; 负责移动端、Web 端系统的自动化测试框架搭建、用例脚本开发; 负 ..
内推
14
引用 •
5
回帖
1.2K
安装 cypress 时遇到的错误: Cannot read properties of null (reading 'fsTop')
安装cypress时遇到的错误: Cannot read properties of null (reading 'fsTop') 前提: 1.安装nodejs,配置环境变量 2.进入项目路径,执行 npm init -y 创建一个nodejs项目,会生成一个package.json文件 3.项目路径下,npm ini ..
cypress
1
引用 •
1
关注
20
Appium inspector 可以直接定位 webview 页面, 有人知道原理吗
背景:在公司做一个hybrid app的自动化,无意中发现可以用native app的定位方式去定位webview,而且脚本可以正常运行。怀疑是Appium高版本的新特性(1.21版本)。现在用柠檬班APP的“柠檬社区”板块复现工作中遇到的情况,果然复现了。 环境:Appium Desktop 1.21版,chrome ..
App自动化
22
引用 •
24
回帖 •
1
关注
40
Lambda 表达式(一)
Lambda表达式 1、前言 Lambda表达式是一个匿名函数,有些类似与JavaScript中的闭包,把一个函数当作参数一样传递, 使用它设计的代码会更加简洁、更加灵活。许多主流语言,如Java、C#、C++、Python都支持Lambda表达式。 2、Lambda表达式语法 lambda 表达式的语法格式如下: ( ..
接口自动化
58
引用 •
89
回帖
784
Selenium Grid 4 让分布式测试有更多玩法 - 上篇
前言 我们都知道Selenium是一款在web应用测试领域使用的自动化测试工具,而Selenium Grid是Selenium中的一大组件,通过它能够实现分布式测试,能够帮助团队简单快速在不同的环境中测试他们的web应用。 分布式执行测试其实并不是一个非常难以理解的概念,简单来说,就是能够同时在不同的环境中同时执行测试 ..
Selenium
26
引用 •
22
回帖 •
1
关注
1.3K
自动化测试重运行怎么用?
测试失败时会发生什么?如果有人手动运行测试,那么他们会暂停并了解更多信息。但是,当自动测试失败时,其余部分可能会继续运行。在套件完成之前,你是没有办法看到测试报告的,并且自动化程序不会在故障时执行任何额外的操作尝试找出问题。当剩下的用例全部执行以后,测试人员可能会重新点击一下执行按钮,看看第二遍失败的用例会不会执行成功 ..
接口自动化
58
引用 •
89
回帖
697
新鲜出炉:appium2.0+ 单点触控和多点触控新的解决方案
在appium2.0之前,在移动端设备上的触屏操作,单手指触屏和多手指触屏分别是由TouchAction类,Multiaction类实现的。 在appium2.0之后,这2个方法将会被舍弃。 '[Deprecated] 'TouchAction' action is deprecated. Please use W3C ..
Appium
18
引用 •
12
回帖 •
1
关注
1.3K
# Java Faker
1、什么是Java Faker 伪造测试数据。当你开发一个新项目并需要一些漂亮的数据进行展示时,它很有用。 2、Github链接 [图片] GitHub - DiUS/java-faker: Brings the popular ruby faker gem to Java Brings the popular rub ..
Java
59
引用 •
477
回帖
589
Web 自动化测试神器之 Headless browser
背景 大家都知道,我们在通过Selenium执行web自动化测试时,每次都需要启动/关闭浏览器,如果是多线程执行还会同时打开多个,比较影响工作的正常进行。那有没有办法可以不用让浏览器的自动化执行干扰我们的工作呢? [图片] 无头浏览器(Headless browser) 无头浏览器是指没有图形化界面的web浏览器。 能 ..
web自动化
45
引用 •
98
回帖 •
1
关注
1.2K
Selenium 遇见伪元素该如何处理?
问题发生 在很多前端页面中,大家会见到很多::before、::after元素,比如【百度流量研究院】: [图片] 比如【百度疫情大数据平台】: [图片] 以【百度疫情大数据平台】为例,“累计确诊”文本并没有显示在html源代码中,如果通过常规的xpath元素定位方式是没办法的,因为“累计确诊”文本并不存在当前页面do ..
Selenium
26
引用 •
22
回帖 •
1
关注
1.5K
Jacoco 应用
1、下载jacoco 官网:https://www.jacoco.org/jacoco/index.html [图片] 2、拷贝jar包 [图片] 3、启动jacocoagent,监控被测项目 java -javaagent:jacocoagent.jar=includes=*,output=tcpserver,por ..
自动化测试工具
自动化测试工具
13
引用 •
12
回帖 •
1
关注
848
初识 JACOCO
1、什么是JaCoCo JaCoCo 是一个免费、开源Java 代码覆盖率工具。 2、什么是代码覆盖率 覆盖率是用来衡量测试代码对功能代码的测试情况,通过统计测试代中对功能代码中行、分支、类等模拟场景数量,来量化说明测试的充分度。代码覆盖率=代码的覆盖程度,一种度量方式。 覆盖率简单说:跑了一个测试用例,项目代码中哪些 ..
自动化测试工具
自动化测试工具
13
引用 •
12
回帖 •
1
关注
539
Katalon Studio 创建自定义关键词以及完成上传弹框操作
自动化测试工具
自动化测试工具
13
引用 •
12
回帖 •
1
关注
375
超详细的 pytest 教程(一)使用入门篇
前言 pytest到目前为止还没有翻译的比较好全面的使用文档,很多英文不太好的小伙伴,在学习时看英文文档还是很吃力。本来去年就计划写pytest详细的使用文档的,由于时间关系一直搁置,直到今天才开始写。本文是第一篇,主要介绍pytest的入门使用,后续会分篇针对pytest中的各个功能出详细的使用教程。 一、环境安装 ..
接口自动化
58
引用 •
89
回帖
23.6K
Katalon Studio 读取测试数据
前言 做自动化测试肯定要了解就是DDT数据驱动测试,这样做的好处就是可以通过一组或多组数据进行灵活的测试,而不需要硬编码。 那今天我们就来讲解一下Katalon怎么进行测试数据读取的。 Katalon支持的数据格式 Excel csv database data internal data 前提准备 创建好excel文 ..
自动化测试工具
自动化测试工具
13
引用 •
12
回帖 •
1
关注
650
多设备并发批量安装 App
背景 柠檬班老师在日常的答疑服务中,看到有个学员提了个这样的问题: 能不能通过脚本来实现多台设备同时安装App? 这个问题之前有好几个学员提到过,在实际工作中这个需求确实挺常见,比如我想要在很多台设备中安装很多的APK,手动一个个的安装过程挺痛苦。既然大家都有这样的述求,所以就干脆写篇文章解决大家的问题。 [图片] 实 ..
App自动化
22
引用 •
24
回帖 •
1
关注
566
Docker 安装 Jenkins
1、Jenkins能干什么 Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件项目可以进行持续集成。 2、Docker能干什么 Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任 ..
自动化测试工具
自动化测试工具
13
引用 •
12
回帖 •
1
关注
749
自动化测试技术选型
自动化测试框架 在学习自动化测试或者实践自动化测试时,我们一定会对一个名词不陌生,那就是“自动化测试框架”,而有些人也将Selenium、Appium这样的工具也称之为“自动化测试框架”,那么到底自动化测试框架如何理解呢? 软件工程中的框架(framework),特指为解决一个开放性问题而设计的具有一定约束性的支撑结构 ..
自动化测试框架
1
引用 •
1
关注
1.6K
App 自动化疑难杂症解决记录
背景 在做App自动化测试时,有些App的页面无法通过UIAutomatorViewer或者Appium检查器识别元素,比如银行金融类App页面、密码输入页面,这里以B站(哔哩哔哩)App的登录页面为例: [图片] 此时工具会提示Error taking device screenshot:EOF(截图失败)这样的错误 ..
App自动化
22
引用 •
24
回帖 •
1
关注
660
Katalon Studio 抓取元素
前言 元素定位,对于Web UI自动化而言,绝对是大家成长道路上的一道绊脚石。 很多初学者,都“死”在了元素定位上,从而失去了学习的兴趣。导致职业规划不得不半途而废~ 那么,今天,我们就使用Katalon Studio,让工具帮我们进行元素定位! Katalon Studio的web spy spy英文翻译过来的意思是 ..
Web
19
引用 •
9
回帖
1.1K
关于 Appium 各种版本的安装,都在这里
大家在初次接触Appium时会看到网上各种帖子讲解如何安装Appium,各种Appium版本的安装教程满天飞,而很多帖子中提供的安装教程是已经过时了的,容易误导初学者。这篇文章带着你一起全面了解Appium各种版本如何选择如何安装。 一句话概述: Appium安装提供两种方式:桌面版和命令行版。其中桌面版又分为Appi ..
App自动化
22
引用 •
24
回帖 •
1
关注
1.3K
极简主义 Selenide(二)
1、Selenide核心类com.codeborne.selenide.Condition API介绍 断言条件是使用should/ shouldNot/ waitUntil/waitWhile构造。建议静态导入更加简单: visible / appear // 可见 e.g. $(“input”).shouldBe( ..
Java
59
引用 •
477
回帖
499
极简主义 Selenide
1、什么是Selenide? Selenide是由Selenium WebDriver二次封装的Web自动化框架,具有以下优点: 1. 简洁流畅的API 2. Ajax支持 3. 强大的选择器 4. 简单的配置 5. 您无需考虑如何关闭浏览器、处理超时和 StaleElement 异常或搜索相关日志行、调试测试。 2、 ..
Selenium
26
引用 •
22
回帖 •
1
关注
666
jmeter 不务正业,干起了可变接口、动态参数自动化测试
jmeter这个工具既可以做接口的功能测试,也可以做自动化测试,还可以做性能测试,其主要用途就是用于性能测试。但是,有些公司和个人,就想用jmeter来做接口自动化测试。 你有没有想过呢? 下面我就给大家讲讲,用jmeter如何做接口自动化测试。 如果要你用jmeter来做接口自动化测试,你是不是把几乎每一个测试用例, ..
Jmeter
64
引用 •
60
回帖
3.7K
Junit 5(二)
1、 生命周期方法 测试方法:任何用@Test、@RepeatedTest、@ParameterizedTest、@TestFactory 标记的方法。 生命周期方法:@BeforeAll、@AfterAll、@BeforeEach、 @AfterEach。 import static org.junit.jupite ..
Java
59
引用 •
477
回帖
655
JUnit 5(一)
1、什么是JUnit5 JUnit5 是一个用于编写可重复测试的简单框架。目标是为Java测试创建一个最新的测试框架。这包括专注于 Java 8 及更高版本,以及启用许多不同风格的测试。 2、导入坐标 org.junit.jupiter junit-jupiter 5.7.0 test 3、入门案例 public ..
Java
59
引用 •
477
回帖
618
搞定 App 自动化老大难问题 - 弹窗处理
背景 很多同学在学习App自动化或者在项目中落地实践App自动化时,会发现编写的自动化脚本无缘无故的执行失败、不稳定。而导致其问题很大原因是因为应用的各种弹窗(升级弹窗、使用过程提示弹窗、评价弹窗等等),比如这样的: [图片] 如果不对这些弹窗进行处理,将会中断自动化脚本的运行,从而导致脚本执行不稳定。 弹窗处理思路 ..
App自动化
22
引用 •
24
回帖 •
1
关注
1.3K
Cucumber 之参数化
1、什么是参数化 设计测试用例过程中,需要考虑正向和方向用例,比如设计登录用例,这时我们想连续做4次反向用例和1次正向用例,就可以用到参数化实现每次执行的用户名和密码都不一样。 2、数据驱动 Scenario Outline 和 Examples 关键字 参数化和数据驱动搭配使能使我们的框架更加灵活。 Scenario ..
Java
59
引用 •
477
回帖
1.5K
红框里的代码 如何优化成一个方法
yaml文件的第二组参数里有value值为None new_todo夹具是模拟的上一个接口的返回参数 然后将yaml文件中为None的key 和new_todo 的返回值 进行赋值 这个逻辑在红框中 已经实现了 但是我想单独封装成一个方法 可以让其他接口共用一个 [图片]
接口测试
32
引用 •
28
回帖 •
1
关注
20
Cucumber 之 Gherkin 语法
1、什么是Gherkin Gherkin是一种简单的英语文本语言, 它有助于工具--Cucumber解释和执行测试脚本。一个完整的测试脚本是由多个step组成的,step即最小单元。多个step组成一个Scenario,即一个完整的测试case。多个Scenario组成一个Feature,即一组相关的测试case。 2 ..
BDD
4
引用
2.2K
Cucumber 第一个小案例
1、cucumber集成testng 上一篇我们已经介绍了如何在idea环境下运行cucumber,还没有看的同学,点击http://testingpai.com/article/1619775632529 查看。 言归正传,进入本篇文章的主题,如何使用cucumber写一个测试代码。使用cucumber写测试代码最大 ..
web自动化
45
引用 •
98
回帖 •
1
关注
1.4K
入行 4 年,跳槽 2 次,我摸透了软件测试这一行!
最近几年行业在如火如荼的发展壮大,以及其他传统公司都需要大批量的软件测试人员,但是20年的疫情导致大规模裁员,让人觉得行业寒冬已来,软件测试人员的职业规划值得我们深度思考。 大家都比较看好软件测试行业,只是因为表面上看起来:钱多事少加班少。其实这个都是针对个人运气好的童鞋才会有此待遇。在不同的阶段做好不同阶段的事情 ..
测试基础
87
引用 •
32
回帖 •
1
关注
3K
idea 整合 cucumber
1、什么是cucumber cucumber 是一个能够理解用普通语言描述的测试用例的支持行为驱动开发(BDD)的自动化测试工具,用Ruby编写,支持Java和.Net等多种开发语言。 1.1、什么是BDD? BDD俗称行为驱动开发,是测试驱动开发的延伸,开发使用简单的,特定于领域的脚本语言。这些DSL将结构化自然语言 ..
Java
59
引用 •
477
回帖
1.8K