前言在软件开发生命周期中,业务测试扮演着至关重要的角色。本文详细讲解了业务测试的定义、目的、方法以及测试策略。 本篇文章参考黑马程序员1 概述①定义业务测试指通过模拟用户操作和业务场景,验证软件系统是否符合业务需求和预期结果的过程。它通常在系统测试之后进行,重点关注业务逻辑的完整性和正确性。 ③作用测试软件系统单功能之间关联性数据处理逻辑是否正确例:添加购物车时对登录状态的判断2 方法使用流程图法是帮助团队直观理解业务逻辑的有效工具。 3 测试策略主业务优先测试测试时应首先集中精力对主业务流程进行全面测试。这包括对主流程的冒烟测试,以确保基本功能正常运作。单模块细致测试在主业务流程经过初步验证后,逐步深入测试每个子模块。 4 案例分析针对以下某APP的发布文章业务流程图,编写测试用例。编写测试用例:
一、场景法 通过运用场景来对系统的功能点或业务流程的描述,从而提高测试效果的一种方法。 二、基本流和备用流 1、基本流(正确流):模拟用户正确的操作流程 目的:验证软件的业务流程和主要功能 2、备选流(错误流):模拟用户错误的操作流程 目的:验证软件的错误处理能力 ? 三、场景法的本质 1、场景法是一种基于等价类划分的测试技术(技术层面) 2、场景法的应用是基于对软件业务(需求)的深入理解(业务层面) 四、场景法的基本设计步骤 1、根据说明,描述出程序的基本流及各项备选流 2、根据基本流和各备选流生成不同的场景 3、对每一个场景生成相应的测试用例 五、使用场景法分析程序:ATM取款 1、根据需求,找到基本流和备选流(找出正确的操作流程和可能出错的环节) 1、核心场景接口自动化测试 2、核心场景UI自动化测试 3、核心场景性能测试
本文以实际跨业务测试经验(订单业务测试人员如何测试售后业务),讲述在两周内如何快速的上手售后业务并进行需求测试,写下此篇文章作为经验分享。 外部对接B2C,C2C,B2B,POP,3C等诸多业务。内部对接基础服务,商品,支付,物流,仓储,售后等业务。日常测试中,可能也或多或少的了解了售后的一些后台操作步骤或流程。 从而对测试售后业务基础流程上有一定的了解。开始前1、思考将要测试的方向在开始去其他业务之前,首先得想清楚去了之后主要的测试方向是什么。因为每个大业务间有不同小模块,一个人可能负责多个方向的事务。 2、了解业务范围那么这个阶段的第一步了解业务系统,可能是很多人需要思考的一个难题。跨业务之间的确有很多的不同点,由字面意思来解释的话,那么最大的区别在于业务不同,如何了解业务也是最关键的一步。 2、新需求介入对于和原有的需求内容没有相关联类型的需求,那么需要考虑到哪些内容在当前业务有类似的案例。
我们这期先说说关于业务代码的测试,后面我会在写一篇关于UI测试的情况。 百度词条给的解释我就觉得前两句话...... ? 首先并不是所有的代码或者业务都适合单元测试的,比如一段逻辑很简单的代码,你为了单测而单测那就真的没有了意义。这是第一点就是逻辑很简答的代码是没必要进行单测的。 我们先给出下面两点观点: 1、Test Driven Development(TDD) TDD模式:是先根据需求或者接口情况编写测试,然后再根据测试来编写业务代码,这也就必然导致所有代码的 ,这时候就转到单元测试去写,一边单测一边完善业务代码,等你的单测都是通过的时候说明你这快的业务代码其实是问题已经不大了的,这里进行单测的时候各种场景我们尽量想的全面一点对我们业务代码完善是比较有好处的。 等这业务代码处理完的时候你就发现这点你的单测也完成的差不多了,能帮助你理解这块业务的提示也能让你及时的发现业务可能存在的问题,而不是因为产品或者我们都考虑的不全,等测试发现问题的时候我们再进行一个大手术
不能用shutdown.sh 和startup.sh来进行启动控制,需要使用catalina.sh run这种方式来进行启动,配置完成后重启即可
业务测试 是测试工程师的核心基础能力。所有测试工程师迈入测试岗第一份工作职责就是做业务测试,但业务测试的核心并非业务本身,而是业务测试方法论,这样才能使你可以丝滑切换到不同的项目。 工作多年,总结下如何做好业务测试。 1 精通业务,熟悉产品实现逻辑 1.1 站在用户角度去理解需求 1.2 文档缺陷嗅觉 1.3 竞品分析能力 2 合作&沟通能力 2.1 开发&PD&运营&运维 2.2 项目开发&测试规范 2.3 推动团队全员为质量负责意识 2.4 降低各种沟通成本 3 总结&写作能力 3.1 测分&计划&策略&测试日报&报告 3.2 总结业务文档 4 拓展技术面,要懂代码 4.1 技术广度 4.2 开发能力 4.3 测试技术专长 4.4
在我做接口测试的工作中,有段时间负责产品的每星期活动的接口测试,需求一般比较简单,但是有一批活动很特殊,在之前的工作中都没遇到过,就是概率型业务。常见的抽奖、随机奖励、用户分组等等。 对于这类接口的测试,当时存在着两个难点:一、如何判断业务实现结果符合预期;二、如何才算发现其中BUG。总结来说就是如何判断概率准确性。 测试时间:一天。 两个难点的解决方案: * 如何判断业务实现结果符合预期 业务实现结果即是大量测试统计结果,预期是后台配置的各类事件的概率。 在经过一些讨论和尝试,我们采取了一个公式:如果独立事件发生概率颗粒度a,那么进行a平方的倒数次测试,事件实际发生的次数与理论值误差小于颗粒度的1/2,即认为该事件实际发生概率等于理论值。 loginKey; // public String userId = "898542";// 中东用户 id public int pay = 4; public int freeType = 2;
写这篇文章的初衷来源于朋友圈CC的动态:“今年很多写测试工具平台没有成就业务价值的同学,被落入自由市场了”。我俩在评论区交流了下性能测试如何成就业务价值的问题。 基于我和CC的交流的内容,接下来谈谈性能测试如何创造业务价值,我会通过几个问题来阐述我的观点。 性能测试出现的初衷 先思考一个问题:我们开展性能测试的初衷或者说需求从何而来? 性能测试创造了什么价值 接着上文继续聊,用户有反馈,财务有诉求,业务遇到了痛点,怎么办?想办法解决问题! 性能测试创造价值的前提 前面我提到了技术是为业务目标达成提供支撑和效率工具,性能测试可以直接或间接创造业务价值,但并不是说有工具就能创造正向的价值。 正如我和CC交流的对话: CCTester 回复 老张:我觉得性能测试只要做起来还是在成就业务价值的。
2.测试方法 (1)功能测试:采用边界值分析、等价类划分等方法进行测试,确保支付系统的功能完整、正确。 (2)性能测试:采用负载测试工具进行测试,模拟多个用户同时进行支付的情况,验证支付系统的并发能力和稳定性。 2.测试任务 (1)功能测试:测试支付系统的支付、退款、查询等核心功能,以及一些常用的功能测试。 (2)性能测试:测试支付系统的并发能力、负载能力、稳定性等。 (2)测试人员:至少需要3名测试人员,其中一名负责功能测试和接口测试,一名负责性能测试和安全性测试,一名负责兼容性测试。 2.性能测试 (1)并发测试:模拟多个用户同时进行支付的情况,测试支付系统的并发能力。 (2)负载测试:模拟大量交易请求对支付系统的负载进行测试。
func GetAllFiles(dirPth string) (files []string, err error) {
经过过去几年的建设,我国的大中型城市都安装了很多监控摄像头,通过路段的感知,可以基于原有监控系统获取到道路的总体交通路况,通过这种车辆检测技术就可以为道路路况分析、交通大数据、交通规划等提供可靠的数据依据,这对于计算机在以前要做起来,成本是非常高的,现在就可以采用很低的成本做到,通过图象快速的感知。
性能压测系列文章 性能测试系列一(性能测试基础知识) 性能测试系列二 何时介入性能测试 性能测试系列三 压测方式简单总结 性能测试系列四 压测指标的来源 性能测试系列五 压测常见的关注指标以及监控分析工具 性能测试系列六 评估压测量 性能测试系列七 工具选择 这是第八篇 ---- 压测的业务场景,需要梳理的,梳理好业务场景,梳理好业务链路,如何梳理业务场景,如何搭建测试环境 ,业务链路梳理清楚,测试环境搭建完毕,才完成了压测的准备工作。 •1.找个熟悉业务的测试,梳理业务相关链路接口 •2.找开发对接口,并且弄清楚牵涉的服务,缓存 •3.和运维,开发一起梳理压测的服务,选择合适的环境 熟悉业务的人,一定熟悉业务中的链路, 梳理接口的时候,可以先找个最熟悉业务的测试,先梳理出来,然后在和开发,产品对。
环境:RHEL6.4 + Oracle 11.2.0.4 1.创建业务用户表空间 2.创建业务用户 3.赋予用户权限 4.创建业务表 5.创建索引 6.业务查询SQL 7.删除业务用户及数据 8.删除业务表空间 grant resource, connect to jingyu; -- 赋予DBA用户权限 grant dba to jingyu; 4.创建业务表 新建业务用户登录,创建T1,T2两张业务表,并插入测试数据 varchar2(4000) ) tablespace dbs_d_jingyu; -- 初始化向T1,T2表插入随机测试数据 execute dbms_random.seed(0); set timing tablespace dbs_i_jingyu; 6.业务查询SQL -- 业务查询SQL 1 select * from t1, t2 where t1.id = t2.t1_id and t1.n = 19; -- 业务查询SQL 2 select * from t1, t2 where t1.id = t2.t1_id; 7.删除业务用户及数据 -- 删除业务用户jingyu drop user
性能测试混合场景中,我们需要组合多个业务操作到场景中来。 比如有一个论坛的业务分布如下: 发布新帖与回复帖子的比例为2:3, 那么我们在JMeter测试计划中如何控制其比例呢? 利用这个特性我们可以把发布新帖业务放在一个线程组中,回帖业务放在另外一个线程组中。 通过控制线程数来达到需求的业务量的比例关系。 回帖线程组,添加90个线程; 发布新帖线程组,添加60个线程,刚好是3:2。 但,,,这只能是近似的,如果这两个事务的响应时间不一样,最终完成的业务数比例也会不一样。 如何保持3:2的比例呢? 以9次迭代为例,回帖9次,1,3,5,6,7,9 次迭代时都会发新帖,回帖刚好是6次 9:6=3:2 3:2的比例达到。
今天是日更的 36/365 天 大家好,我是阿常,今天我和大家聊聊如何做好业务测试。虽然业务千变万化,但是万事万物都有律可循。以下是业务测试的一些通用思路。 ● 项目类型 ● 测试模块 ● 测 试 端 一、项目类型 1、全新项目 2、已有项目新增业务 3、已有项目业务改造 二、测试模块 1、新增功能 2、修改功能 3、删除功能 4、查看功能 三、测试端 1、Web 端测试 浏览器兼容性 直接输入地址是否跳过权限判断 自带键:返回键、回车键、刷新键的使用 缓存过期 2、APP 端测试 APP 多系统测试 APP 多分辨率测试 使用习惯不同( 安卓自带返回键等) 网络类型不同 安装/卸载测试(区分安装新包和更新包的验证) 升级测试(重点关注增量测试) 并发测试(尤其是有push弹框) 消息推送(锁屏、应用后台运行、应用打开) 分享(多平台分享实现 ) 耗电量、内存、CPU等性能测试 思维碰撞: 关于业务测试大家有其他不同看法吗,欢迎一起来交流呀
接口框架的基础功能已经讲完了,接下来会分享一些接口测试实践。今天分享了接口一般的业务验证,注册用户和用户登录。借助开源社区提供的接口来做演示。 写了一些测试脚本,针对独立性较高的接口测试项目如何快速验证。没有使用所谓数据驱动,也没有采用断言(使用预警代替),总的来讲,更像BDD一些。中间也用到了多接口相互验证的功能。 ” 接口测试中业务验证 ---- gitee地址:https://gitee.com/fanapi/tester 代码 package com.fun; import com.alibaba.fastjson.JSONObject
案例2:注册流程耗时减少1秒 → 注册转化率提升5%。测试行动:监控注册流程的性能瓶颈(如接口响应时间),推动开发优化。2. 定义可量化的测试目标示例:缺陷修复率:P0/P1缺陷在24小时内修复。 低优先级业务场景(如非核心功能):测试策略:手动测试为主,降低测试成本。2. 测试左移:与业务需求深度结合需求评审阶段:要求测试团队参与需求评审,提出可测试性建议(如“支付流程需支持弱网场景”)。 业务场景测试:邀请业务人员参与用户场景测试(如“模拟用户注册流程”),确保测试覆盖真实需求。2. Grafana + Prometheus:实时监控关键业务指标(如支付成功率)。2. 调整测试策略(如“增加弱网测试用例以应对网络波动导致的支付失败”)。2. 测试团队参与业务规划参与产品路线图讨论:提供测试视角的建议(如“新功能需提前规划自动化测试框架”)。
<2>到了90年代,中国市场进入到了初步竞争期。我们从父辈口中了解到,能成为老板的都是有着复杂的关系网。会搞关系会来事的,才能成为老板。 <2>中国市场的经历是中国独有的,有别于海外市场,想在中国做生意得首先了解中国市场,应该了解自己的金主爸爸。 <2>阿里云官网会给用户推荐各种产品试用,各种新品优惠,让用户低成本的去体验,去试用。 运营团队:管理日常业务,优化销售流程,执行市场活动,管理客户关系。团队协作要求:收集客户使用状况,典型行业业务场景,归纳入公司的行业案例库,供产品与售前团队参考。 2.自助式销售与服务:减少对销售团队的依赖,增加自助式销售和服务渠道。我们的目标:充分利用线上销售能力能力,哪块不足补哪块。
1)日常业务场景模型:是指在正常工作时间内,根据用户访问量曲线较平缓时的业务场景形成的模型。2)高峰业务场景模型:是指在高峰业务量的时间内,根据交易量较大或者用户访问集中时的业务场界而形成的模型。 生产数据分析的具体步骤如下:1)根据测试的具体目标选定用于数据分析的时间段,如季度、月、周等;2)根据选定时段内交易量变化趋势或者系统运行情况,选定平常日、高峰日或者特殊日,一般特殊日为月末日、年末日、 (2)类似系统数据分析在系统未投产没有运行数据的情况下,可以优先参考功能相似的系统的运行情况,数据分析方法同上。 2.功能选取通过前期数据分析,可得到某个时间段内的功能点或接口及其请求量,作为备选集合供后续进一步选。这些功能点或接口往往数量繁多。 (2)特殊交易规则该规则要求在备选集合中选取那些投产运行后可能对系统有潜在性能风险的功能点或接口纳入业务模这类功能点或接口主要的特点有:实现逻辑复杂;与其他功能点或接口采用不同的实现机制,如不同的中间件
本文旨在构造一份相对较全面的测试数据,对开发常用的对象都模拟创建一份测试用例,DBA就可以直接拿去做一些基本测试。 环境:Oracle 11.2.0.4 1.初始化测试数据 2.清空测试数据 1.初始化测试数据 初始化测试数据的脚本主要包含了如下内容: 1.表空间创建 2.用户创建及赋权 3.表创建 4.索引创建 account unlock; conn scott/tiger grant select on emp to jingyu; grant select on dept to jingyu; -- 业务用户登录 number); create table t_times_old as select * from t_times where 1=2; -- 业务用户登录 conn ludan/ludan -- ==== prompt ============================ EOF 2.清空测试数据 清空测试数据的脚本主要包含如下内容: 1.删除用户 2.删除表空间 3.删除public