自动化测试面试题,带有土字的名字有哪些
应聘,电气类 自动化类 笔试题目
数字电路
1、同步电路和异步电路的区别是什么?(仕兰微电子)
2、什么是同步逻辑和异步逻辑?(汉王笔试)
同步逻辑是时钟之间有固定的因果关系。异步逻辑是各时钟之间没有固定的因果关系。
3、什么是"线与"逻辑,要实现它,在硬件特性上有什么具体要求?(汉王笔试)
线与逻辑是两个输出信号相连可以实现与的功能。在硬件上,要用oc门来实现,由于不用 oc门可能使灌电流过大,而烧坏逻辑门。 同时在输出端口应加一个上拉电阻。
4、什么是Setup 和Holdup时间?(汉王笔试)
5、setup和holdup时间,区别.(南山之桥)
6、解释setup time和hold time的定义和在时钟信号延迟时的变化。(未知)
7、解释setup和hold time violation,画图说明,并说明解决办法。(威盛VIA
2003.11.06 上海笔试试题)
Setup/hold time 是测试芯片对输入信号和时钟信号之间的时间要求。建立时间是指触发 器的时钟信号上升沿到来以前,数据稳定不变的时间。输入信号应提前时钟上升沿(如上升沿有效)T时间到达芯片,这个T就是建立时间-Setup time.如不满足setup time,这个数据就不能被这一时钟打入触发器,只有在下一个时钟上升沿,数据才能被打入触发器。 保持时间是指触发器的时钟信号上升沿到来以后,数据稳定不变的时间。如果hold time 不够,数据同样不能被打入触发器。
建立时间(Setup Time)和保持时间(Hold time)。建立时间是指在时钟边沿前,数据信 号需要保持不变的时间。保持时间是指时钟跳变边沿后数据信号需要保持不变的时间。如果不满足建立和保持时间的话,那么DFF将不能正确地采样到数据,将会出现 metastability的情况。如果数据信号在时钟沿触发前后持续的时间均超过建立和保持时 间,那么超过量就分别被称为建立时间裕量和保持时间裕量。
8、说说对数字逻辑中的竞争和冒险的理解,并举例说明竞争和冒险怎样消除。(仕兰微 电子)
9、什么是竞争与冒险现象?怎样判断?如何消除?(汉王笔试)
在组合逻辑中,由于门的输入信号通路中经过了不同的延时,导致到达该门的时间不一致叫竞争。产生毛刺叫冒险。如果布尔式中有相反的信号则可能产生竞争和冒险现象。解决方法:一是添加布尔式的消去项,二是在芯片外部加电容。
10、你知道那些常用逻辑电平?TTL与COMS电平可以直接互连吗?(汉王笔试)
常用逻辑电平:12V,5V,3.3V;TTL和CMOS不可以直接互连,由于TTL是在0.3-3.6V之间,而CMOS则是有在12V的有在5V的。CMOS输出接到TTL是可以直接互连。TTL接到CMOS需要在输出端口加一上拉电阻接到5V或者12V。
11、如何解决亚稳态。(飞利浦-大唐笔试)
亚稳态是指触发器无法在某个规定时间段内达到一个可确认的状态。当一个触发器进入亚
稳态时,既无法预测该单元的输出电平,也无法预测何时输出才能稳定在某个正确的电平
上。在这个稳定期间,触发器输出一些中间级电平,或者可能处于振荡状态,并且这种无
用的输出电平可以沿信号通道上的各个触发器级联式传播下去。
12、IC设计中同步复位与 异步复位的区别。(南山之桥)
13、MOORE 与 MEELEY状态机的特征。(南山之桥)
14、多时域设计中,如何处理信号跨时域。(南山之桥)
15、给了reg的setup,hold时间,求中间组合逻辑的delay范围。(飞利浦-大唐笔试)
Delay < period - setup – hold
16、时钟周期为T,触发器D1的建立时间最大为T1max,最小为T1min。组合逻辑电路最大延
迟为T2max,最小为T2min。问,触发器D2的建立时间T3和保持时间应满足什么条件。(华
为)
17、给出某个一般时序电路的图,有Tsetup,Tdelay,Tck->q,还有 clock的delay,写出决
定最大时钟的因素,同时给出表达式。(威盛VIA 2003.11.06 上海笔试试题)
18、说说静态、动态时序模拟的优缺点。(威盛VIA 2003.11.06 上海笔试试题)
19、一个四级的Mux,其中第二级信号为关键信号 如何改善timing。(威盛VIA
2003.11.06 上海笔试试题)
20、给出一个门级的图,又给了各个门的传输延时,问关键路径是什么,还问给出输入,
使得输出依赖于关键路径。(未知)
21、逻辑方面数字电路的卡诺图化简,时序(同步异步差异),触发器有几种(区别,优
点),全加器等等。(未知)
22、卡诺图写出逻辑表达使。(威盛VIA 2003.11.06 上海笔试试题)
23、化简F(A,B,C,D)= m(1,3,4,5,10,11,12,13,14,15)的和。(威盛)
24、please show the CMOS inverter schmatic,layout and its cross sectionwith P-
well process.Plot its transfer curve (Vout-Vin) And also explain the
operation region of PMOS and NMOS for each segment of the transfer curve? (威
盛笔试题circuit design-beijing-03.11.09)
25、To design a CMOS invertor with balance rise and fall time,please define
the ration of channel width of PMOS and NMOS and explain?
26、为什么一个标准的倒相器中P管的宽长比要比N管的宽长比大?(仕兰微电子)
27、用mos管搭出一个二输入与非门。(扬智电子笔试)
28、please draw the transistor level schematic of a cmos 2 input AND gate and
explain which input has faster response for output rising edge.(less delay
time)。(威盛笔试题circuit design-beijing-03.11.09)
29、画出NOT,NAND,NOR的符号,真值表,还有transistor level的电路。(Infineon笔
试)
30、画出CMOS的图,画出tow-to-one mux gate。(威盛VIA 2003.11.06 上海笔试试题)
31、用一个二选一mux和一个inv实现异或。(飞利浦-大唐笔试)
32、画出Y=A*B+C的cmos电路图。(科广试题)
33、用逻辑们和cmos电路实现ab+cd。(飞利浦-大唐笔试)
34、画出CMOS电路的晶体管级电路图,实现Y=A*B+C(D+E)。(仕兰微电子)
35、利用4选1实现F(x,y,z)=xz+yz’。(未知)
36、给一个表达式f=xxxx+xxxx+xxxxx+xxxx用最少数量的与非门实现(实际上就是化
简)。
37、给出一个简单的由多个NOT,NAND,NOR组成的原理图,根据输入波形画出各点波形。
(Infineon笔试)
38、为了实现逻辑(A XOR B)OR (C AND D),请选用以下逻辑中的一种,并说明为什
么?1)INV 2)AND 3)OR 4)NAND 5)NOR 6)XOR 答案:NAND(未知)
39、用与非门等设计全加法器。(华为)
40、给出两个门电路让你分析异同。(华为)
41、用简单电路实现,当A为输入时,输出B波形为…(仕兰微电子)
42、A,B,C,D,E进行投票,多数服从少数,输出是F(也就是如果A,B,C,D,E中1的个数比0
多,那么F输出为1,否则F为0),用与非门实现,输入数目没有限制。(未知)
43、用波形表示D触发器的功能。(扬智电子笔试)
44、用传输门和倒向器搭一个边沿触发器。(扬智电子笔试)
45、用逻辑们画出D触发器。(威盛VIA 2003.11.06 上海笔试试题)
46、画出DFF的结构图,用verilog实现之。(威盛)
47、画出一种CMOS的D锁存器的电路图和版图。(未知)
48、D触发器和D锁存器的区别。(新太硬件面试)
49、简述latch和filp-flop的异同。(未知)
50、LATCH和DFF的概念和区别。(未知)
51、latch与register的区别,为什么现在多用register.行为级描述中latch如何产生的。
(南山之桥)
52、用D触发器做个二分颦的电路.又问什么是状态图。(华为)
53、请画出用D触发器实现2倍分频的逻辑电路?(汉王笔试)
54、怎样用D触发器、与或非门组成二分频电路?(东信笔试)
55、How many flip-flop circuits are needed to divide by 16? (Intel) 16分频?
56、用filp-flop和logic-gate设计一个1位加法器,输入carryin和current-stage,输出
carryout和next-stage. (未知)
57、用D触发器做个4进制的计数。(华为)
58、实现N位Johnson Counter,N=5。(南山之桥)
59、用你熟悉的设计方式设计一个可预置初值的7进制循环计数器,15进制的呢?(仕兰
微电子)
60、数字电路设计当然必问Verilog/VHDL,如设计计数器。(未知)
61、BLOCKING NONBLOCKING 赋值的区别。(南山之桥)
62、写异步D触发器的verilog module。(扬智电子笔试)
module dff8(clk , reset, d, q);
input clk;
input reset;
input [7:0] d;
output [7:0] q;
reg [7:0] q;
always @ (posedge clk or posedge reset)
if(reset)
q <= 0;
else
q <= d;
endmodule
63、用D触发器实现2倍分频的Verilog描述? (汉王笔试)
module divide2( clk , clk_o, reset);
input clk , reset;
output clk_o;
wire in;
reg out ;
always @ ( posedge clk or posedge reset)
if ( reset)
out <= 0;
else
out <= in;
assign in = ~out;
assign clk_o = out;
endmodule
64、可编程逻辑器件在现代电子设计中越来越重要,请问:a) 你所知道的可编程逻辑器
件有哪些? b) 试用VHDL或VERILOG、ABLE描述8位D触发器逻辑。(汉王笔试)
PAL,PLD,CPLD,FPGA。
module dff8(clk , reset, d, q);
input clk;
input reset;
input d;
output q;
reg q;
always @ (posedge clk or posedge reset)
if(reset)
q <= 0;
else
q <= d;
endmodule
65、请用HDL描述四位的全加法器、5分频电路。(仕兰微电子)
66、用VERILOG或VHDL写一段代码,实现10进制计数器。(未知)
67、用VERILOG或VHDL写一段代码,实现消除一个glitch。(未知)
68、一个状态机的题目用verilog实现(不过这个状态机画的实在比较差,很容易误解
的)。(威盛VIA 2003.11.06 上海笔试试题)
69、描述一个交通信号灯的设计。(仕兰微电子)
70、画状态机,接受1,2,5分钱的卖报机,每份报纸5分钱。(扬智电子笔试)
71、设计一个自动售货机系统,卖soda水的,只能投进三种硬币,要正确的找回钱
数。 (1)画出fsm(有限状态机);(2)用verilog编程,语法要符合fpga设计
的要求。(未知)
72、设计一个自动饮料售卖机,饮料10分钱,硬币有5分和10分两种,并考虑找零:(1)
画出fsm(有限状态机);(2)用verilog编程,语法要符合fpga设计的要求;(3)设计
工程中可使用的工具及设计大致过程。(未知)
73、画出可以检测10010串的状态图,并verilog实现之。(威盛)
74、用FSM实现101101的序列检测模块。(南山之桥)
a为输入端,b为输出端,如果a连续输入为1101则b输出为1,否则为0。
例如a: 0001100110110100100110
b: 0000000000100100000000
请画出state machine;请用RTL描述其state machine。(未知)
75、用verilog ddl检测stream中的特定字符串(分状态用状态机写)。(飞利浦-大唐
笔试)
76、用verilog hdl写一个fifo控制器(包括空,满,半满信号)。(飞利浦-大唐笔试)
77、现有一用户需要一种集成电路产品,要求该产品能够实现如下功能:y=lnx,其中,x
为4位二进制整数输入信号。y为二进制小数输出,要求保留两位小数。电源电压为3~5v假
设公司接到该项目后,交由你来负责该产品的设计,试讨论该产品的设计全程。(仕兰微
电子)
78、sram,falsh memory,及dram的区别?(新太硬件面试)
79、给出单管DRAM的原理图(西电版《数字电子技术基础》作者杨颂华、冯毛官205页图9
-14b),问你有什么办法提高refresh time,总共有5个问题,记不起来了。(降低温
度,增大电容存储容量)(Infineon笔试)
80、Please draw schematic of a common SRAM cell with 6 transistors,point out
which nodes can store data and which node is word line control? (威盛笔试题
circuit design-beijing-03.11.09)
81、名词:sram,ssram,sdram
名词IRQ,BIOS,USB,VHDL,SDR
IRQ: Interrupt ReQuest
BIOS: Basic Input Output System
USB: Universal Serial Bus
VHDL: VHIC Hardware Description Language
SDR: Single Data Rate一、填空(15分)
1. 电压互感器的一次组 联接入被测电路,运行中其二次绕组不允许_____路。
2.开关电器加速电弧熄灭的方法有 、
、 和 。
3.隔离开关的作用是 、 和 。
4.电气设备的预防性试验可分为 性试验和 性试验两大类。
5.电介质极化的形式主要有 式极化、 式极化、
式极化和 极化。
6.配电装置可分为 式配电装置、 式配电装置和成套式配电装置。
7.选择隔离开关时应考虑的选择与校验项目有:按型式选择、
按 选择、按 选择、校验 、校验 、校验 。
8.输电线路的停电操作步骤是:首先拉开 ;再拉开 ;最后拉开 。
9.两台变压器并联运行的条件是两台变压器的 、
和 。
10.发电厂自用电率为发电厂 与
。
二、单择题(10分)
1.熔断器额定电流是指熔断器的( )部分允许通过的最大长期工作电流。
A.熔管。B.熔件。C.熔管、载流部分和底座。D. 载流部分和底座。
2.变压器正常过负荷是根据高峰负荷时过负荷绝缘寿命损失增加,低负荷时绝缘寿命损失减少,在两者相互补偿使变压器总的寿命损失( )条件确定的。
A.不加大。B.略加大。C.略减小。
3.选择断路器时,应要求断路器的额定开断电流( )断路器开断时所通过的最大短路电流。
A.不大于。B.不小于。C.小于。D.大于。
4. 断路器控制回路中,防跳继电器的作用是( )。
A.防止断路器跳跃。B.防止断路器跳跃和保护继电保护装置的出口继电器触点。C.防止断路器跳闸时间过长。D. 防止断路器跳跃和防止断路器合闸时间过长。
5.同一相母线中绝缘子之间的距离( )临界垮距时,其动稳定合格。
A.不大于。B.小于。C.大于。D. 不小于。
三、名词解释(15分)
1.熔断器的极限断路电流:
2.断路器的分闸时间:
3.断路器的额定开断电流:
4.行波:
5.母线的最小允许截面:
四、问答题(20分)
1.什么是I类厂用负荷? I类厂用负荷对供电电源有哪些要求。
2.什么是变压器绝缘老化的6C规则。
3.简述使用三相电压表进行进行交流绝缘监察的工作原理。
4.运行中电流互感器器什么不允许开路。
5.摇表的工作原理。
五、绘图题(24分)
1.绘出具有2个电源、3个引出线的单母线带旁路的主接线图。
2.绘出内桥式接线的主接线图。
3.绘出 10kV三相五柱式电压互感器的接线。
4.绘出两相是式电流互感器接线,并标出三相电流路经。
六、选择测量用电流互感器的条件。(8分)
七、某电气设备直径为5m,高17m。欲在距该设备边缘7m处安装1支独立避雷针对设备进行直击雷保护,请选择避雷针高度。(8分)
“发电厂电气主系统试题”A
答案
一、填空(15分)
1. 并。短。
2.气体吹动。多断口。电弧与固体介质接触。金属灭弧栅。
3.隔离电压。切换电路。拉合小电流。
4.破坏。非破坏。
5.电子。离子。耦极子。夹层。
6.屋内。屋外。
7.额定电压。额定电流。机械负荷。动稳定。热稳定。
8.断路器。线路隔离开关。母线隔离开关。
9.接线组别相同。变比相同。短路电压相同。
10.同一时间内发电厂自用电。发电厂的发电量之比。
二、单择题(10分)
1. C。2.A。3.B。4.B。5.A。
三、名词解释(15分)
1.熔断器的极限断路电流:是指其能够可靠切断的最大电流。
2.断路器的分闸时间:处于合闸状态的断路器,从分闸回路接受分闸命令(脉冲)瞬间起,直到所有灭弧触头均分离瞬间的时间间隔。
3.断路器的额定开断电流:断路器在频率为50Hz的瞬态恢复电压下, 能够开断的最大短路电流值。
4. 行波:沿导线传播的电压波、电流波统称为行波,其实质是电磁能量沿导线传播。
5.母线的最小允许截面:短路电流通过母线后母线的温度恰好升高到短路时最高允许时,所要求最小的母线截面积。
四、问答题(20分)
1. I类厂用负荷对供电有何要求?
答:Ⅰ类负荷指短时(即手动切换恢复供电所需的时间)的停电可能影响人身或设备安全,使生产停顿或发电量大量下降的负荷。Ⅰ类负荷应由两个独立电源供电,当一个电源消失后,另一个电源要立即自动投入继续供电。为此, Ⅰ类负荷的电源应配置备用电源自动投入装置。
2. 什么是变压器绝缘老化的6C规则。
答:变压器绕组的温度每增加6C,其使用年限将减少一半的规则。
3.简述使用三相电压表进行进行交流绝缘检察的工作原理。
答:小电流接地系统绝缘在正常或发生接地时,各相对地电压不同。当系统绝缘在正常时,各相对地电压等于电源的相电压;当系统绝缘损坏发生一相金属性接地时,故障相对地电压为零,而其它两相对地电压将升至到电源的线电压。因此,可利用电压表(经电压互感器)测量系统三相对地电压,根据各相对地电压的变化监视交流系统的绝缘状况。
4.运行中电流互感器器什么不允许开路。
答:电流互感器正常工作时,二次回路近于短路状态。这时二次电流所产生的二次绕组磁动势F2对一次绕组磁动势F1有去磁作用,因此合成磁势F0=F1-F2不大,合成磁通φ0也不大,二次绕组内感应电动势E2的数值最多不超过几十伏。因此,为了减少电流互感器的尺寸和造价,互感器铁心的截面是根据电流互感器在正常工作状态下合磁磁通φ0很小而设计的。
使用中的电流互感器如果发生二次回路开路,二次绕组磁动势F2等于零,一次绕组磁动势F1仍保持不变,且全部用于激磁,合成磁势F0=F1,这时的F0较正常时的合成磁势(F1-F2)增大了许多倍,使得铁心中的磁通急剧地增加而达到饱和状态。由于铁心饱和致使磁通波形变为平顶波,因为感应电动势正比于磁通的变化率dφ/dt,所以这时二次绕组内将感应出很高的感应电动势e2。二次绕组开路时二次绕组的感应电动势e2是尖顶的非正弦波,其峰值可达数千伏之高,这对工作人员和二次设备以及二次电缆的绝缘都是极危险的。另一影响是,因铁心内磁通的剧增,引起铁心损耗增大,造成严重发热也会使电流互感器烧毁。第三个影响是因铁心剩磁过大,使电流互感器的误差增加。
5.摇表的工作原理。
答:摇表(兆欧表)是由电源(发电机G)和磁电系流比计(测量机构)等组成,其原理接线如下图所示,图中G为发电机,RA、RV分别为流比计电流线圈LA和电压线圈LV相串联的固定电阻。
摇表(兆欧表)原理接线
直流发电机的电压加至两个并联的电流线圈和电压线圈回路,其中被测电阻串入电流线圈回路(接在E、L端子之间)。由于磁电系流比计处于不均匀磁场中,所以两个线圈所受力与线圈在磁场中所处位置有关。因为两个线圈绕制的方向不同,当两个线圈中通过电流时会产生不同方向的转动力矩。在两个线圈力矩差的作用下,使其转动部分带动指针转动,两个线圈所受力矩也随之改变,只有转动到力矩差为零时才停止转动。显然,指针的偏转角与并联电路中的电流比值有关,即:
I1
=f(———)
I2
式中 I1—电流线圈LA中的电流;
I2—电压线圈LV中的电流
由于并联支路电流的分配与其电阻值成反比,所以偏转角的大小反映了被测电阻值的大小。兆欧表在额定电压下,I2为一定值,但被测电阻Ri与电流线圈LA相串联,所以I1的大小随Ri转的数值而改变,于是Ri的大小决定了指针偏转角的位置。因此,在摇表的刻度盘上,便可直接读取被测品的绝缘电阻值。
五、绘图题(24分)
1.绘出具有2个电源、3个引出线的单母线带旁路的主接线图。
2.绘出内桥是式接线的主接线图。
答案参见教材图2—9(a)。
3.绘出 10kV三相五柱式电压互感器的接线。
答案参见教材图1—65(e)。
4.绘出两相式电流互感器接线,并标出三相电流。
答案参见教材图1—60(c)。
六、选择测量用电流互感器的条件。(8分)
答:1.型式的选择:根据电流互感器安装的场所和使用条件,选择电流互感器的绝缘结构、安装方式、结构型式等。
2.按额定电压选择:要求电流互感器的额定电压不小于装设电流互感器回路所在电网的额定电压。
3.按额定电流选择:要求电流互感器的一次额定电流不小于装设电抗器回路的最大持续工作电流。
4.按准确度级选择:要求电流互感器的准确度级应符合其二次测量仪表对准确度的要求。
5.校验二次负荷:要求电流互感器的二次负荷不超过规定准确度下所允许的最大负荷。
6.校验热稳定:要求电流互感器允许的热效应(即电流互感器的热稳定倍数K h与电流互感器一次额定电流乘积的平方再乘以t)不小于短路电流的热效应。
7.校验动稳定
(1)校验互感器内部动稳定的条件是互感器允许通过的极限电流(峰值)不小于通过互感器的最大三相冲击短路电流(峰值)。
(2)校验电流互感器外部动稳定,要求电流互感器电流互感器一次侧端部的允许作用力不小于电流互感器一次侧瓷绝缘端部所受的最大电动力。
七、某电气设备直径为5m,高17m。欲在距该设备边缘7m处安装1支独立避雷针对设备进行直击雷保护,请选择避雷针高度。(8分)
解:C点为安装避雷针的地点,图中A点为距避雷针保护的最远点,故hx=17m,rx=12m。
假设避雷针高度为h,且hXh/2、h30m。
根据单支避雷针保护范围计算公式rx=(h-hx)P的关系,选取 避雷针高度h=(rx/P)+ hx=(12/1)+17=29m
计算结果与假设相符,取h29m
hX=17m时的保护半径为:rX1=(h-hX)P=(29-17)1=12m
取h29m时,电气设备在避雷针的保护范围之内,故选
Web端自动化测试失败的原因
最初的测试自动化失败是从不切实际的期望中获得的。在我的职业生涯中,我已经多次观察到它,一旦您获得了自动化的质量保证或工作人员,管理层就期望他们对所有内容进行自动化测试。尽管听起来很令人愉悦,但这是不可能的。您不能进行100%的自动化测试,因为在少数几个领域必须进行人工检查。这些领域之一可能与您的Web应用程序的可访问性有关。
例如,如果您正在执行自动跨浏览器测试,则用于Selenium测试的自动化脚本将在不同的浏览器或操作系统上呈现网页的显示。但是,要确定网站是否按照设计进行渲染,版式是否合适,文字是否合适,最好手动评估
许多组织确实意识到期望进行100%自动化测试的问题陈述,但通常会遇到以下问题。我们可以实现什么自动化,如果不是100%,那么我们可以为Web产品实际实现多少自动化?
没有适用于每个企业的自动化测试覆盖率的完美百分比或近似值。这完全取决于您所提供的Web应用程序,并且由于不同的企业正在满足不同的需求。自然而然地,人们会对围绕自动化测试实际能实现的自动化测试百分比抱有独特的期望?自动化测试的范围将从电子商务Web应用程序到静态,动态或动画Web应用程序有所不同。因此,如果您想知道为什么自动化测试对您的组织失败?然后,我建议您根据所提供的Web应用程序的类型来评估所需的自动化测试量。
在我作为自动化测试员开始IT生涯时,我就一直是管理不当的受害者。我当时在一家基于Service的公司工作,他们为我分配了我的第一个项目。这个项目已经运行了两年,当我加入后,我被交给了一系列测试自动化脚本。项目的高层将要离开组织,管理层对即将到来的冲刺太忙了,无法考虑将要离开的高级自动化测试人员进行的全面知识转移课程。他们离开后发生的景象不佳?我的经理在听证会的结尾说,我们因停电而大吃一惊,而我刚起步,对各种出站和入站流程如何受到众多自动化脚本的影响的了解最少。然而, 我见过一些由少数成员负责实现自动化的团队,而其他成员则对正在发生的事情一无所知。
您是否认为当一半的团队缺乏可见性时,从自动化测试中获得魔术效果是不现实的吗?由于自动化必须是一个协作的工作,因此对每个团队成员进行相关工具和流程的教育非常重要,尤其是对新手而言。您可以通过举行团队会议和会议来讨论与自动化有关的工具,趋势和实践,从而实现这一目标。
这可能会让您有些惊讶,测试自动化失败的另一个原因可能是缺少手动测试技能或 探索 性测试技能。自动化测试脚本并不意味着团队成员可以减少一些懈怠。到目前为止,我们已经知道,自动化方法不能涵盖所有内容,而这正是挑战所在。因为现在您必须更深入地研究Web应用程序,并找到队友尚未发现的关键测试方案。
自动化是节省测试工作的一种方式。软件公司应该使用它来最大程度地减少重复,并尽量使那些不易更改的元素自动化。一旦完成,公司应该分配他们的资源来执行广泛的手动测试或 探索 性测试,以找到独特的测试用例。
自动化似乎是减少工作量的一个目标。但是在开发测试自动化脚本之前,必须考虑周全。此外,这可能会花费大量的自动化测试执行时间。框架和测试自动化工具的灵活性在开发脚本场景所需的时间中起着至关重要的作用。
由于每种情况都不同,因此必须编写脚本。即使您仔细考虑,如果不编写脚本脚本,这都是浪费。确保测试工程师的编码技能与测试的复杂性保持一致。复杂的测试需要大量时间才能实现自动化。因此,随着全新功能的发展,他们通常没有机会发现回归的错误。在写下测试方案之前,请确保牢记这些注意事项。
“ 为什么测试自动化对您的公司失败?”背后的最常见的原因?”是人们不知道什么时候应该自动化,什么时候不知道。例如,可以自动化不同的网页功能。但是通过测试自动化评估填充,图像等渲染问题不是一个好主意。如果使用坐标来确定元素位置,则在以不同的屏幕分辨率和大小运行时,可能会导致差异。
在测试易于进行大量更改的项目时,使用自动化是不可行的。如果您要测试稳定的实体,那么自动化是必经之路。基本上,需要重复执行某些操作的普通任务最适合自动化测试。因此,测试自动化可以简化您的回归测试过程。
我看到IT行业普遍存在错误观念。人们认为任何开发人员或测试人员都可以执行测试自动化。测试自动化的设计,配置和实施需要特定的技能。执行自动化的测试人员应该知道如何在经理,开发人员和客户之间阐明想法。他/她还应该对开发趋势有清晰的了解,并且应该知道开发团队要去的方向。
自动化测试工程师是最困难但最重要的一些人。为了启动各种自动化项目,聘请具有广泛技术知识的测试人员至关重要。整个团队应该知道发生了什么,而不是由一个或几个人进行自动化测试。即使在雇用技术精湛的员工方面投入很高,但回报还是值得的。
由于自动化测试是一个相对较新的现象,因此失败的可能性很高。测试团队进行的新实验太多,因此准确分析结果变得很重要。进行测试后,测试人员必须做出详尽的测试报告。但是,这就是测试自动化对您而言失败的原因!您的团队没有对测试报告的分析给予足够的重视。如果执行不当,分析可能会导致无人看管的故障,并浪费时间,资源和精力。
在自动测试中,有些测试成功,有些失败。因此,必须检查测试报告是否有故障并分析某些测试失败的原因。最好手动进行分析,以发现真正的故障。揭露隐藏的问题并确保它们不会被其他问题掩盖而被忽略是至关重要的。
设置太高而不能成为自动化的真正目标,在纸面上似乎很完美。但是,在执行步骤时,团队成员之间严重缺乏清晰度。最大的问题是目标不明确。他们缺乏从自动化中获得真正价值的准确性和准确性。大多数公司所做的是,他们开始将非常复杂的事情自动化,并最终重构整个框架。结果,团队最终会浪费大量时间,金钱和精力。
您可以通过从小处着手并逐步提高复杂性来消除不确定性。选择稳定的功能,并从其自动化开始。之后,收集反馈以确定出了什么问题。一旦您的测试达到一致性,就可以继续使用其他功能。对于不同的项目环境,需求可能会有所不同,因此请使用自定义方法进行测试自动化。
在拥有大量自动化工具的情况下,有时候选择最佳工具变得充满挑战。最终目标是改善整体测试程序并满足实际要求。但是大多数团队都无法从头再来,也没有挑选出最适合其测试需求的工具。毫无疑问,自动化测试是高度依赖于您决定继续使用的工具。每个工具都有特定的功能。但是,团队缺乏充分利用这些功能所需的专业知识水平。
此外,公司陷入了对特定工具的炒作。但是在选择它之后,他们意识到它并没有提供他们希望获得的一切。另外,每个团队都有预算,有时该工具的成本超出了预算。在继续选择操作工具之前,请仔细列出要求。之后,确定您对该工具的期望值。在设定目标时要非常具体,并检查与产品用户接受标准的对应关系。您也可以咨询有使用这些工具经验的专家。
几乎每个组织都经常观察到这一点。一旦自动化测试套件准备就绪并且工作正常,管理就开始放松。他们开始放宽对测试执行的深入分析,因为他们认为只有通过/失败检查才足够。但是,这就是测试自动化导致他们失败的原因!
有时,系统从根本上可以正常运行。但是,自动化脚本不能反映出相同的情况。他们以其他方式陈述并导致假阳性方案。因此,这造成了混乱的局面,浪费了时间,精力和资源。我已经看到测试团队试图找到不存在的东西是多么令人沮丧!
每个Web元素都必须有一个ID才能执行有效的测试。但是有时,开发人员无法将ID分配给所有Web元素,这就是测试自动化失败的原因。在这种情况下,自动脚本必须查找这些Web元素,这会花费大量时间。此外,如果脚本无法在规定的时间内找到这些元素,则测试将失败。因此,为了确保脚本的正确同步,团队必须为所有Web元素分配唯一的ID。
因此,最终使所有想要自动化的东西都自动化了。您最终获得了庞大的测试套件,直到现在,您才开始碰壁。这些复杂的测试套件执行时间比您预期的要长。这开始与您各自的IDE测试自动化框架中的测试队列质量相抵触。结果,由于队列超时问题,测试用例突然停止,这都是因为您要按顺序执行它们。测试用例的顺序执行是Web应用程序测试自动化失败的另一个原因。
与顺序运行测试不同,并行执行使您可以在不同的环境中同时执行多个测试。但是自动化测试可能会导致意外的代码交互。调试失败的原因非常困难,因此您需要透彻的报告机制,提供有关测试执行的详细见解。
无论您在线经营什么业务,ROI都将成为每次董事会会议的议程。股东要求更高的回报。而且,无论您准备测试自动化套件花费了多少时间和精力,如果它们产生的ROI均达不到预期,那么它们的重要性将比您预期的要轻得多。
在计算测试自动化的投资回报率时,可能需要考虑许多指标,例如测试维护,购买必要的测试自动化工具所涉及的成本,板载资源等等。计划不切实际的ROI对于许多组织而言可能是成问题的,并且可能是测试自动化失败的原因。
许多组织给人以自动化测试容易的印象。您所需要做的只是编写几行代码以自动化您的Web应用程序的测试工作流程。就是这样!您完全不必担心测试自动化脚本的计划和输入。但这不是!
您需要评估波纹效应。您的Web应用程序将包含许多旨在测试不同模块和流程的测试自动化脚本。如果一个测试脚本无法正确执行,则其他脚本也可能触发测试自动化失败。不仅如此,在计划资源时还应该计算出连锁反应。
假设您有一个高级资源,他曾经写过脚本,现在已经离开了公司。您可能没有想到辞职可能会在自动化项目的未来时间表中产生连锁反应。这就是为什么需要记录有关系统中每个自动化测试脚本的每个细节的原因。该文档应作为萌芽的自动化测试人员以及经验丰富的自动化测试人员的标准。
测试自动化对您的组织失败的另一个原因可能是不合适的测试套件。许多自动化测试人员会创建静态测试套件,这些套件在您扩展业务时并不那么灵活。每当平台发展时,它们最终都会重新编写整个自动化测试脚本。这是一个坏习惯,因为您在浪费时间,资源和金钱。另外,这也是一个错误的过程。确保您编写随平台扩展而发展和适应的测试套件。
避免测试自动化失败的另一种方法是即兴测试套件。现在,这听起来似乎很明显,但是在许多组织中却没有实践。原因是,一旦他们设计了测试套件,并发现它可以正常工作,便开始着手自动化新领域。我没有批评沉迷或 探索 新领域以实现自动化的努力。但是,管理一个时间窗口并让您和您的团队回顾现有的代码段,以找出进一步优化它的方法并没有什么坏处。始终尝试使用您的测试套件,以使事情变得更好。
随着敏捷软件,看板软件等现代SDLC(软件开发生命周期)方法在全球范围内的采用,协作已成为将Web应用程序更快部署到市场中的关键组成部分。
这是一个多维软件开发过程,所有团队都在同时开发Web应用程序。您有一组开发人员设计前端,另一个负责后端,还有一个负责中间件活动的团队。作为测试人员,您需要了解哪个团队负责哪个模块。您必须及时了解不同团队所做的产品增强功能,并对自动化脚本进行相关更改,以确保测试自动化不会失败。
自动化测试的主要目的是最大程度地减少重复手动测试所涉及的压力,以节省时间。从抽象的角度看,这听起来不错,但对于那些执行测试自动化的人来说,要意识到为执行内部测试自动化而配置正确的基础结构的艰辛。我经常观察到测试人员在执行新脚本之前会刷新整个测试自动化套件,以避免与脚本产生任何歧义。但这不能使自动化测试的整个过程都失败,不是吗?
例如,如果您正在使用内部Selenium Grid执行自动跨浏览器测试,以测试适用于Google Chrome和Safari浏览器的macOS和Windows操作系统的网站。现在,您可能每次都要运行Selenium脚本之前就不得不面对设置新操作系统的麻烦。
这是组织自动化测试失败得非常普遍的原因。特别是在临近最后期限时。您的测试部门将继续在同一测试环境上运行大量测试套件,而不会清除先前执行的测试自动化脚本的缓存。这可能会导致错误的测试评估,当您遇到更多的假阴性和假阳性时,您的测试报告可能会受到影响。
例如,假设您需要针对不同的地理位置测试您的Web应用程序。在静态测试环境中执行地理位置定位时。您的脚本可能会遭到Google的测试,要求您证明自己不是机器人。这将导致测试自动化脚本失败。
这就是需要使用清除的缓存的新虚拟机的原因,因此您可以获得自动化跨浏览器测试脚本的准确结果。
为了使自动化能够在不同的测试环境中工作,需要进行大量的计划。您需要在暂存环境上进行测试,以确保将代码移入生产管道时,它们可以完美地工作。但是,经常会发生这样的情况:在舞台环境中进行测试时,用于代码更改的测试自动化脚本可以无缝运行,但是当移至生产环境时,它就会崩溃。此类问题背后可能有许多原因,例如缺乏持续的监控,登台环境无法使生产环境成对增长,缺少实时流量等等。
但并非最不重要的。如果到目前为止我们已经讲完所有要点,并且您的测试自动化仍然失败,那么您唯一需要反思的地方就是您自己的测试自动化脚本。确保您没有为整个项目中涉及的任何测试脚本提交任何编译时以及运行时错误。
如果您的组织需要提高生产力,那么自动化测试就是必经之路。这是提高产品质量所需的最有效的过程之一。测试自动化还提高了软件的健壮性。但是要谨慎执行和拖延。您不能在没有障碍的情况下匆匆忙忙,因为没有一家公司可以承受损失巨额资金的麻烦。另一方面,过多的恐惧会阻止您获得自动化测试所提供的显著优势。
感谢每一个认真阅读我文章的人!!!
如果下面这些资料用得到的话可以直接拿走:
1、自学开发或者测试必备的完整项目源码与环境
2、测试工作中所有模板(测试计划、测试用例、测试报告等)
3、软件测试经典面试题
4、Python/Java自动化测试实战.pdf
5、Jmeter/postman接口测试全套视频获取
我个人整理了我这几年软件测试生涯整理的一些技术资料,包含:电子书,简历模块,各种工作模板,面试宝典,自学项目等。需要的可以私我谢谢
打死我也想不到“美团”测试面试题这么难,当场给我吓“die”了_百度知 ...
不知道你们多长时间没有参加过面试了,最近这段时间的面试,真的是一个比一个严格!
昨天参加了一线大厂的技术面,当场给我吓die了,没想到这么难!
如果你不信,你也来die die:
你说这面试官狠不狠!太狠了!
对于我们测试员而言,面试就是将自己所学的技术与面试官表达出来。以前上学准备找工作的时候,发现最先找到工作的不是技术最好的而是善于沟通活跃度高的人,而我听的最多的抱怨是:为什么我明明知道这个东西,面试的时候却不知从何说起。
本文会从我的自身经历出发谈一谈面试前如何做好充分准备,怎么流畅地表达自己的技术,以及进入项目时如何从一开始的手足无措、盲目下手到后来的淡定从容。
这里也推荐一个群,里面会不定期地分享软件测试资源,测试面试题以及测试行业资讯,朋友们可以在群中积极交流问题。私信我(交流群)
下面我将从以下几个方面来分享一下面试前的准备。
1、给自己定位首先要给自己定位,自己现在是一个什么阶段,是初级岗,中级,高级,还是专家级。一般情况下刚参加工作一年左右是初级,两年左右努力提升自己的话是中级,三到五年高级甚至专家级。前提是不停地钻研。
2、知识的梳理
因为把自己定位为自动化测试工程师,俗话说:面试修航母,工作螺丝钉。面试考虑各个方面,对于测试来说,主要有以下几个方面来准备:接口自动化测试、搭建测试框架、web自动化、APP自动化。当然知识梳理完毕之后,还要去阅读一些面试经,看看最新各个厂商问的问题。其实以上这些东西准备完,基础好的话,一个月左右,基础不好的话至少要3个月吧。
俗话说不打无准备之仗,只有准备好了才能在面试过程中取得好的结果。
3、简历的准备
简历是一个敲门砖,HR每天会有很多简历收到。简历如何让人眼前一亮,并且能一眼抓住关键信息:个人基本信息(姓名,电话,邮箱,毕业院校等),工作经历,技能点,一些亮点(比如六级证书,获奖等)。简历要简洁,层次分明。写完简历要在招聘网站上更新一下自己的简历。
4、面试机会的各个渠道这次面试一共通过了3种渠道,一是朋友内推,二是猎头帮忙,三是通过boss或智联投递。
5、技能储备
自动化/性能/安全(必须会编程)——中高级测试工程师
具备测试能力和代码能力,提高测试效率和软件质量。
下面是自动化测试的一个例子。
1)选择一门编程语言学习:java、python、ruby等。
2)了解自动化测试,自动化测试工具,web/app/ interface /pc自动化基础。
3)框架思路、项目实践和流程。
在功能测试岗位工作几年后,我会开始感到焦虑。
在工作中,我感受到了自己成长的局限。除了越来越熟悉的业务,工作也是一点一点的,其他方面都没有长进。
想换工作,想涨工资,但是又觉得很失落,很无力,因为全身的价值都在这里。
想在工作过程中提升自己,朝着高薪自动化测试、性能测试、安全测试等方向迈进。
当然,自动化测试工具也可以自动化,但是有好有坏。
测试开发/性能、安全测试专家(必须能够编程)——高级测试工程师
测试开发,具备测试能力和代码能力,提高测试效率和软件质量。开发和测试都可以。
需要很强的开发能力,深入代码层面。一般不直接参与测试工作。
1.测试框架和测试工具的二次开发更好地满足了公司产品的测试需求。
2.进行单元测试或协助开发和进行单元测试,从开发阶段开始控制产品代码质量。在后续迭代过程中快速挖掘问题。
3.开发测试工具和平台,提高测试效率,简化各种测试,为测试团队量化测试结果。比如性能测试平台、接口测试平台。
测试主管、经理和主管-职业发展和晋升阶段
需要很强的测试和编程技能以及足够的管理和沟通技能。如果你只有足够的测试能力,就没法hold住开发团队。
对于这个问题,每个人都有每个人的看法。
觉得去大公司好的人认为,大公司资金较为雄厚,管理较为规范,对于应届毕业生来说,大公司的工作经历也会为以后的求职生涯镀金。
觉得去小公司好的人认为,大公司的管理模式僵化,能够学到的东西并不会很多,而小公司的管理模式灵活,晋升的机会也很多,能够得到不少的锻炼机会。
其实这个问题,我觉得并没有固定的答案,每一个公司和岗位都有适合的人和不合适的人。
如果你有机会进入一家知名大企业工作,那么绝对是一个不错的机会:
如果在这么好的环境下,你还在混日子的话,只能说自己放弃自己了,那就更别提职业发展了。
如果你有机会进入一家创业公司并且你是一个愿意接受挑战的人的话,那么绝对是一个不错的机会 :
面试的时候如何选择这家企业(某知名大公司 /创业型小公司 )是否适合你呢?
你需要在面试结束之后让自己清晰的了解以下几个问题:
对于上述这4点,你可能会说,面试的时候,有些企业不愿意告诉你这些问题的答案。没错,我也遇见过这种公司。
但反过来问问自己,如果在面试的时候企业都不能回答你这些问题,这样的公司你敢去吗?你真的愿意去吗?难道只是为了眼前的那些薪资?希望大家好好思考一下。在这里推荐一个软件测试交流群,群中会不定期的分享软件测试资源,测试面试题以及测试行业资讯,朋友们可以在群中积极交流问题。私信我(软件测试)
1.根据你的工作经历,说说你对质量保证的理解?
这是个综合性基础知识问题,考验你在测试行业工作几年后的心得,是否有测试思维,明确自己的定位。可以谈谈你认为如何做好测试?如何衡量质量?你又如何专注软件质量提升,帮助团队快速迭代高质量交付
2.非关系型数据库和关系型数据库的区别,谈谈他们的优势?
数据库在测试工作中的重要性相信我就不用在这赘述了,需要你对常见的关系型数据库和非关系型数据库的原理理解,而且总结出它们之前的区别
3.在自动化方面有什么成熟的方案,有没有做过二次开发?
测试工程师离不开一个关键字,“自动化”,在任何类型的项目或多或少会用到自动化测试技术。关于前后端自动化技术,是否有一套完整的测试框架,技术体系。在开源自动化测试框架的理解上,有一定的开发思维,能进行封装,开源框架上二次开发。能根据项目灵活打造适合团队的测试框架,是测试工程师的能力分水岭
4.质量部如果需要定制化一个质量体系平台,你会考虑哪些问题?
说实话,面试官这么问测试平台的问题,你可能就扛不住了。干过测试开发的应该都知道,测试平台的构造,除了技术难点。你要考虑如何去推进这个工作?测试平台研发出来后,在整个测试部门推广运营这个平台是大难题。在功能测试人员的角度来想,去使用不成熟的测试平台来测试,如果加大你的工作量,对你自身工作和技术没有什么太大价值,一般都不是非常积极的去配合,测试平台如何推广运营是个难题。你要让所有人亲身感受到用与不用这个测试平台有什么区别。
我也收集和整理了一些软件测试的学习资料,对于想学习或者进阶软件测试的朋友来说应该会很有帮助,有需要的小伙伴可以私信我(软件测试)
我是二黑,一个不太黑的测试人~
自动化测试需要学什么?
自动化测试与软件开发过程从本质上来讲是一样的,无非是利用自动化测试工具(相当于软件开发工具),经过对测试需求的分析(软件过程中的需求分析),设计出自动化测试用例(软件过程中的需求规格);
从而搭建自动化测试的框架(软件过程中的概要设计),设计与编写自动化脚本(详细设计与编码),测试脚本的正确性,从而完成该套测试脚本(即主要功能为测试的应用软件)。
1、自动化测试需求分析。
当测试项目满足了自动化的前提条件,并确定在该项目中需要使用自动化测试时,我们便开始进行自动化测试需求分析。此过程需要确定自动化测试的范围以及相应的测试用例、测试数据,并形成详细的文档,以便于自动化测试框架的建立。
2、自动化测试框架的搭建。
所谓自动化测试框架便是像软件架构一般,定义了在使用该套脚本时需要调用哪些文件、结构,调用的过程,以及文件结构如何划分。
而根据自动化测试用例,我们很容易能够定位出自动化测试框架的典型要素:
a、公用的对象。
不同的测试用例会有一些相同的对象被重复使用,比如窗口、按钮、页面等。这些公用的对象可被抽取出来,在编写脚本时随时调用。当这些对象的属性因为需求的变更而改变时,只需要修改该对象属性即可,而无需修改所有相关的测试脚本。
b、公用的环境。
各测试用例也会用到相同的测试环境,将该测试环境独立封装,在各个测试用例中灵活调用,也能增强脚本的可维护性。
c、公用的方法。
当测试工具没有需要的方法时,而该方法又会被经常使用,我们便需要自己编写该方法,以方便脚本的调用。
d、测试数据。
也许一个测试用例需要执行很多个测试数据,我们便可将测试数据放在一个独立的文件中,由测试脚本执行到该用例时读取数据文件,从而达到数据覆盖的目的。
在该框架中需要将这些典型要素考虑进去,在测试用例中抽取出公用的元素放入已定义的文件,设定好调用的过程。
自动化测试框架的定义为
由一个或多个自动化测试基础模块、自动化测试管理模块、自动化测试统计模块等组成的工具集合。
按框架的定义来分,自动化测试框架可以分为:基础功能测试框架、管理执行框架;按不同的测试类型来分,可以分为:功能自动化测试框架、性能自动化测试框架;按测试阶段来分,可以分为:
单元自动化测试框架、接口自动化测试框架、系统自动化测试框架;按组成结构来分,可以分为:单一自动化测试框架、综合自动化测试框架;按部署方式来分,可以分为:单机自动化测试框架、分布式自动化测试框架。
以上内容参考 百度百科-自动化测试框架;百度百科-自动化测试
python自动化测试需要学什么
掌握自动化测试技术并能灵活应对不同的测试需求,Python自动化测试学习内容:
1-1 自动化测试基础
自动化测试概述
工具介绍及安装
常用命令
1-2 自动化测试环境搭建
Appium介绍及安装
Appium Capability配置介绍
Appium界面介绍
Appium简单使用
1-3 Appium 基础运用
1-4 yaml配置文件使用
1-5 单元测试框架unittest使用
1-6 日志文件
1-7 PO模式
1-8 数据驱动
1-9 关键字驱动
1-10 Pytest测试框架
1-11 Allure测试报告及邮件
1-12 Appium服务化
1-13 Jenkins持续集成
1-14 并发拓展
想成为一名合格的APP自动化测试工程师,必须学会使用Appium,并掌握测试代码编写,封装以及框架设计开发能力。学习移动端自动化测试技术,通过常见的企业实际测试场景解锁Appium框架工具的各项技术应用,并将项目测试贯穿于整个课程当中,实战如何运用PO思想、数据驱动、关键字驱动等核心技术实现移动端自动化测试框架的设计和开发,在实践中成长为一名企业真正需要的APP自动化测试工程师!