从测试角度上看项目流程管理

测试员如何推进项目进度? 在软件研发中,有一种思想叫TDD,即测试驱动开发,TDD是敏捷方法中的一项核心实践,其原理是在开发功能代码之前,先编写单元测试用例代码,对要编写的函数或类明确测试方法后,再进行设计与编码。 本篇不是讲如何来实践TDD,而是利用这种思想来推进项目的进度。大部分人可能都有这样的感受“别人催着自己的工作往前赶,心里贼反感”,“而自己催着别人往前赶,心里只有快感”。 在大部分项目都在走敏捷模式的情况下,项目经理已经被弱化,而产品经理更多关注设计、客户,使项目团队经常出现一团散沙的情况。作为下游的测试团队... 阅读详情

缘起:

说实话,我知道题目说大了,但是我不准备改。因为我想总结一下近些年,近些公司中看到的一些片面的内容,从而从中提炼出来我想要表述的东西:项目流程管理。
其实从一个公司到另外一个公司的过程,个人要完成的转型,概况来说无非是3点:

  • 企业文化的适应
  • 工作流程的适应
  • 项目内容的适应
而从我们测试人员的角度来看,这三种适应,其实就是QA要做好的三个方面,怎么能将自己再以往公司积累的经验转移过来,并融合到目前这个公司的工作环境中去,是每个高级工程师在这个阶段都想做,但是实际上却不知如何下手。

我写此文,无法表述出来一个正统思路,仅以自己的思想做一个方式性质的总结,聊以自慰而已!


QA vs QC:

我想,应该首先说一下对于QA和QC的自我看法。QC本身来说是质量控制,要保证的是产品质量,项目的产出。QA从字面理解是质量保证,要保证的是项目质量,产品过程优化。因此,QA从最贴近的角度上来说,就要比QC多一个“过程质量改进”的作用。这个作用在越是小的公司,就越是迫切。

小公司的矛盾

小公司人少,以一抵百,最经常使用的开发模式就是“大棒模式”,即,想做什么就上了,文档规范有时间再上;培训,招人,要以直接能干活为首要目的;产品的维护和客户维护上以开发新客户为主,老客户只在前期做一些维护,如果客户懂的多了,尽量就让客户自己做事情,我们能不做就不做。

这样的模式下,导致的产品质量一直无法上去,客户抱怨多,新产品开发进度一拖再拖,跟客户的许诺也是愈来愈没有谱,接下来怎么办

过程质量改进

从测试上来说,我们要做的事情,就是在做好测试工作的同时,培训开发和产品们去要求他们按照我们测试的流程做事情,发布产品。强势的测试介入,有益于整个产品过程的正规化。我们可以从以下几点入手

  • 写测试计划,写测试用例文档,拉开发、产品review。慢慢要求他们的文档也必须全面规范
  • 建立合适的bug系统,使用它报bug并督促开发严格按照bug生命周期去管理流程,规范版本迭代过程
  • 建立总结制度,从内部做起,邀请开发、产品加入,总结项目一个阶段遇到的问题,使得产品、开发也意识到自己某个阶段的工作不足引入的一些测试上的麻烦
  • 建立内部培训,一开始以测试主题为主,逐渐邀请开发人员做一些简单的产品框架培训,最后完成整个团队的培训提高的风气改变

从上面列举的四个方面做循序渐进的改变,这样各个产品流程改进都能较好的完成,也不至于由于变化激烈而产生的团队内部抵触心理。


项目流程改进:

测试,应该从自己的角度来规范开发流程。同理,我们测试也应该从自己的角度来帮助项目完成项目流程的规范管理。

流程的制定

不过这个流程改进,不是从内部做起影响外部,而是应该从高层到底层推进的过程。所以,这个事情应该是在测试融入到团队里面,成为不可或缺的一部分之后完成的事情。之所以项目流程改进不能从下至上,是因为产品流程在中小公司中,往往是没有规范可循的,没有制度可依的,我们是在建立一个团队协作的制度,制度的实施,不从上至下,无法保证最终的结果。

如何从上至下的推行呢?

首先要用自己的测试遇到的问题影响你的老板,让他或者他们知道问题来了~,然后在合适的时机提出自己的解决问题的方案,供老板参考,并愿意和老板一起完成对项目流程改进以及团队协作制度的制定工作。最后,可能大部分的意见还是你提出来,靠老板拍板决定的,所以你有机会提出自己的解决方案,增加测试团队的声音。

上面只是写了大略,其中宗旨是,不应以测试为中心,应以项目流程优化为重,辅以对重要产品以及团队中重要人物的共同参与讨论为基准。完成整个项目流程的推进。

流程的推行

说实话制定流程容易,推行难~

所以,在推行过程中,又要求测试必须督促各个方面的人员,帮助他们将制度变成习惯~。这个时间可能会很长,要求我们要耐得住这个过程



从测试人员的角度理解项目流程 这是一篇从测试人员角度介绍对于整个项目流程理解,主要重点介绍需求评审阶段至产品上线后维护阶段。 在需求评审之前的阶段,即产品设计阶段,测试一般不参与,主要由产品经理基于市场调研及用户需求,产出产品原型,后续由UI设计师输出主要界面UI设计规范。 一、【需求评审阶段】 1、UI设计文档及需求交互文档 UI稿明确业务实现细节,消除对最终成果理解的不一致,需求交互文档概要设计功能... 阅读详情

相关推荐

揭开BPM的神秘面纱:为什么我们需要流程管理

编者按:本文以BPM为核心话题,从BPM的前生今世来看为何数字化离不开BPM,浅谈BPM能为组织带来的价值,深入展开介绍优秀的“中国特色”BPM。 BPM的前世今生 BPM,即业务流程管理,是一种以规范化的构造端到端的卓越业务流程为中心,以持续的提高组织业务绩效为目的的系统化方法,是一种管理原则。通常也代指BPMS (Business Process Management Suite),是实现整合不同系统和数据的流程管理软件套件。针对流程管理的信息化系统,特点是注重流程驱动为核心,实现端到端全流程信

DDM_saodiseng的博客 4854

软件测试可能发现软件中的,软件测试管理中可能存在的问题及分析解决

3.2.4 软件缺陷具有空间聚集性(80-20 原则)80%的软件缺陷常常生存在软件20%的空间里。这个原则告诉我们,如果你想使软件测试有效地话,记住常常光临其高危多发“地段”。在那里发现软件缺陷的可能性会大的多。这一原则对于软件测试人员提高测试效率及缺陷发现率有着重大的意义。聪明的测试人员会根据这个原则很快找出较多的缺陷而愚蠢的测试人员却仍在漫无目的地到处搜寻。80-20 原则的另外一种情况是,...

weixin_39818521的博客 2129

流程管理对企业有何价值?如何做好企业流程管理?

编者按:在数字经济时代,流程管理是很多企业不可避免的课题。那么,流程管理具体对企业有什么价值呢?如何将企业流程管理做得更好呢? 概要: (1)流程管理对企业的价值 (2)如何优化企业流程管理 流程管理对企业的价值 流程管理,是一种以规范化的构造端到端的卓越业务流程为中心,以持续的提高组织业务绩效为目的的系统化方法。同时通过不断优化与流程再造,以保持企业的活力和竞争优势,流程是一种将输入转化为输出的相互关联和相互作用的活动。 流程管理对企业具有重要意义,主要有五个方面: 使职责更加清晰、

LowCode_的博客 1993

从测试角度度量项目质量的7个维度

  首先由于我自己是做测试的,因此这篇文章页主要是从测试的角度出发,对几个测试相关的维度进行分析,说明它们是如何影响项目质量的。这7个维度是根据 以往做项目的经验再加上网上一些前辈的总结提炼出来的,并非来自于教科书,所以仅供参考。这7个维度也只是从功能测试出发,对于性能测试、安全性测试、用 ...

chengji3708的博客 1680

软件开发项目管理经验总结

这是我从事软件外包工作以来的项目管理经验的总结,编写文章的目的是为了回顾和总结自己的一些想法,如果其中有不足的地方大家可以一起讨论交流。 项目经理的职责 关于项目经理的工作职责有很多种说法,我自己是这样理解的作为一名项目经理第一目标就是 合理利用公司资源组织设计、开发、测试等各种资源完成项目的高质量交付,并保证项目的盈利。 这是衡量一个项目失败或者成功的唯...

制心一处 5万+

开发的角度看测试,测试的角度看开发

严格遵循测试流程,自动化测试,构建者与评价者,测试工程师 vs. 开发工程师

我是如何做测试项目管理的

转自: https://sanwen8.cn/p/U502eM.html 带项目差不多1个季度了,针对这一季度的工作做一个总结,分析一下成长和遇到的问题,希望后面可以做的更好。   以下内容有自己的总结,也有参考蔡为东老师的步步为赢—软件测试管理全程实践。   项目内容:IOS端项目   人员:测试组内——4人(包含我);开发组——10人(包含开发leader)

stepup 1万+

仿人型机械臂逆运动学避坑指南:当末端三关节平行时如何处理奇异点

本文深入探讨了6R仿人型机械臂在末三轴平行结构下的逆运动学求解策略,重点分析了运动学逆解中的奇异点问题及其处理方法。通过MATLAB实现展示了D-H参数建模、几何解析法求解流程以及奇异点规避策略,为工业机器人开发提供了实用的数值算法方案和工程优化技巧。

sss66的博客 883

从开发者的角度,如何看待提高软件质量

文章目录从开发者的角度,如何看待提高软件质量1.需求的导入2.软件的设计3.软件的测试4.项目流程管理5.BUG产生的类型6.优质自媒体推荐 从开发者的角度,如何看待提高软件质量 软件质量是产品或服务所满足明示或暗示需求能力的固有特性和特征的集合,软件的质量特性有功能性、可靠性、易用性、可维护性、可移植性。缺陷则指系统所需要实现的某种功能的失效或违背。在某种程度上,缺陷的数量可以用来评价软件的质量,高质量软件往往不会存在太多缺陷。那么在敏捷开发团队中,如何提高软件质量,减少测试轮次呢? 1.需求的导入 一份

小岚猫的博客 767

第一章、isaacsim 及 isaaclab 安装教程

本专栏所有内容将根据上述资源地址展开,请结合食用~

m0_47719040的博客 4782

别再手动调参数了!用3ds Max的tyDiffusion插件,5分钟搞定AI动态纹理生成

本文介绍了3ds Max的tyDiffusion插件如何通过AI技术快速生成动态纹理,大幅提升3D美术师的工作效率。从火焰、水流到布料飘动,tyDiffusion能在5分钟内完成传统手工需要数小时的任务,且效果更自然。文章详细解析了插件的核心功能、实战配置及进阶应用,帮助用户轻松实现AI动态纹理生成。

weixin_30919429的博客 671

软件测试基础 第七篇 软件测试流程管理

软件测试流程管理 6.1软件测试流程管理基础 1,测试流程管理的意义: a) 角色分工的统一和集中分配便于管理和绩效考核 b) 沟通所需的软件开发和测试流程环节和结果、步骤帮助团队成员明确各自的工作任务 c) 明确测试流程便于领导层及时发现隐患,并采取行动 d) 便于新员工快速学习应做的工作,并融入团队工作 6.2软件测试的一般流程 1,开发模式与软件测试流程 ISTQB定义的软件测试过程: a) 测试计划和控制; ...

weixin_44990801的博客 260

生信入门(六)——单细胞分析(Seurat)

生信入门(六)——单细胞分析(Seurat) 文章目录生信入门(六)——单细胞分析(Seurat)一、数据导入1、数据来源2、数据导入二、标准预处理1、QC和选择细胞进行进一步分析2、规范化数据3、识别高度可变的特征(特征选择)4、缩放数据三、主成分分析(PCA)1、线性降维2、确定数据集的“维度”四、聚类细胞五、非线性降维(UMAP/tSNE)六、寻找差异表达的特征(簇生物标志物) 一、数据导入 1、数据来源 点击此处下载数据 数据说明:分析10X Genomics提供的外周血单细胞(PBMC)数据集,有

羊羊的博客 6万+

华为流程管理体系构建与落地的五大核心

使能类流程是设计来支持和增强执行类流程的,使能类流程的目的是为执行类流程提供必要的资源和能力,帮助执行类流程更好地实现其目标,从而提升整个组织的运营效率和市场竞争力。流程建设:在流程规划的基础上,进一步设计具体的流程,包括流程的详细步骤、活动、规则和模板。L1流程分类:从价值链的角度对流程进行大类划分,如运营流程、管理支持流程等,反映公司的业务模式和战略目标,覆盖公司的全部业务。L2流程组:对L1下的流程进行进一步细化,如战略管理流程、集成产品开发流程等,反映公司的业务领域和范围,是流程管理的基本单元。

数字化藏经阁 3542

手机相机Tuning专项调优(一):基础流程与图像主观评价标准建立实战解析

本篇为手机相机系统“Tuning专项调优”系列的开篇,深入剖析了当前手机相机Tuning的基本流程与图像主观评价标准的构建方法。结合实际工程经验与最新业界案例,详细介绍ISP调优和3A控制中涉及的主观评价标准,如锐度、色彩饱和度、噪声感知等,并提出一套可工程化落地的标准制定与评测实践体系,帮助工程师有效提升图像品质。

努力分享一些人工智能、计算机视觉、影像等相关的知识干货! 1935

ardupilot BMI088加速度陀螺仪学习

本节主要记录ardupilot 中BMI088传感器的学习过程,欢迎批评指正。BMI088是一款高性能6轴惯性传感器,由16位数字三轴±24g加速度计和16位数字三轴±2000°/ s陀螺仪组成。 BMI088允许高精度测量方向和沿三个正交轴的运动检测。BMI088具有高振动鲁棒性和3 x 4.5 x0.95mm³的小尺寸,是用于无人机和机器人应用等恶劣环境的高性能IMU中的独特产品。 BMI088专门设计用于有效抑制由于PCB上的共振或整个系统的结构而可能发生的振动。 除了高振动稳定性外,BMI088的出

陌城烟雨 2056

适合硬件团队的项目管理软件有哪些?IPD流程管理工具盘点

硬件团队选择项目管理软件,关键不在任务协同,而在需求追溯、阶段评审、变更管理、测试验证和跨部门协同。本文系统盘点8款IPD流程管理工具,分析各类IPD流程管理工具的适用场景、优势与选型建议。

2501_93896765的博客 549

GEE APP:时间序列影像批处理工具:按月筛选与智能导出解决方案出工具

本文介绍了一个基于Google Earth Engine(GEE)开发的智能时序影像处理工具,可高效处理遥感影像时间序列数据。该工具采用三栏式交互布局,包含控制面板、地图显示和缩略图预览区域。核心功能包括:1)灵活的时间筛选机制,支持年度范围选择和月份批量选择;2)智能影像筛选算法,基于云量、空间覆盖等条件自动选择最佳影像;3)交互式缩略图预览,支持点击加载完整影像;4)自动化批量导出系统,实现标准化命名和统一存储。工具可广泛应用于农业监测、城市扩张研究、生态环境评估等领域,显著提高遥感数据预处理效率,确保

此星光明博客 113

软件测试流程及流程管理

2.1软件测试模型 软件测试包含如下4个步骤 (1)确定在测试过程中应该考虑到哪些问题,即制定测试需求。 (2)软件产品应该如何被测试,即设计测试用例及测试计划。 (3)建立测试环境,执行测试,并记录测试过程。 (4)评估测试结果,检查是否达到测试的标准,报告进展情况。 2.1.1 v模型 v模型是最具代表意义的测试模型,反映了测试活动与分析设计活动的关系。 v模型具有的特点 (1)v模型是最具代表意义的测试模型。 (2)v模型是软件开发瀑布的变种。反映了测试活动与分析和设计活

m0_59745705的博客 2689

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

流程管理-测试面试题

Python接口自动化面试题总结: https://blog.youkuaiyun.com/candy_tse_1/article/details/99452378 https://www.cnblogs.com/Safi-X/p/12966069.html https://blog.youkuaiyun.com/weixin_44602565/article/details/108704374 https://www.cnblogs.com/dongfenghai/p/13383944.html APP测试和Web测试

欢迎来到秦朝 849

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

开发小结-流程管理类-上篇

本文章主要聚焦在项目流程管理,汇总记录一些工作中心得体会。 项目流程 流程体系旨在提高工作效率,明确流程接口和步骤,确定相关岗位和相关事务要求、原则和规则。流程管理,简而言之,就是各司其职,节奏合适。产品的需求和开发的Bug有工具跟踪,软件发布按照节奏来,需求提交给具体开发前,需要和开发主管讨论可行性,有专门的测试反馈和每日进度规划。知道今天要做什么,也知道明天要做什么。 个人在开发过程中,要提前...

weixin_38166557的博客 247

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

怎样确保版本质量--测试角度的思考

近期面试过程中,经常被问到的问题,是通过什么手段去确保版本质量。 可能自身缺乏一定的基础积累,只能从有限的项目经验作答,个人感觉主要通过版本管理与一定的技术手段来保证: 一、版本管理 严格规范项目流程,每个迭代大概分以下几步:需求评审,设计复审,测试计划,测试案例评审,代码review,测试(冒烟、单元、集成、系统、性能、安全),回归测试,版本评审。 严格按照规范化的项目流程走,可以有条不...

qw5313091的专栏 1600

软件测试(六)--软件测试流程管理

6 软件测试流程管理6.1软件测试流程管理基础1,测试流程管理的意义:a) 角色分工的统一和集中分配便于管理和绩效考核b) 沟通所需的软件开发和测试流程环节和结果、步骤帮助团队成员明确各自的工作任务c) 明确测试流程便于领导层及时发现隐患,并采取行动d) 便于新员工快速学习应做的工作,并融入团队工作6.2软件测试的一般流程1,开发模式与软件测试流程...

测试小白升级记 320

169页PPT:华为流程管理体系构建与落地的五大核心

使能类流程是设计来支持和增强执行类流程的,使能类流程的目的是为执行类流程提供必要的资源和能力,帮助执行类流程更好地实现其目标,从而提升整个组织的运营效率和市场竞争力。流程建设:在流程规划的基础上,进一步设计具体的流程,包括流程的详细步骤、活动、规则和模板。L1流程分类:从价值链的角度对流程进行大类划分,如运营流程、管理支持流程等,反映公司的业务模式和战略目标,覆盖公司的全部业务。L2流程组:对L1下的流程进行进一步细化,如战略管理流程、集成产品开发流程等,反映公司的业务领域和范围,是流程管理的基本单元。

数字化藏经阁 2967

python 判断图形角度

Python 判断图形角度 在计算机图形学和几何计算中,判断角度是一个常见的问题。角度的计算在各种应用中都是至关重要的,尤其是在图形绘制、图像处理以及计算机视觉中。Python 提供了多种方式来计算和判断图形的角度,这里我们将详细介绍如何使用 Python 来实现这一功能。 角度的基本概念 角度是指两条射线之间的夹角,通常...

weixin_40472635的博客 318
上一篇: Shell 小技巧 获取文件后缀名的方式
下一篇: python脚本查hang在什么地方
测试九宸
博客等级 码龄23年 21粉丝 20原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值