自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

所寫即所思|一个阿里质量人对测试的所感所悟。

软件测试以及测试开发博文,记录工作中的所思所获,介绍互联网大厂测试基建相关技术。

  • 博客(372)
  • 资源 (23)
  • 收藏
  • 关注

原创 用例自动生成工具:Tcases实践指南

..通常,被测试的系统单元具有一个或多个操作或“函数”,因此系统输入定义包含每个函数的函数定义对象。对于我们的例子,我们将为一个名为“Examples”的系统构建一个输入定义,该系统只有一个“find”函数。显然,“系统”或“功能”的定义完全取决于你所测试的内容。如果你的“系统”是一个Java类,那么你的“功能”可能是它的方法。如果你的“系统”是一个应用程序,那么你的“功能”可能是用例。如果你的“系统”是一个网站,那么你的“功能”可能是页面。无论如何,输入建模的过程完全相同。

2024-05-11 07:15:00 1845

原创 如果创办Google

本文是一篇演讲稿,来自于《黑客与画家》一书的作者保罗*格雷厄姆,被称为硅谷创业之父。这是他为14至15岁的孩子们做的一次演讲,内容是关于如果他们将来想创立一家创业公司,现在应该做些什么。很多学校认为应该向学生们传授一些有关创业的知识。但以下是作者认为应当告诉学生的建议。全文如下:你们中的大多数人可能认为,当将来进入社会后,最终都得找一份工作。但事实并非如此,今天我要告诉你们一个方法,可以避免将来不得不去找工作。这个方法就是创办一家公司。当然这并不是“逃避工作”的方法,因为如果你自己创业,你会比普通上班族工作

2024-05-28 07:30:00 345

原创 聊聊变异测试

正如你所看到的,尽管为达到代码覆盖率而构建的测试集会通过代码执行类似的路径,但变异测试指标允许对测试应执行的验证进行更具体的描述。这是杀死的变异体与变异体总数的比率。在多数软件测试方法中,很难预判能否在测试过程中发现缺陷,往往直到这些缺陷在后续的测试环节被发现,甚至是更糟的情况下,在生产环境中出现时才会被注意到。随着工程师越来越多地采用更自动化的软件验证方法,以及在不断缩短的发布周期中对更高品质的软件输出的需求日益增长,变异测试帮助我们退一步评估,我们是否真的应该对我们的测试充满如此信心。

2024-05-27 07:00:00 371

原创 测试三问

在缺乏有效的测试用例的情况下,你可能无法为团队提供有价值的质量反馈,而这正是QA人员所期望的得到的。因此,测试不仅对于深入了解产品至关重要,而且对于确保交付的软件符合业务方的期望至关重要。作为一名QA,如果不了解用户的痛点,就无法确保这些变更是否真正为用户解决了问题。通过明确受影响的模块,你可以设计出全面覆盖这些变更的测试用例。我会向产品负责人询问有关需求变更如何为我们的用户解决问题,这让我了解了用户所面临的问题。我的测试方法总是向参与项目过程的不同人提问,这让我更深入地了解变更的背景知识。

2024-05-23 07:00:00 270

原创 漫谈AI测试

毫无疑问,未来属于人工智能。它已经进入了我们的日常生活,并被世界各地的大公司所使用。人工智能的适用性似乎无穷无尽。然而,仍然存在许多疑虑和担忧。例如,在自动驾驶汽车的情况下:事故责任、不稳定的物体识别以及与不可预测的人类交通参与者的复杂互动阻碍了它的广泛推广。人工智能的一些可能令人恐惧的影响已经显现出来。人工智能算法可以制造和扩大偏差。例如,在缅甸的种族清洗中,数以万计的罗兴亚人被杀害,100万人流离失所。

2024-05-22 07:00:00 994

原创 Change-Driven Testing:变更驱动测试

当下,随着产品的迭代速度越来越快,测试人员必须在更短的时间内测试更多的软件。这使得每个代码变更都执行整个测试集变得不可行。而通过手工测试覆盖所有变更更变得不切实际。为了应对这一挑战,我们提出了基于变更驱动的测试(Change-Driven Testing)的方法论。变更驱动测试使用测试影响分析来自动查找给定代码变更的相关测试集,大大增加了早期捕获缺陷的概率。此外,基于变更驱动测试使用测试缺口分析来自动识别测试缺口(即缺乏测试用例覆盖的代码变更)。这使我们能够有意识地决定将我们有限测试资源用于提高我们的测试有

2024-05-20 06:45:00 692

原创 Testcontainers:一款隔离测试数据的测试工具

Testcontainers 是一个Python库,它利用 Docker 引擎创建临时容器,这些容器可以运行数据库实例、Selenium 浏览器或其他任何在测试期间应用程序可能需要交互的服务。它在 Docker 容器中提供轻量级的数据库实例。这种方法允许用户创建一个隔离的测试环境,这对于实现本地测试至关重要。每个测试都与一个全新的数据库实例交互,确保测试隔离。使用 Testcontainers 的另一个关键好处是它能够对数据库进行自动化设置和清理。

2024-05-10 07:15:00 1364

原创 对构建高质量软件的思考

持有固定型思维模式的人认为自己的能力(或所做的事情)是固定不变的、与生俱来的。同样,DevOps文化的兴起也催生了专注于“平台工程”或“开发者体验”的中央团队,他们构建工具和自动化基础架构,并在必要时提供专业知识,使开发团队能够更轻松地运行基于云的服务和应用程序。如果数据表明拥有更多软件测试和运维方面技能的开发者是有益的,而你的回答却是“这不是我的工作”,那么你的成长将受到限制,而且你的职业生涯也会受到影响。有时候,开发人员不想学习如何测试或了解服务交付,因为他们认为自己高人一等,这是“别人的工作”。

2024-05-05 07:00:00 789

原创 大话持续测试

持续测试旨在软件开发的每个阶段持续确保产品的质量,它是持续集成和持续部署(CI/CD)过程的一个组成部分,采用持续测试方法论可以更早地发现问题,缩短开发者的反馈时间,提高产品质量的可见性,并加快产品上市速度。像瀑布模型这样的传统开发模型中,开发人员被分解成负责特定任务的不同团队。这导致了一个团队完成任务后将软件移交给另一组。因为每个团队都有足够的时间专注于自己的任务,而不用担心项目的其他方面,所以质量得到了保证。随着对更快开发速度的需求不断增加,这种传统开发模式就出现了问题。

2024-05-04 07:30:00 918

原创 Python栈最佳自动化测试框架

1. pytest-xdist:支持分布式测试,可以在多个机器上并行运行测试用例。2. pytest-cov:可以生成代码覆盖报告,帮助开发者了解代码的覆盖情况。3. pytest-flake8:可以集成Flake8代码风格检查器,在测试运行时检查代码风格问题。4. pytest-mock:可以模拟对象,方便测试时隔离对象的行为。5. pytest-rerunfailures:可以自动重新运行失败的测试用例,节省开发者的时间。

2024-04-28 07:15:00 987

原创 如何做好测试分析?

对于产品测试分析,作为系统的高级分析,在分解过程中确定对象的动作就足够了,但是对于功能测试分析,我们需要进一步定义被测对象的参数。这是一个单向矩阵,只使用了一半的矩阵,其中绿色的单元格突出了项目之间的关系,额外的列或注释可以用来记录每个依赖项的细节。好的,我们已经完成了一阶段工作,现在已经为下一阶段的测试分析打下了坚实的基础。开始测试更重要的功能,这样如果没有足够的时间测试所有功能,我们可以将不重要的功能排除在测试范围之外。

2024-04-22 07:15:00 653

原创 质量需要评估,而不是度量?

这样的评级是出了名的不可靠——如果我对一个产品感到生气,我不会给一个四星的评论,即使它基本上是好的——部分原因是我有偏见,部分原因是我希望我的观点产生影响。但我仍然没有度量质量的冲动。例如,如果我问你是否认为一个产品不好,而你确实认为它不好,但你知道你诚实而直接的回答会导致我取消你的项目,让你所有的朋友丢掉工作,你真的会告诉我铁一般的事实吗?比如说你的目标是100%的自动化,把一些简单的检查自动化,然后吹嘘你做了“成千上万的测试”,这样你不会发现很多bug,但是你会看起来很忙,并且有大量的代码可以展示。

2024-04-20 12:25:36 1081

原创 重复测试的原因

测试发现bug就像在雷区排雷。如果你只是在雷区中沿着同一条路走来走去,那么你不会发现很多地雷。实际上,这是一种很好的避雷方法。现代软件产品所代表的空间比雷区复杂得多,所以假设一些小数量的“路径”,比如说,一百条或一千条,当无休止地重复时,会发现每一个重要的bug,这甚至是一个更大的问题。尽管一组测试人员可以在几周内进行很多测试,但与该领域中产品可能发生的所有事情相比,这些测试仍然不是很多。雷区类比实际上是另一种说法,即。因此,雷区启发式是进行不同的测试,而不是重复相同的测试。但是我的意思是什么呢?

2024-04-20 12:22:43 566

原创 自动化测试中的SOLID原则

自动化测试在软件质量保障手段中愈显重要。但是随着自动化测试代码的规模和复杂性不断扩大,它也很容易出现测试代码重复、紧耦合等问题。而SOLID原则可以解决这一问题,作为自动化用例开发的指导原则。

2024-04-13 08:44:23 672

原创 阿里微服务质量保障系列:域内测试

进入阿里之前,我就职的公司所在部门的产品都是单体应用,例如第一家公司是做投顾平台的,第二家公司所在的团队是做在线教育的,负责的产品是内容生产平台。投顾平台这个产品是服务于券商投顾员工的,属于券商内部应用,用户量并不大。内容生产平台是为公司内部的QC团队使用的,用于录入K12资料内容,用户量其实也不算大。因此,用户量不大的情况,单体应用也是产品实现的最优解。而支付宝的用户量以亿级,单体架构已不适用,取而代之的是微服务架构,随着不同的团队结构也发生变化。下面用一张图可以展示出差异所在。

2024-04-06 12:58:17 738

原创 QA赖以生存的软技能

例如灵活性、团队合作、适应性在QA中是至关重要的,使工程师能够与团队成员和客户有效地协作。通过磨练这些技能,QA专业人员可以促进他们的职业发展,并在他们的领域产生真正的影响。从本质上讲,软技能使QA工程师能够有效地协作,有效地解决问题,并确保项目的整体成功。在质量保证工作中,软技能是至关重要的,因为它们使得技术专长得到更好的发挥。对于QA工程师来说,注意和处理任务中经常被忽视的小细节是很重要的。积极地注意别人在说什么,理解他们的观点和担心是至关重要的。反思以前的成功和失败,以提高未来的表现是非常有价值的。

2024-04-01 07:15:00 990

原创 重新定义可观测性

对我来说,一个概念的良好定义应当具备这样的作用:当你拥有这样一个定义时,它不仅能够作为理解该概念的核心方式,而且还能引导你探索这一概念的方向,并指导你全面把握对该概念探索的所有含义。丢掉“尽管有分歧也要坚决执行”的说法,转向“提出有意义的问题,获取有用的答案,并根据所学付诸行动”。综上所述,我们探讨了控制理论中对可观测性的定义,认知系统工程中的可观测性定义,以及我提出的可观测性定义:可观测性是一个过程,通过这个过程,个体或组织能够发展出提出有意义的问题、获取有用答案并基于所学采取有效行动的能力。

2024-03-31 07:00:00 954

原创 基于全链路的测试分析实践

链路可以分为业务链路和调用链路,调用链路主要指从请求发起方到结果返回所途径各种服务/中间件产生的路径,可以理解为单系统[域]下的某一功能模块,例如淘宝添加购物车->提交订单->支付这个场景,就包含收单域/支付域/商服域/会员域等,所以全链路必然包含[微服务架构下]多个系统[域]的相互交互,而全链路信息流要素则首先需要集合内需要各个域的测试owner基于单域被测服务分析得出场景因子,全链路的测试场景理论上是单域测试因子的笛卡尔积,但是鉴于全链路场景的成本比较高,因此在全链路场景分析上也要结合等价类分析方法。

2024-03-25 07:15:00 1791

原创 别再傻傻地写测试了,先了解下Property-Based Testing

此后,也启发各个语言的 Property-Based Testing framework,例如:Python 的 Hypothesis、Erlang 的 PropEr、Rust 的 quickcheck、JS/TS 的 fast-check 等等。这样的优点是,我们已经可以通过产生出的阵列来测试,并打乱它后再确认是否已经排序,但是,这样我们还是只有测了「长度为 3 且内容物为 1 到 3 的阵列」、「长度为 5 且内容物为 1 到 5 的阵列」以及「长度为 10 且内容物为 1 到 10 的阵列」。

2024-03-17 07:15:00 620

原创 AI应用于软件测试的探讨

最近这段时间,随着OpenAi发布Sora,关注AI的同学估计都知道上面这张图,中美两大AI巨头(笑cry了)。当然本文不是聊这个段子,主要聊下AI在软件测试行业的应用与现状。不可否认,借助于AI辅助测试工程师做自动化测试是质量保证手段的趋势。由于AI、机器学习和神经网络是当前最热门的话题,大家似乎有一种“有了AI一切都会变得更好”的错误认知。但事实真的如此吗?

2024-02-28 01:12:13 1101

原创 哎呦我去!原来只有搞颜色的P站真正关心网站性能

近年来,前端“技术”层出不穷令人眼花缭乱,新技术让网站的交互更加炫酷,使得平均网页大小已经接近几兆字节了!毫无疑问这些技术更加吃性能,不得不让前端开发人员为网站的性能问题多考虑考虑了。唯一能找到真相的方法就是动手去做。让我们来为各大知名网站做个检查吧!

2024-02-25 07:15:00 1007

原创 如何使用PEP8写出漂亮的Python代码

PEP 8是关于如何编写Python代码的指南和最佳实践的文档,由Guido van Rossum、Barry Warsaw和Alyssa Coghlan于2001年撰写,其主要关注点是提高Python代码的可读性和一致性。本教程将介绍:编写符合PEP 8的Python代码理解PEP 8中所列出的指导方针背后的理由设置你的开发环境,以便你可以开始编写符合PEP 8的Python代码PEP 代表 Python 增强提案,有很多 PEP。

2024-02-19 07:15:00 720

原创 测试数据生成工具推荐

它的测试数据生成是基于规则和模式的,并允许随机生成。BlazeMeter是行业领先的持续测试平台,用户可以生成和管理合成测试数据,这些数据看起来和执行起来就像真实的生产数据。测试人员可以自定义生成的数据,以匹配特定的测试需求,以确保准确可靠的测试覆盖率。测试人员可以使用测试数据生成工具来定义期望生成数据的参数和标准,并且测试数据可以从范围、格式、数据类型和数据元素之间的关系中变化。在这篇博客中,我将讨论什么是测试数据生成工具,测试数据生成工具的重要性,以及介绍一些业界顶级的测试数据生成工具。

2024-02-18 07:15:00 601

原创 【Explore It】Part 1-1测试和探索

如果你观察计算机的整个内部,你会发现一排排的组件,组件之间有电线连接,当时选择电线是非常关键的设计决策。随着你执行的每个实验,你都会对软件的行为有更多的了解。你提前为会话设定一个焦点,在会话期间,你可以灵活地探索,设计和执行测试,从一个测试到下一个测试,没有停顿。在这一部分中,你将了解如何制定章程来指导你的探索,如何观察真正发生的事情,如何识别有趣的变化,以及如何确定在以前从未考虑过的软件使用方式中应该预期什么行为。当你发现潜在的风险时,你会进行更深入的测试,利用你的观察和分析能力来调整你的测试。

2024-02-10 07:15:00 1313

原创 Martin Flower谈持续集成

我清楚地记得第一份工作初次接触到大型软件项目时的情景,依然记的当时是在一家大型英国电子公司暑期实习。我刚入职就被质量团队的测试经理带着参观公司,他带着我进入了一个巨大的、令人沮丧的、没有窗户的仓库,里面的小隔间挤满正在工作的人,经理告诉我这些程序员同事已经为项目(一个大型软件产品)持续开发了几年的代码, 当他们完成编程时,他们各自的单元(功能)模块正在被集成在一起,而且已经集成了几个月。经理告诉我,没有人真正知道这需要多长时间才能完成集成。

2024-01-29 07:15:00 1105

原创 对资金类服务幂等设计与测试的思考

状态机约束: 在设计单据相关的业务,或者是任务相关的业务,肯定会涉及到状态机(状态变更图),就是业务单据上面有个状态,状态在不同的情况下会发生变更,一般情况下存在有限状态机,这时候,如果状态机已经处于下一个状态,这时候来了一个上一个状态的变更,理论上是不能够变更的,这样的话,保证了有限状态机的幂等。原因:应用B会将首次请求失败的数据落DB,幂等请求时候,如果requestId不变,且amount不变,则会捞起首次请求落DB的refundDetial,组装对下游的请求报文,因此不会报错。

2024-01-14 20:15:00 976

原创 再聊测试充分度

代码覆盖率只是推进测试充分度的一种手段,它不是测试质量(测试充分度则与测试质量有直接联系,一般来说测试充分度越高,测试质量越高),因此100%的代码覆盖率并不一定带来100%的测试质量。而是传统意义上来讲,因此我认为接口测试重点是找到关键字段,覆盖关键字段的所有场景,才是提高测试充分度的关键,也可以是说测试用例的有效的,而不是对一个非关键字段设计各种无效测试用例(举个最简单的例子,即使我们从测试代码里删除了所有的断言,我们的代码覆盖率是会保持不变的,因为其只会统计应用在测试期间执行了多少代码行。

2024-01-09 07:00:00 881

原创 2023年终热门技术文章汇总 | 内含福利

今天,我们整理了2023年公众号阅读量靠前的10篇技术文章,欢迎大家品阅。祝愿大家在新的一年里,持续精进成长,再攀技术高峰(文末有福利)。

2024-01-07 00:13:27 885

原创 低代码自动化测试的实践

而数据源可以来源于POSTMAN导出的JSON文件、SWAGGER文档,Charles的Har文件,甚至JMeter的JMX文件,当然我们需要写解析这些文件的脚本才能获取到需要的数据。此外,如果所测接口存在上下接口调用的依赖,则还需要进行全链路联调测试(不部分接口不是独立存在的,都是和其他接口相互调用的),联调测试是为了保证上下联路接口之间契约的准确性。需要特别说明的是,这里的无代码不是说没有测试代码,而是测试人员不用自己开发测试代码,使用Codeless测试工具可以帮助我们生成可以执行的测试用例集。

2023-12-20 23:53:11 463

原创 阿里微服务质量保障系列:性能监控最佳实践

通过将多个性能监控工具整合在一起,形成一个统一的监控平台,可以提高监控效率、监控精度、故障排查效率和可视化程度,从而帮助企业更好地了解其业务系统的运行情况,提高业务系统的稳定性和可靠性。前者维护成本低,容量弹性更大;基于全链路追踪生态,关联更多的指标、日志、事件、Profiling 等数据或工具,提升问题诊断或业务分析效率,才能更好的发挥全链路追踪的价值。很多大型企业,出于稳定性或数据安全等因素考虑,选择了多云部署,这种部署架构下,由于不同环境的网络隔离,以及基础设施的差异性,为运维人员带来了巨大的挑战。

2023-12-03 18:29:28 446

原创 阿里微服务质量保障系列:性能监控

什么是性能监控,以及性能监控的对象有哪些。伴随着突发流量、系统变更或代码腐化等因素,性能退化随时会发生。如在周年庆大促期间由于访问量暴涨导致请求超时无法下单;应用发布变更后,页面频繁卡顿导致客诉上升;线上系统运行一段时间后,突然发生OOM或连接打满拒绝访问。性能退化最直观的影响就是用户体验,比如打开一个商品详情页面的耗时从0.5s上升至3s,那么用户继续浏览的意愿度就会大幅下降。当性能进一步退化至超时阈值(比如5s),就会导致无法正常提供服务,影响服务可用性,进而带来巨额的业务损失或口碑崩坏。

2023-12-03 18:28:41 227

原创 当XTS服务遇到切流...

XTS(eXtended Transaction Service)是一个分布式事务开发框架,用来保障在大规模分布式环境下事务的最终一致性。1.使用数据库持久化记录事务数据,且使用独立的事务模版,也就是单独事务。

2023-12-02 14:38:06 148

原创 #BUG SHOW# 深挖一个6年前的老“bug”

为了兼容迁移过程中的存在的一部分特殊交易数据(正向[支付]交易在站点A,但逆向[退款]操作在站点B操作),因此需要做站点A和站点B数据的关联,形如下图,在目前迁移站点落的单据拼接站点A的交易单号。一方认为站点B当初设计表结构时候,字段长度的取值是经过业务发展评估的,请求过来的字段长度就应该不能超出定义的长度,,于是乎在落幂等表(一般是xx_unique表)时出现insert异常,但是这个异常并未直接阻断后续的业务流程,而如果以相同的内容(交易单据)再此发起接口请求,就可能会。针对这个缺陷,可以举一反三。

2023-11-25 20:41:49 145

原创 阿里微服务质量保障系列:研发模式&发布策略

在实际运作中,大家都知道,feature分支虽然有效隔离了代码(减少相互影响),但由于集成不够频繁,如果项目持续周期长,则大大增加了feature分支到release分支集成过程中代码冲突的概率。为了解决发布时间长的问题,团队鼓励对于研发测试评估改动范围不大的feature使用持续发布的模式,即将feature分支在dev验证后,rebase主干分支代码后做SIT环境的集成测试&回归测试,测试通过后则推进预发、灰度、流程。它的发布过程是基于主干Master分支做的,因此没有在发布的过程中做相应地隔离。

2023-11-12 09:40:49 188

原创 阿里微服务质量保障系列:故障演练

有损演练是指直接在线上真实业务环境注入异常进行演练,演练模拟的真实有效性高,为了平衡业务影响一般会选择最核心场景、在业务最低峰期做演练,而且演练频次相对较小,例如为了验证多活容灾能力的机房断网演练,一般是一个月一次的演练频次;故障演练就是这个背景下诞生的,沉淀通用的故障场景,以可控成本在线上故障重放,以持续性的演练和回归方式的运营来暴露问题,不断验证和推动系统、工具、流程、人员能力的提升,从而提前发现并修复可避免的重大问题,或通过验证故障发现手段、故障修复能力来达到缩短故障修复时长的作用。

2023-11-07 20:42:28 199

原创 高月薪&高年终如何抉择?

自校招第一份工作一年半的时候,虽然年终绩效还不错,而且还拿了部门的一个测试奖,但是觉得在团队里很难再提升了,因为当时能接触到的开发相关知识、运维知识自己也都熟悉一些,还有就是当时测试在项目中话语权低,部门老板不太重视,测试很难推行一些质量改进工作,所以觉得自己可以看看更大的平台。也就是说如果最近一年流水里不包含年终奖部分,只能给你涨月薪的30%,所以我的涨幅是月薪的30%,由于平安的年终奖月份比较多,一般是6个月年终奖起步,而且每个季度好像也有奖金,所以薪资压到了不到1w。这种情况下楼主该如何抉择呢?

2023-11-02 18:41:37 932 1

原创 如何处理不稳定的自动化测试?

对于依赖于穿过多个接缝的每个测试步骤结果(将 API -> 队列 -> DB 视为 3 个独立的接缝),失败的可能性随着接缝的数量呈指数级增加,并乘以依赖于的步骤数那些接缝。我不知道你的测试环境是如何构建的,我猜测你的依赖项每次都不会更新版本,所以这就是我对你的情况的看法。我曾经处理过一组每天运行的 2000 个测试,每次运行可能会出现 60-70 个失败测试,我们的测试报告意味着可以在几个小时内review这些失败。,例如,测试正在尝试完成某数据的操作,而该某数据未处于当前操作能处理的状态。

2023-10-31 13:10:15 270

原创 阿里微服务质量保障系列:阿里变更三板斧

变更是指对线上系统的任何操作(如:发布、增加、修改或移除等),或其他对生产业务可能有影响的任何操作。基于阿里巴巴的历史经验,有一半以上的重大故障皆为变更触发,因此,变更过程的风险防御显得尤为重要,会直接关乎业务的稳定性。变更系统是指承载任何对线上生产环境变更操作的系统或工具。例如拥有控制台的白屏化系统/工具、压测/演练平台、黑屏脚本、开放出来的可触发变更操作的API、不以变更为主要功能和目标的平台/系统,如具备了对生产环境实施变更的功能,则相应的变更功能部分也视同变更系统对待等。

2023-10-29 10:53:20 396

原创 Locust负载测试工具实操

从下面的图表中,我们可以看到,随着负载增加到 100 个用户,其中平均响应时间保持在 2ms,而 95% 百分位响应时间约为 3 毫秒。从下面的图表中,我们可以看到当我们的服务负载以用户增加和请求触发的形式增加时,Locust如何捕获响应时间。每个测试都有不同的选项卡,如下所示,用于显示测试的实时结果,并且大多数选项卡都是不言自明的。对于少于750-1000 运行的用户,我们的中位响应时间为4-5 毫秒,95% 百分位数响应为10-12 毫秒。当然,这只是一个测试用例,但Locust的用途远不止于此。

2023-10-21 17:01:50 664

原创 让测试人头疼的这几件“小事”

之前很多文章都介绍到了,我们公司的产品技术实现架构是微服务,所以不同的业务模块分别有不同的测试团队负责,这也导致上下游质量同学只对负责的业务比较熟悉,对于下游的业务不熟悉的问题。对于测试而言,测试之旅充满了有趣的挑战和宝贵的经验教训,良好的测试人懂得通过项目不断总结经验与汲取教训。我最终比较了用例报错前后的报文差异,发现报错的用例中,上游调用下游的接口时候,少传了一个字段,导致调用报错。测试有时候是无聊的。我工作中遇到的一个情况是,上游的同学说他们的用例在x日突然都挂了,然后拿来让我定位问题。

2023-10-15 16:49:31 181

Metamorphic-Testing-of-RESTful-Web-APIs.pdf

Metamorphic-Testing-of-RESTful-Web-APIs.pdf

2021-01-25

mysql-5.7.30-macos10.14-x86_64.dmg

mysql-5.7.30-macos10.14-x86_64.dmg

2020-12-25

iTerm 2.app.zip

iTerm 2.app.zip

2020-12-25

nodejs下载啊啊啊

nodejs下载啊啊啊

2020-12-24

apache-maven-3.6.3-bin.tar

apache-maven-3.6.3-bin.tar

2020-12-24

iterm mac下载

iterm mac下载

2020-12-24

jdk-8u251-macosx-x64.dmg

jdk-8u251-macosx-x64

2020-12-24

java验证码

点击上传资源即表示您确认该资源不违反资源分享的使用条款,并且您拥有该资源的所有版权或者上传资源的授权

2018-09-10

python菜鸟教程

Python的3.0版本,常被称为Python 3000,或简称Py3k。相对于Python的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0在设计的时候没有考虑向下兼容。 Python 介绍及安装教程我们在Python 2.X版本的教程中已有介绍,这里就不再赘述。 你也可以点击 Python2.x与3​​.x版本区别 来查看两者的不同。

2018-06-05

2017 阿里技术年度精选上册

2017 阿里技术年度精选2017 阿里技术年度精选2017 阿里技术年度精选2017 阿里技术年度精选2017 阿里技术年度精选

2017-12-19

2017 阿里技术年度精选下册

2017 阿里技术年度精选2017 阿里技术年度精选2017 阿里技术年度精选2017 阿里技术年度精选2017 阿里技术年度精选2017 阿里技术年度精选

2017-12-19

疯狂前端开发代码1

疯狂前端开发代码1随书附带课件代码随书附带课件代码随书附带课件代码随书附带课件代码

2017-12-15

Spring+MYBatis企业应用实战

本书介绍了Java EE领域的两个开源框架:Spring的MVC和MyBatis。其中Spring的版本为4.2,MyBatis的版本是3.4。本书的示例建议在Tomcat 8上运行。本书重点介绍如何整合Spring MVC 4 MyBatis 3进行Java EE开发,主要包括三个部分。*部分详细介绍了Spring MVC框架的用法。第二部分详细介绍了MyBatis框架的用法。第三部分重点介绍了Spring MVC4+MyBatis 3的整合,并示范开发了一个包含6个表、表之间具有复杂的关联映射关系,且业务功能也相对完善的HRM人事管理系统案例,希望让读者理论联系实际,将这两个框架真正运用到实际开发当中去。该案例采用目前*流行、*规范的Java EE架构,整个应用分为DAO持久层、领域对象层、业务逻辑层、控制器层和视图层,各层之间分层清晰,层与层之间以松耦合的方法组织在一起。所有代码完全基于Eclipse IDE来完成,一步步带领读者深入两个框架的核心。阅读本书之前,建议先阅读疯狂软件教育的《疯狂Java讲义》一书。本书适合有较好的Java编程基础,JSP、Servlet、JDBC基础,Spring框架基础的读者,尤其适合于对Spring MVC和MyBatis了解不够深入,或对Spring MVC MyBatis整合开发不太熟悉的开发人员阅读。

2017-11-26

python cookbook高清资源

这本书不是一本典型的O’Reilly风格的书,而是一本集合了多个作者的手稿的作品。实际上,这也是一种将开源开发的方式应用到书籍出版业的尝试。Python社区有超过300个成员在本书中贡献了他们的心得和资料。在这里,我们作为编辑,想给你——本书的读者,介绍一些重要的背景资料,这些背景资料是关于此书是如何编著出来,以及这个过程和涉及的人,并提出一些关于这种崭新的风格的思考。

2017-11-26

mysql快速入门指南

MySQL入门指南;适合小白 MySQL入门指南;适合小白 MySQL入门指南;适合小白

2017-11-24

Java翁恺网易公开课Shapes.zip

Java语言程序设计进阶-翁恺

2017-03-27

kalman滤波器详解

大话 kalman滤波器,最简单,最容易理解

2015-10-20

自适应滤波算法Adaptive_filtering_algorithms

自适应滤波算法Adaptive_filtering_algorithms RLS LMS NLMS

2015-10-08

无线电射频技术

Users\Administrator\Desktop\专业课\射频识别

2013-04-04

空空如也

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

TA关注的人

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