自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(117)
  • 收藏
  • 关注

原创 Linux - 使用重定向

Linux - 使用重定向

2024-07-15 08:00:00 339

原创 chrome F12 隐藏cookie字段问题

chrome F12 隐藏cookie字段问题。

2024-07-15 01:28:40 449

原创 Linux - 统计磁盘使用情况

Linux - 统计磁盘使用情况

2024-07-14 08:00:00 226

原创 Linux - 编写 hello world 程序

Linux - 编写 hello world 程序。

2024-07-14 08:00:00 235

原创 Linux - 综合使用shell脚本,输出网站有效数据

Linux - 综合使用shell脚本,输出网站有效数据

2024-07-13 22:54:23 308

原创 Linux - 统计代码行数

Linux - 统计代码行数实例。以及相关知识点说明。

2024-07-13 22:27:18 340

原创 Linux - 探索命令行

仅仅了解这些最基础的命令行知识是不够的. 通常, 我们可以抱着如下的信条: 只要我们能想到的, 就一定有方便的办法能够办到. 因此当你想要完成某件事却又不知道应该做什么的时候, 请向Google求助. 如果你想以Linux作为未来的事业, 那就可以去图书馆或互联网上找一些相关的书籍来阅读.后可以跟两个参数, 可以查看不同类型的帮助(请在互联网上搜索). 例如当你不知道C标准库函数。下面给出一些常用命令使用的例子, 你可以键入每条命令之后使用。之外, 还会教你在使用一款新的命令行工具时如何获得帮助.

2024-07-13 22:24:59 336

原创 精准测试 & Jacoco 代码覆盖率统计实战

测试设计阶段测试范围评估少:质量差评估多:成本高测试设计设计全:成本高设计少:用时少、风险高交付测试阶段开发工程师顺手改了代码,忘记同步,对上线有什么影响?马上要上线了,系统达到质量标准了么?测试工程师核心功能是否回归足够?功能点这么多,测完还会有遗漏测试点么?代码变动太频繁,上线会有什么风险么?于是引出想解决的问题这次版本新增/修改的代码,都有测试覆盖到吗?上线前的回归,怎样弄清楚测试范围?精准测试的目标降低测试成本:根据代码变更定位测试范围。

2024-07-12 00:02:36 632

原创 增量覆盖率

如图所示,在master分支提交了HelloController,然后从master拉了个新分支test;提交了第1次代码,增加了WorldController;提交了第2次代码,增加了DonController。版本对比:在分支上,第2次提交和第1次提交版本对比的增量代码,就是DonController;第2次提交和刚从master拉取分支时版本对比的增量代码,除了DonController还有WorldController;

2024-07-12 00:01:40 2919

原创 appium环境准备

上边的界面,点击安装目录下的SDK Mansger.exe文件,同样可以打开,已经自动打开的忽略此步。变量值尽量点击浏览目录去找,不要手动输入,避免文件夹名输入错误,或者路径输入错误造成找不到路径。以上涉及安装的软件,基本都是国外的,所以网站下载巨慢,建议直接从我百度网盘下,变量名:固定写图片上的,变量值:找到你JDK安装后的那个文件夹,完成后点击确定。除了这四个必装外,其他自动打勾的项目,装不装都是可以的,随意。所以你就不要修改路径了,默认就好。这个用我上边的链接就好,官网没有梯子,你是上不去的。

2024-07-10 19:58:07 956

原创 git-工作场景

git-工作场景

2024-07-10 19:55:23 284

原创 xxl-job中的cron表达式详解

xxl-job 是一个轻量级分布式任务调度平台,核心的设计目标:学习简单、开发迅速、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。而且有较为完善的说明文档《分布式任务调度平台XXL-JOB》和 图形化操作界面。xxl-job是开源项目,在 GitHub 可以下载到项目的源码,调度中心是一个 Spring MVC 项目,搭建 demo 前也需要将项目完整 clone 到本地。

2024-07-09 23:47:42 1531

原创 git如何使 .gitignore 配置的文件生效

欢迎关注公众号,与Joker一起探索测试之道。

2024-07-09 23:46:01 556

原创 通过ssh的方式拉取github代码

3. 当提示`Enter a file in which to save the key`时,可以直接按`Enter`接受默认文件位置(通常在~/.ssh/id_rsa`)。2. 从主菜单中,选择`VCS` > `Checkout from Version Control` > `Git`。5. 成功创建密钥后,可以通过`cat ~/.ssh/id_rsa.pub`命令查看并复制SSH公钥的内容。5. 在“Key”栏位中,粘贴你之前复制的SSH公钥内容(即`id_rsa.pub`文件的内容)。

2024-07-08 23:46:59 360

原创 PlayWright教程

微软开源自动化测试工具Playwright,支持主流浏览器,包括:Chrome、Firefox、Safari 等,同时支持以无头模式、有头模式运行,并提供了同步、异步的 API,可以结合主流测试框架使用,并且支持浏览器端的自动化脚本录制等功能。跨浏览器:Playwright 支持所有现代渲染引擎,包括Chromium、WebKit 和 Firefox;跨平台:在 Windows、Linux 和 MacOS 上进行本地或 CI、无头或有头测试;

2024-07-08 23:45:31 841

原创 selenium VNC 远程同步

使用户能通过浏览器直接视觉化检查容器活动,这对于无法在设备上安装VNC客户端的情况特别有用。noVNC通过7900端口启动,所以需要通过这个端口用浏览器访问。如果您资源紧张或不需要检查运行中的会话,可以选择完全不运行VNC服务。只需在网格启动时设置SE_START_VNC=false环境变量即可。欢迎关注公众号,与Joker一起探索测试之道。同样,密码是secret。

2024-07-07 14:13:24 328

原创 selenium_linux环境问题汇总

wait = WebDriverWait(self.browser, 60) # 设置最长等待时间为60秒。options.add_argument('--headless') # 无头模式。欢迎关注公众号,与Joker一起探索测试之道。未设置浏览器的无头(headless)模式。Selenium 浏览器。

2024-07-07 14:11:42 180

原创 selenium实战 - docker环境部署

selenium实战 - docker环境部署

2024-07-06 13:06:15 533

原创 实战:使用多线程处理并发操作

工具实战:使用多线程处理并发操作

2024-07-06 12:54:29 409

原创 Selenium实战 - 无头模式

自动化实战,selenium之无头模式。

2024-07-05 21:57:43 578

原创 接口自动化实战-日志模块接入

接口自动化框架接入日志的能力

2024-07-05 21:55:25 144

原创 selenium处理cookie问题实战

selenium处理cookie问题实战

2024-07-04 23:29:57 763

原创 selenium4和selenium3的区别

selenium4和selenium3的区别

2024-07-04 23:27:38 811

原创 selenium环境准备(windows)

Python+Selenium环境搭建。

2024-07-03 00:43:29 323

原创 javascript的三种弹出对话框alert,confirm和prompt

alert()方法和confirm()方法的使用十分类似,都是仅仅显示已有的信息,但用户不能输入自己的信息,但是prompt()可以做到这点,她不但可以显示信息,而且还提供了一个文本框要求用户使用键盘输入自己的信息,同时她还包含“确认”或“取消”两个按钮,如果用户“确认”按钮,则prompt()方法返回用户在文本框中输入的内容(是字符串类型)或者初始值(如果用户没有输入信息);如果用户单击“取消”按钮,则prompt()方法返回null,我们称这种对话框为提示框,在这三种对话框中,她的交互性最好。

2024-07-03 00:41:29 450

原创 httprunner断言-兼容潜在的多个响应值

smile,可能存在不统一的其他名字: SMILE / Smile / 一串数字id(如 26479376494)9mobile,可能存在不统一的其他名字:NINEMOBILE / NINE_MOBILE / 9MOBILE。方案一:是否可以在hrp的框架基础上断言多个预期值。方案二:是否可以调整有效的断言方法解决该问题。查看官方文档,支持包含断言,可采用方案一。

2024-07-02 19:52:30 703

原创 IT测试入门,高考假期预习指南

IT测试入门,高考假期预习指南

2024-07-02 15:48:53 173

原创 自动化环境服务器环境启停

部署到Linux的自动工具脚本(xx.py),借助shell脚本,实现自动自动。便于后续持续集成和定时任务启动。

2024-07-01 23:59:39 184

原创 定时任务无效跟踪(python的schedule)

因此,以上表达式代表在每天的 09:00 和 18:00 执行 `/path/to/python /path/to/your_script.py` 这个 Python 脚本。脚本换到Linux(centos8)上后,定时任务未能正确定时定点执行。定时任务 入口未正确调用。使用schedule模块,按上述方法执行定时任务,- `9,18`: 表示小时为 9 和 18。- `0`: 表示每小时的第 0 分钟。`crontab` 定时任务。- `*`: 表示每天。- `*`: 表示每月。- `*`: 表示每周。

2024-07-01 23:55:47 356

原创 pytest-Hook(钩子)函数

hook 函数相当于是 Pytest 的一些本地插件,Pytest 给我们提供了许多的 hook 函数,用于处理不同阶段的自定义行为。

2024-06-30 15:48:55 433

原创 pytest-命令行参数

命令行参数使用 Pytest 执行用例时,我们经常都是通过命令行来执行的,有同学要说了,我一般是通过编辑器里面直接就执行了;在实际项目中编写用例调试用例,使用编辑器执行用例没问题,但在 CI 集成环境下,一般是需要用命令行的。Pytest 要想玩得溜,命令行参数必须要熟悉,Pytest 支持的参数很多,有自带的参数,插件提供的参数,还有我们自己定义的一些参数,下面就介绍在项目中常用的参数:1、-s有时候你发现在用例里面使用 print 语句,但是执行的时候却没有打印,那多半是因为你没有加这个

2024-06-30 15:47:52 374

原创 pytest-两种不同写法

这里还要讲一下 setup_method 和 setup_function 的区别,setup_function 是在基于函数的用例写法时使用的,setup_method 是基于类的用例写法使用的,我面试别人的时候喜欢问这两个的区别,如果知道这个的,基本对本部分内容是了解的。熟悉 unittest 框架的人都知道,unittest 里面 fixture 的写法是 setUp 和 tearDown,setUp_class 和 tearDown_class,只有这一种写法,而且是固定的写法哈。

2024-06-30 15:46:36 237

原创 pytest-内置固件

似乎测试正常执行完全没有问题,但如果我们的家目录下恰好有这个配置文件并且维护了许多配置,运行测试将会覆盖原有配置,这太可怕了!pytestconfig 其实是 request.config 的快捷方式,所以也可以自定义固件实现命令行参数读取。使用 tmpdir.mkdir() 创建目临时录,tmpdir.join() 创建临时文件(或者使用创建的目录)。但程序已经写死了文件路径,怎么办?使用 pytestconfig,可以很方便的读取命令行参数和配置文件。用于临时文件和目录管理,默认会在测试结束时删除。

2024-06-30 15:45:27 585

原创 pytest-固件参数化

更进一步,可以继续将这些固件合并为一个,而通过参数控制连接到不同的数据库。固件参数化需要使用 pytest 内置的固件 request,并通过 request.param 获取参数。假设现在有一批 API 需要测试对不同数据库的支持情况(对所有数据库进行相同操作),最简单的方法就是针对每个数据库编写一个测试用例,但这包含大量重复代码,如数据库的连接、关闭,查询等。与函数参数化使用 @pytest.mark.parametrize 不同,固件在定义时使用 params 参数进行参数化。

2024-06-30 15:43:59 366

原创 pytest-自动执行固件

目前为止,所有固件的使用都是手动指定,或者作为参数,或者使用 usefixtures。如果我们想让固件自动执行,可以在定义时指定 autouse 参数。欢迎关注公众号,与Joker一起探索测试之道。

2024-06-30 15:42:56 391

原创 pytest-作用域

固件的作用是为了抽离出重复的工作和方便复用,为了更精细化控制固件(比如只想对数据库访问测试脚本使用自动连接关闭的固件),pytest 使用作用域来进行指定固件的使用范围。欢迎关注公众号,与Joker一起探索测试之道。默认的作用域为 function。

2024-06-30 15:42:01 337

原创 pytest-预处理和后处理

Pytest 使用 yield 关键词将固件分为两部分,yield 之前的代码属于预处理,会在测试前执行;yield 之后的代码属于后处理,将在测试完成后执行。很多时候需要在测试前进行预处理(如新建数据库连接),并在测试完成进行清理(关闭数据库连接)。当有大量重复的这类操作,最佳实践是使用固件来自动化所有预处理和后处理。可以看到在测试成功的 . 标识前后有数据库的连接和关闭操作。欢迎关注公众号,与Joker一起探索测试之道。

2024-06-30 15:41:03 89

原创 pytest-固件(fixture)

固件可以直接定义在各测试脚本中,就像上面的例子。更多时候,我们希望一个固件可以在更大程度上复用,这就需要对固件进行集中管理。不要自己显式调用 conftest.py,pytest 会自动调用,可以把 conftest 当做插件来理解。在复杂的项目中,可以在不同的目录层级定义 conftest.py,其作用域为其所在的目录和子目录。固件(Fixture)是一些函数,pytest 会在执行测试函数之前(或之后)加载运行它们。我们可以利用固件做任何事情,其中最常见的可能就是数据库的初始连接和最后关闭操作。

2024-06-30 15:39:13 332

原创 pytest-参数化

在 pytest 中,我们有更好的解决方法,就是参数化测试,即每组参数都独立执行一次测试。不过虽然参数众多,但仍然是一个测试,当某组参数导致断言失败,测试也就终止了。当对一个测试函数进行测试时,通常会给函数传递多组参数。比如测试账号登陆,我们需要模拟各种千奇百怪的账号密码。如果觉得每组测试的默认参数显示不清晰,我们可以使用 pytest.param 的 id 参数进行自定义。通过异常捕获,我们可以保证程所有参数完整执行,但要分析测试结果就需要做不少额外的工作。欢迎关注公众号,与Joker一起探索测试之道。

2024-06-30 15:38:17 350

原创 pytest-跳过函数

按正向的思路,我们只要通过标记指定要测试的就可以解决这个问题;但有时候的处境是我们能进行反向的操作才是最好的解决途径,即通过标记指定要跳过的测试。上一节提到 pytest 使用标记过滤测试函数,所以对于那些尚未开发完成的测试,最好的处理方式就是略过而不执行测试。Pytest 还支持使用 pytest.mark.skipif 为测试函数指定被忽略的条件。Pytest 使用特定的标记 pytest.mark.skip 完美的解决了这个问题。pytest 使用 s 表示测试被跳过(SKIPPED)。

2024-06-30 15:37:21 224

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除