为什么要添加等待
避免页面未渲染完成后操作,导致的报错
经常会遇到报错:selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":&q…
1. PO 设计模式简介
什么是 PO 模式?
PO(PageObject)设计模式将某个页面的所有元素对象定位和对元素对象的操作封装成一个 Page 类,并以页面为单位来写测试用例,实现页面对象和测试用例的分离。
PO 模式的设计思想与…
1. PO 设计模式简介
什么是 PO 模式?
PO(PageObject)设计模式将某个页面的所有元素对象定位和对元素对象的操作封装成一个 Page 类,并以页面为单位来写测试用例,实现页面对象和测试用例的分离。
PO 模式的设计思想与…
HTTP状态码有哪些
问题解析:
200 OK:客户端请求成功301 moved permanently:永久重定向302 found:临时性重定向400 Bad Request:客户端请求有语法错误,不能被服务器所理解401 Unauthorized:请求…
半导体产品 半导体产品,又被称为集成电路或者IC,英文名是Semiconductor Device。在半导体测试中常用DUT(Device Under Test)来表示需要检测的IC单元。半导体测试的主要目的,是利用测试设备执行设定好的测试工作,然后对得到的各项参…
一、unittest简介
1.先导入unittest
2.用help函数查看源码解析
3.查看描述:
Python unit testing framework, based on Erich Gammas JUnit and Kent Becks Smalltalk testing framework.
翻译:python的单元测试框架,是基于java的junit测…
1. Pycharm运行Nosetests
PyCharm可以使用两种方法,运行Nosetests测试文件:
1) 图形用户界面GUI
a) 在PyCharm中,选中测试文件,如Tests/test_demo.py
b) 鼠标右键选择Run Nosetests in test_demo.py即可执行测试 注1ÿ…
什么是mock server
mock:英文可以翻译为模仿的,mock server是我们用来解除依赖(耦合),假装实现的技术,比如说,前端需要使用某些api进行调试,但是服务端并没有开发完成这些api&#…
selenium是一种自动化测试工具,它可以通过不同的定位方式来识别网页上的元素,如id、name、class、tag、link text、partial link text、css和xpath。
css和xpath是两种常用的定位方式,它们都可以通过元素的属性或者层级关系来定位元素&#…
01、什么是微服务
Adrian Cockcroft对微服务的表述:loosely couped service oriented architecture with bounded context。
这里涉及两个微服务的概念: loosely couped:松耦合 松耦合可以引申出其他概念,如各自独立,…
Django ,作为 Python 编写的一个优秀的开源 Web 应用框架,特别适用于快速开发的团队。对于很多场景来说,我们需要一份 API 文档,好处实在太多了:
提高开发效率:开发者可以基于 API 文档 快速学习和尝试 AP…
接口测试项目
1. No matching distribution found for itypes1.1.0
Could not find a version that satisfies the requirement itypes1.1.0 (from -r requirements.txt (line 8)) (from versions: )
No matching distribution found for itypes1.1.0 (from -r requirements.…
1.首先在postman新建要批量运行的接口文件夹,新建一个接口,并设置好全局变量。 2.然后在Test里面设置好要断言的方法
如:
tests["Status code is 200"] responseCode.code 200;
tests["Response time is less than 10000…
网络环境的好坏,有时会让你的产品带给用户完全不同的体验,作为开发者,在开发项目过程中,我们需要进行对于网络环境的调试。Mac环境下模拟慢速网络可以使用苹果官方提供的工具:
Network Link Conditioner
具体操作步骤…
1、录制的脚本乱码 LR录制的脚本中可能会有乱码,主要是当URL中有中文时。 通过如下问题可以解决此问题: a) Go to Vugen -> Tools -> Recording Options -> Advanced b) Check the option that reads "Support Charset" andselect …
2 对象的定位
2.1 定位单个元素
在自动化的测试中,对象元素的定位和操作是自动化的核心部分,但是对象是定位是自动化的基础,在对象的基础上,才可以形成对对象的操作。
webdriver提供了元素定位的方法,常见的有如下的几种:
id
name
class name
tag name
link text…
Markets and Markets的一项研究显示,全球DevOps的市场规模从2017年的29亿美元增加到2023年的103.1亿美元,预测期的年复合增长率(CAGR)为24.7%。人们对DevOps越来越感兴趣,因为DevOps不仅能够压缩软件的交付周期,还能提高交付的速度…
关于pycharm安装出现的interpreter field is empty(解释器为空)
关于pycharm安装出现的interpreter field is empty,无法创建项目存储的位置。如图: 我之前安装的时候一直老是有这个提示,后来才发现是因为没安装这个p…
目前常见的前端页面是由HTMLcssJavaScript组成。
一、HTML:
作用:定义页面呈现的内容
HTML 是用来描述网页的一种语言。
HTML 指的是超文本标记语言 (Hyper Text Markup Language)HTML 不是一种编程语言,而是一种标记语言 (markup langua…
这篇文章主要介绍了Python自动化测试selenium指定截图文件名方法,Selenium 支持 Web 浏览器的自动化,它提供一套测试函数,用于支持 Web 自动化测试,下文基于python实现指定截图文件名方法,需要的小伙伴可以参考一下
前…
什么是 Selenium? Selenium 是一种开源工具,用于在 Web 浏览器上执行自动化测试(使用任何 Web 浏览器进行 Web 应用程序测试)。 等等,先别激动,让我再次重申一下,Selenium 仅可以测试Web应用…
“开源 Web 应用安全项目”(OWASP)在 2019 年发布了 API 十大安全风险 《OWASP API 安全 Top10》:失效的对象级别授权、失效的用户身份验证、过 度的数据暴露、资源缺乏和速率限制、失效的功能级授权、批量分配、安全配置 错误、注入、资产管理不当、日志和监视不足…
接口测试的目的
API 测试作为集成测试的一部分,经过被测应用的接口(API)来确定是否在功能、可靠性、性能和安全方面达到预期的软件测试。因为 API 都没有 GUI 界面,API 测试都是在通信层进行的。
1.建立接口用例集
Postman功能…
文章目录 1.打开Test Modules2.新建Environment3.新建XML Test Modules4.新建.can文件5.打开XML Test Modules6.新建xml脚本并保存7.编译8.在.can文件写个测试用例9.修改报告格式为HTML10.运行查看报告后面介绍的文章会重复用到这部分,这里单独介绍下,后面不做重复介绍。
1.…
一、JMeter基础
A、JMeter介绍
Apache JMeter是Apache组织开发的基于Java的压力测试工具。 Apache JMeter may be used to test performance both on static and dynamic resources (files, Servlets, Perl scripts, Java Objects, Data Bases and Queries, FTP Servers and …
提取性能测试的三个方面:核心、高频、基础功能
签 到 请 求 步 骤
1、准备工作:
签到线程组
n HTTP请求默认值
n HTTP cookie 管理器
n 首页访问请求
n 登录请求
n 查看结果树
n 调试取样器
l HTTP代理服务器
(1)创建线…
一、UI自动化测试工具
1. uiautomator2
openatx开源的ui自动化工具,支持Android和iOS。主要面向的编程语言是Python,API设计简洁易用,在开源社区也是很受欢迎。
安装:
pip install --upgrade --pre uiautomator2# Or you can …
什么是REST-Assured
REST Assured是一套基于 Java 语言实现的开源 REST API 测试框架 Testing and validation of REST services in Java is harder than in dynamic languages such as Ruby and Groovy. REST Assured brings the simplicity of using these languages into t…
An open source load testing tool.
一个开源性能测试工具。
define user behaviour with python code, and swarm your system with millions of simultaneous users.
使用Python代码来定义用户行为。用它可以模拟百万计的并发用户访问你的系统。 如果你常关注我的博客&…
在现代软件开发中,提供清晰全面的 API 文档 至关重要。ApiModel 和 ApiModelProperty 这样的代码注解在此方面表现出色,通过增强模型及其属性的元数据来丰富文档内容。它们的主要功能是为这些元素命名和描述,使生成的 API 文档更加明确。 Api…
Sahi 是 Tyto Software 旗下的一个基于业务的开源 Web 应用自动化测试工具。Sahi 运行为一个代理服务器,并通过注入 JavaScript 来访问 Web 页面中的元素。Sahi 支持 HTTPS 并且独立于 Web 站点,简单小巧却功能强大。它相对于 Selenium 等自动化测试工具…
此前对网页内容进行元素定位的操作,接下来就可以对已经定位的元素进行操作了,一般情况下定位好元素后通过IDE的提示就可以了解到有哪些方法 #coding utf-8 import time from selenium import webdriver from selenium.webdriver.common.by import By dr…
在自动化UI测试过程中常常会在元素定位阶段就踩坑,碰到困扰已久的问题。 以下是个人整理元素定位报错原因和解决方法。 踩坑一:StaleElementReferenceException
selenium.common.exceptions.StaleElementReferenceException: Message: stale element re…
Python 内置库 - 科学计算
了解 math 函数
math 函数,python 提供的内置数学类函数库,包含了很多数学公式。 比如幂函数运算,三角函数,高等函数运算等。
math 函数操作
数字常数数论与表示函数幂对数函数三角对数函数高等特殊…
问题:appium默认启动一个应用的session过期时间是60秒到时间会自动停了刚启动的应用,工作台打印:info: [debug] We shut down because no new commands came in的日志 分析:--command-timeout 60 The default command timeout fo…
文章目录一、安装1、下载2、安装3、简单使用二、问题排查1、安装插件慢且失败率高2、无法重启(3)此时你需要“ Install as Windows service”3、Install as Windows service:失败3、ModuleNotFoundError: No module named XXX4、configparser…
步骤 代码
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Drawing;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading.Ta…
test suite
测试套件,理解成测试用例集一系列的测试用例,或测试套件,理解成测试用例的集合和测试套件的集合当运行测试套件时,则运行里面添加的所有测试用例
test runner
测试运行器用于执行和输出结果的组件
test suite、tes…
在<professional software testing with visual studio 2005 team system tools for software developer>中提到了代码覆盖率,我很久没有去书店了,不知道是不是出了新的版本,觉得书里面关于代码覆盖率方面的知识有些地方没有讲…
些代理工具可以帮助我们构造各种测试场景、以及更好的完成测试工作。下面的介绍以 Charles 为主。
Charles
Charles 是一款代理服务器,可以截取请求和响应达到分析抓包的目的,且支持多平台,能够在 Windows,Mac,Linux…
步骤
UI Automation 只适用于,标准的win32和 WPF程序 需要添加对UIAutomationClient、 UIAutomationProvider、 UIAutomationTypes的引用 代码
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.D…
Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件。它提供功能强大的 Web API & HTTP 请求调试。 1、环境变量和全局变量设置
环境变量可以使用在以下地方:
URLURL paramsHeader valuesform-data/url-encoded valuesRaw body contentHelper fi…
什么是 Selenium? Selenium 是一种开源工具,用于在 Web 浏览器上执行自动化测试(使用任何 Web 浏览器进行 Web 应用程序测试)。 等等,先别激动,让我再次重申一下,Selenium 仅可以测试Web应用…
下面通过官网和网上资料来简单介绍下Robotframework及其工作原理。
官方说明:
Robot Framework is a generic test automation framework for acceptance testing and acceptance test-driven development (ATDD). It has easy-to-use tabular test data syntax a…
PythonSeleniumUnittestDdtHTMLReport分布式数据驱动自动化测试框架结构
1、Business:公共业务模块,如登录模块,可以把登录模块进行封装供调用
------login_business.py from Page_Object.Common_Page.login_page import Login_Page
from H…
当使用JMeter和Python来实现异步接口测试时,可以按照以下步骤进行操作:
1、安装JMeter和Java Development Kit(JDK):
下载并安装JMeter(https://jmeter.apache.org/download_jmeter.cgi)和适用…
tag name
tag name 为标签名定位,使用网页元素的标签名如a, div, input, span 等。
但是有一个问题,常见的标签名比如
在同一个页面上有非常多。会不会觉得 tag name 没什么用呢? 当然普通的模拟操作是不大有用,这个重复性实在…
select标签的下拉框可以使用selenium的 Select模拟下拉框选择操作。
Select需要导入才能使用,导入路径如下
from selenium.webdriver.support.ui import Select
下面以hao123(https://www.hao123.com) 演示下拉框操作 演示代码如下
import time
from selenium i…
在软件开发的过程中,测试是确保软件质量的一个至关重要的环节。随着软件开发方法的不断演进,测试也在不断地发展和改进。其中,测试左移(Shift Left Testing)和测试右移(Shift Right Testing)是两…
Jmeter有两种方法可以实现算法加密
1、使用__digest自带函数 参数说明:
Digest algorithm:算法摘要,可输入值:MD2、MD5、SHA-1、SHA-224、SHA-256、SHA-384、SHA-512
String to be hashed:要加密的数据
Salt to be…
集成测试的概念
说到集成测试,相信每个测试工程师并不陌生,它不是一个崭新的概念,通过维基百科定义可以知道它在传统软件测试中的含义。
Integration testing (sometimes called integration and testing, abbreviated I&T) is the pha…
网上的文章对小白不友好呀,都是给你一堆参数,都不教你怎么使用,直接跳过了最重要的部分,写下该文章希望对后续人有指导性作用 什么参数都不设置时的启动方式 import time
from selenium import webdriver# 创建浏览器驱动参数对象…
框架结构
框架结构 框架基于 PO 模型进行设计,将页面元素与操作进行拆分,减少页面改动时的维护成本;同时使用 xsd 自定义 xml 标签,通过解析 xml 来驱动 selenium 进行执行,减少了一定的语言学习成本。 主要功能
基于…
一、存储过程准备:
1、建立一个空表: 1 CREATE TABLE test_data ( id NUMBER, name VARCHAR2(50), age NUMBER );
2、建立一个存储过程: 1 2 3 4 5 6 7 8 9 CREATE OR REPLACE PROCEDURE insert_test_data (n IN NUMBER) AS BEGIN --E…
页面上有些元素会隐藏起来,要鼠标放到某个位置才会显示出来,例如百度首页https://www.baidu.com/设置下面的隐藏按钮,如下图所示 定位鼠标悬停才显示的元素,要引入新模块,如下所示
from selenium.webdriver.common.ac…
今天小编就为大家分享一篇pythonselenium 定位到元素,无法点击的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
selenium.common.exceptions.WebDriverException: Message: Element is not clickable at point (234.75, 22)…
近期收到很多同学反馈,mumu12模拟器使用start_app()启动应用时,会报错:
Traceback (most recent call last):File "airtest\cli\runner.py", line 75, in runTestFile "site-packages\six.py", line 703, in reraiseFil…
1. Redis的数据结构有哪些
1. 字符串(String): 字符串是Redis最基本的数据结构。它可以存储任意类型的数据,包括文本、整数或二进制数据。字符串类型的值最大可以达到512MB。 1 2 3 4 SET name "John" GET name 将字…
os 概述
os: Operating System
os 使用 导入 os 模块 查看 os 模块使用文档 help(os)dir(os)
import os# 查看os模块说明文档
help(os)# 查看os模块的属性和方法
print(dir(os))os 操作系统相关
os.name:获取系统名称os.environ:获取系统环境变量信…
1、PO 设计模式简介
什么是 PO 模式?
PO(PageObject)设计模式将某个页面的所有元素对象定位和对元素对象的操作封装成一个 Page 类,并以页面为单位来写测试用例,实现页面对象和测试用例的分离。
PO 模式的设计思想与…
简介
在数据库中,我们经常需要对查询结果进行排序,以便更好地展示数据或满足特定的业务需求。MySQL提供了ORDER BY子句,使我们能够轻松地对查询结果进行排序。本文将详细介绍MySQL ORDER BY的用法和示例,帮助大家更好地理解和应用…
一、元素定位方式 1、元素属性定位: 1 element driver.find_element_by_id(self, id) 该类方法已经过时,新的方法如下: element driver.find_element(By.ID, ID 值) # 用元素的 ID 属性定位element driver.find_eleme…