当前位置:首页 » 网页前端 » web测试考试题
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

web测试考试题

发布时间: 2022-11-29 06:17:05

‘壹’ web前端笔试题

1. 设置元素浮动后,该元素的 display 值是多少( A )

    A.block B. 不变 C. inline D. inline-block

2. 以下不是 canvas 的⽅方法是( D )

    A.getContext() B. fill() C. stroke() D.controller

3. 不是 input 在 html5 新的类型的是( B )

    A.datetime B. file C. color D. range

4. 对权重排序正确的是( C )

a)  .list .box p

b)  #list .box div span

c)  .list span

d)  #list #box

e)  p:last-child

f)  style

A.f>d>b>a>c>e

C. f>d>b>a>c=e

B. f>d>b>a>e>c

D. f>b>d>a>c=e

5.对 document load 和 document ready 描述正确的是( B )

    A.$(document).ready()是当页⾯所有资源全部加载完成后,执

    ⾏⼀个函数

    B.如果图⽚资源较多加载时间较长,onload 后等待执⾏的函数

    需要等待较长时间,所以⼀些效果可能受到影响

    C.onload 是当 DOM ⽂档树加载完成后执⾏⼀个函数

    D.⼀般来说 load 会比$(document).ready()较快执⾏

6.["1", "2", "3"].map(parseInt) 答案是多少( A )

    A.[1, NaN, NaN]            B. [1, 2, NaN]

    C.[NaN, NaN, NaN]      D. [1, NaN]

7.以下对 Ajax 描述不正确的是( A )

    A.readyState 属性请求的状态,当值为 3 时是正在加载

    B.使用 XML 和 XSLT 进⾏行数据交换及相关操作

    C.总共有 8 种 callback

    D.abort()⽅法,停⽌当前请求

8.var temp=null,alert(typeof temp)弹出的结果是( B )

    A.Null     B. Object     C. Undefined     D. String

1. 对XMLHttpRequest对象的open⽅方法描述错误的是(BCD)

    A.在 IE 上使⽤的是 XMLHttpRequest 对象是 ActiveXObject

    B.在 Firefox 上使用的是 XMLHttpRequest 对象是ActiveXObject

    C.XMLHttpRequest 对象只能发送 get 请求

    D.XMLHttpRequest 对象只能发送 post 请求

2. 以下哪些是 javascript 的全局函数(ABC)

    A.parseFloat     B. eval     C. setTimeout     D. alert

3. 对 http 相关内容描述正确的是(BCD)

    A.301 状态码是临时重定向

    B.get ⽅方式只能⽀支持 ASCII 字符

    C.get 在从服务器上获取资源,post 重点在向服务器发送数据

    D.HTTPS 就是 HTTP 加上加密处理理

4. 以下结果正确的是(CD)

    A.typeof undefined= undefined 和 typeof null=null

    B.typeof “hello”==string typeof 0==Boolean

    C.typeof [1,2,3]=object typeof NaN=undefined

    D.typeof {name:“李华”,age:“23”}=object

5. 以下结果正确的是(AB)

    A.zepto.js 适合移动端的开发,jQuery 适合 PC 端的开发

    B.zepto.js 不支持 ie 浏览器器

    C.vue 属于 mvc 框架

    D.v-bind 实现双向绑定

6. 对 sass 描述错误的是(BD)

    A.sass 和 scss 其实是同⼀一种东⻄,都称之为 Sass

    B.sass 可以声明变量符号为&

    C.sass 最终都将转换成 css ⽂件才被引⽤

    D. sass 不可以扩展和继承

1. ⽗级⾼宽固定,子级⽔平垂直居中怎么实现(请用 2 种 flex ⽅

法实现)?

2. 写出⼀个简单的$.ajax()的请求方式?

3. 假如移动端设备的尺寸是320px要实现每1rem=16px怎么实

现?

4.使用 Javascript 打印出 1-10000 之间的所有对称数(例如 121

1331 等)

5. angular 框架之间的通信⽅式是什么,⾄少列出三种?

6. vue 的⽣命周期有⼏个阶段,简单说说它们的作用?

‘贰’ 计算机二级WEB考试主要考哪些内容

二级WEB程序设计考试大纲
基本要求

1. 掌握Web工作原理,了解Web技术基础知识,熟悉IIS的管理;

2. 掌握静态网页设计技术,熟练掌握网页的HTML代码编写;

3. 熟练掌握一种脚本语言(VBScript或JavaScript)的编程方法,具有较强的客户端动态设计的能力;

4. 熟练掌握ASP工作原理和ASP编程方法,具有较强的服务器端动态设计的能力;

5. 熟悉数据库的操作和SQL语言的运用,熟练掌握ADO工作原理,熟练运用ADO进行数据库的管理;

6. 基本具有小型Web应用系统的综合设计能力。

考试范围

一、Web技术基础

1. Web工作原理:WWW概念和标准、W3C、Web客户端和Web浏览器、Web服务器端和Web服务器;

2. TCP/IP协议、IP地址和域名服务;

3. HTTP和URL: HTTP工作过程、HTTP Request、HTTP Response,URL;

4. IIS的安装、配置和管理;

5. 站点的规划、设计、发布和管理。

二、静态网页设计

1.静态网页开发技术:页面设计原则、可视化页面设计工具(FrontPage或DreamWeaver)的运用;

2.HTML代码:HTML基本语法、HTML常用标签;

3.XML、DHTML、XHTML。

三、脚本语言和程序设计(脚本语言任选一种)

1.VBScript:VBScript语法、VBScript数据类型、变量、常

量、数组、运算符、表达式、内部函数、程序控制结构、Sub过程、Function函数,VBScript嵌入HTML;

2.JavaScript:JavaScript语法、JavaScript数据类型及类

型转换、变量、数组、操作符、表达式、函数、程序控制结构,JavaScript事件;JavaScript内置对象,对象层次及DOM模型,JavaScript嵌入HTML;

四、服务器端动态设计

1.ASP工作原理;

2. ASP编程:ASP文件的建立与运行,Response对象、Request

对象、Session对象、Application对象、Server对象、使用Form集合、使用QueryString集合、使用Cookies集合、使用Clinet Certificate集合、文件存取组件FileSystemObject、 a文件;

3.CGI、PHP、JSP的工作原理。

五、Web数据库应用

1.Access数据库和SQL Server数据库的应用:数据库的建

立、数据表的建立、数据的输入、修改、查询和删除等操作;

2.SQL语言的应用:Select语句查询记录、Insert语句插入

记录、Update语句修改记录、Delete语句删除记录;

3.ODBC数据源的配置与管理:ODBC的概念、ODBC驱动程序、

ODBC数据源的建立、ODBC数据源的配置与管理;

4.ADO访问数据库:ADO工作原理,与ACCESS数据库的连接、

与SQL Server数据库的连接,ADO的Connection对象、ADO的Recordset对象、ADO的Command对象;

5.小型Web应用系统的综合设计。

‘叁’ 腾讯WEB前端笔试题和面试题答案

如下分享是一份完整的腾讯WEB前端笔试题,大家有空可以练一练!
一、耐心填一填!(每空4分,共24分)

1. 为span设置类a与b,应编写HTML代码_

_

_________。

2. 设置CSS属性clear的值为_both___________时可清除左右两边浮动。

3. ____li________标签必须直接嵌套于ul、ol中。

4. CSS属性_____margin_______可为元素设置外补丁。

5. 设置CSS属性float的值为___none_________时可取消元素的浮动。

6. 文字居中的CSS代码是____text-align:center________。

二、精心选一选!(每题4分,共16分)

1. 下列哪个样式定义后,内联(非块状)元素可以定义宽度和高度( C )

A. display:inline B. display:none C. display:block D. display:inheric

2. 选出你认为最合理的定义标题的方法( C )

A. 文章标题

B.

文章标题

C.

文章标题

D. 文章标题

3. br标签在XHTML中语义为( A )

A.换行 B.强调 C.段落 D.标题

4. 不换行必须设置( AC )

A.word-break B.letter-spacing C.white-space D.word-spacing

5. 在使用table表现数据时,有时候表现出来的会比自己实际设置的宽度要宽,为此需要设置下面哪些

属性值( AD )

A. cellpadding=”0″ B. padding:0 C. margin:0 D. cellspacing=”0″

三、判断对或错!(每题4分,共24分)

1. CSS属性font-style 用于设置字体的粗细。 ( × )

2. CSS属性overflow用于设置元素超过宽度时是否隐藏或显示滚动条。 ( √ )

3. 在不涉及样式情况下,页面元素的优先显示与结构摆放顺序无关。 ( × )

4. 在不涉及样式情况下,页面元素的优先显示与标签选用无关。 ( √ )

5. display:inline兼容所有的浏览器。 ( √ )

6. input属于窗体元素,层级显示比flash、其它元素都高。 ( × ) 1 2

‘肆’ java web 应用开发测试题

在开发Java Web应用程序的时候,HTTP请求消息使用Get或POET方法以便在WEB上传输数据

‘伍’ 软件测试面试题:基于WEB信息管理系统测试时应考虑的因素有哪些.

界面设计、界面易用性、功能、规范性、合理性、美观与协调性、菜单设置、独特性、快捷方式的组合、容错性考虑、多窗口的应用与系统资源。
易用性细则:
1):完成相同或相近功能的按钮用Frame框起来,常用按钮要支持快捷方式。
2):完成同一功能或任务的元素放在集中位置,减少鼠标移动的距离。
3):按功能将界面划分局域块,用Frame框括起来,并要有功能说明或标题。
4):界面要支持键盘自动浏览按钮功能,即按Tab键的自动切换功能。
5):界面上首先应输入的和重要信息的控件在Tab顺序中应当*前,位置也应放在窗口上较醒目的位置。
6):同一界面上的控件数最好不要超过10个,多于10个时可以考虑使用分页界面显示。
7):分页界面要支持在页面间的快捷切换,常用组合快捷键Ctrl+Tab
8):默认按钮要支持Enter及选操作,即按Enter后自动执行默认按钮对应操作。
9):可写控件检测到非法输入后应给出说明并能自动获得焦点。
10):Tab键的顺序与控件排列顺序要一直,目前流行总体从上到下,同时行间从左到右的方式。
11):复选框和选项框按选择几率的高底而先后排列。
12):复选框和选项框要有默认选项,并支持Tab选择。
13):选项数相同时多用选项框而不用下拉列表框。
14):界面空间较小时使用下拉框而不用选项框。
15):选项数叫少时使用选项框,相反使用下拉列表框。
16):专业性强的软件要使用相关的专业术语,通用性界面则提倡使用通用性词眼。

‘陆’ 2020年计算机二级Web考试每日一练(6月16日)

备考全国计算机二级Web考试的小伙伴们,复习的都怎么样了呢?环球青藤小编发布了2020年计算机二级Web考试每日一练供大家参考复习,小伙伴们快来做一做,测试一下自己吧!了解更多全国计算机二级Web备考资料敬请关注环球青藤计算机二级频道。
2020年计算机二级Web考试每日一练(6月16日)
1、request对象可以使用( A)方法获取表单中某输入框提交的信息。
A、getParameter(String s)
B、getValue(String s)
C、getParameterNames(String s)
D、getParameterValue(String s)
2、JSP的内置对象中(A )对象可对客户的请求作出报考响应,向客户端发送数据。
A、response
B、request
C、application
D、out
3、从( )开始,到(A )结束,被称为一个会话。
A、访问者连接到服务器,访问者关闭浏览器离开该服务器
B、服务器启动,服务器关闭
C、访问者连接到服务器,服务器关闭
D、服务器启动,访问者关闭浏览器离开该服务器
4、下列代码编译后不会出现警告或错误的是 ( D )。
A、char c = "a";
B、byte b = 255;
C、float c = 10.0;
D、double d = 1.0f;
5、下边哪个不是FORM的元素?(D)
A、Input
B、textarea
C、select
D、table
更多2020年计算机二级Web考试每日一练试题,请继续关注环球青藤计算机二级频道。需要及时了解考试动态的小伙伴可“ 免费预约短信提醒”届时环球青藤会及时为大家推送2020年计算机二级考试相关信息提醒。环球青藤友情提示:对于想要参加计算机二级考试的小伙伴们,环球青藤特地为您准备了计算机二级考试资料,如有需要请点击文章下方“免费下载>>>计算机二级考试资料”下载学习。

‘柒’ 经典的 Web 前端或者 JavaScript 面试笔试题有哪些

一、不定项选择题 (每题3分,共30分)
1. 声明一个对象,给它加上name属性和show方法显示其name值,以下代码中正确的是( D )
A. var obj = [name:"zhangsan",show:function(){alert(name);}];
B. var obj = {name:”zhangsan”,show:”alert(this.name)”};
C. var obj = {name:”zhangsan”,show:function(){alert(name);}};
D. var obj = {name:”zhangsan”,show:function(){alert(this.name);}};
2. 以下关于Array数组对象的说法不正确的是( CD )
A. 对数组里数据的排序可以用sort函数,如果排序效果非预期,可以给sort函数加一个排序函数的参数
B. reverse用于对数组数据的倒序排列
C. 向数组的最后位置加一个新元素,可以用pop方法
D. unshift方法用于向数组删除第一个元素
3. 要将页面的状态栏中显示“已经选中该文本框”,下列JavaScript语句正确的是( A )
A. window.status=”已经选中该文本框”
B. document.status=”已经选中该文本框”
C. window.screen=”已经选中该文本框”
D. document.screen=”已经选中该文本框”
4. 点击页面的按钮,使之打开一个新窗口,加载一个网页,以下JavaScript代码中可行的是( AD )
A. <input type=”button” value=”new”
onclick=”open(‘new.html’, ‘_blank’)”/>
B. <input type=”button” value=”new”
onclick=”window.location=’new.html’;”/>
C. <input type=”button” value=”new”
onclick=”location.assign(‘new.html’);”/>
D. <form target=”_blank”action=”new.html”>
<inputtype=”submit” value=”new”/>
</form>
5. 使用JavaScript向网页中输出<h1>hello</h1>,以下代码中可行的是( BD )
A. <scripttype=”text/javascript”>
document.write(<h1>hello</h1>);
</script>
B. <scripttype=”text/javascript”>
document.write(“<h1>hello</h1>”);
</script>
C. <scripttype=”text/javascript”>
<h1>hello</h1>
</script>
D. <h1>
<scripttype=”text/javascript”>
document.write(“hello”);
</script>
</h1>
6. 分析下面的代码:
<html>
<head>
<script type=”text/javascript”>
function writeIt (value) { document.myfm.first_text.value=value;}
</script>
</head>
<body bgcolor=”#ffffff”>
<form name=”myfm”>
<input type=”text” name=”first_text”>
<input type=”text” name=”second_text”>
</form>
</body>
</html>
以下说法中正确的是( CD )
A. 在页面的第二个文本框中输入内容后,当鼠标离开第二个文本框时,第一个文本框的内容不变
B. 在页面的第一个文本框中输入内容后,当鼠标离开第一个文本框时,将在第二个文本框中复制第一个文本框的内容
C. 在页面的第二个文本框中输入内容后,当鼠标离开第二个文本框时,将在第一个文本框中复制第二个文本框的内容
D. 在页面的第一个文本框中输入内容后,当鼠标离开第一个文本框时,第二个文本框的内容不变
7. 下面的JavaScript语句中,( D )实现检索当前页面中的表单元素中的所有文本框,并将它们全部清空
A. for(vari=0;i< form1.elements.length;i++) {
if(form1.elements.type==”text”)
form1.elements.value=”";}
B. for(vari=0;i<document.forms.length;i++) {
if(forms[0].elements.type==”text”)
forms[0].elements.value=”";
}
C. if(document.form.elements.type==”text”)
form.elements.value=”";
D. for(vari=0;i<document.forms.length; i++){
for(var j=0;j<document.forms.elements.length; j++){
if(document.forms.elements[j].type==”text”)
document.forms.elements[j].value=”";
}
}
8. 在表单(form1)中有一个文本框元素(fname),用于输入电话号码,格式如:010-82668155,要求前3位是010,紧接一个“-”,后面是8位数字。要求在提交表单时,根据上述条件验证该文本框中输入内容的有效性,下列语句中,( A )能正确实现以上功能
A. var str= form1.fname.value;
if(str.substr(0,4)!=”010-”|| str.substr(4).length!=8 ||
isNaN(parseFloat(str.substr(4))))
alert(“无效的电话号码!”);
B. var str= form1.fname.value;
if(str.substr(0,4)!=”010-” && str.substr(4).length!=8 &&
isNaN(parseFloat(str.substr(4))))
alert(“无效的电话号码!”);
C. var str= form1.fname.value;
if(str.substr(0,3)!=”010-”|| str.substr(3).length!=8 ||
isNaN(parseFloat(str.substr(3))))
alert(“无效的电话号码!”);
D. var str= form1.fname.value;
if(str.substr(0,4)!=”010-”&& str.substr(4).length!=8 &&
!isNaN(parseFloat(str.substr(4))))
alert(“无效的电话号码!”);
9. 关于正则表达式声明6位数字的邮编,以下代码正确的是( C )
A. var reg = /\d6/;
B. var reg = \d{6}\;
C. var reg = /\d{6}/;
D. var reg = new RegExp(“\d{6}”);
10. 关于JavaScript里的xml处理,以下说明正确的是( BCD )
A. Xml是种可扩展标记语言,格式更规范,是作为未来html的替代
B. Xml一般用于传输和存储数据,是对html的补充,两者的目的不同
C. 在JavaScript里解析和处理xml数据时,因为浏览器的不同,其做法也不同
D. 在IE浏览器里处理xml,首先需要创建ActiveXObject对象
二、问答题
1. 列举浏览器对象模型BOM里常用的至少4个对象,并列举window对象的常用方法至少5个 (10分)
对象:Window document location screen history navigator
方法:Alert() confirm() prompt() open() close()
2. 简述列举文档对象模型DOM里document的常用的查找访问节点的方法并做简单说明 (10分)
Document.getElementById 根据元素id查找元素
Document.getElementByName 根据元素name查找元素
Document.getElementTagName 根据指定的元素名查找元素
三、程序题
1、补充按钮事件的函数,确认用户是否退出当前页面,确认之后关闭窗口; (10分)
<html>
<head>
<script type=”text/javascript” >
function closeWin(){
//在此处添加代码
if(confirm(“确定要退出吗?”)){
window.close();
}
}
</script>
</head>
<body>
<input type=”button”value=”关闭窗口”onclick=”closeWin()”/>
</body>
</html>
2、写出简单描述html标签(不带属性的开始标签和结束标签)的正则表达式,并将以下字符串中的html标签去除掉(15分)
var str = “<div>这里是div<p>里面的段落</p></div>”;
//
<scripttype=”text/javascript”>
varreg = /<\/?\w+\/?>/gi;
varstr = “<div>这里是div<p>里面的段落</p></div>”;
alert(str.replace(reg,”"));
</script>
3、完成foo()函数的内容,要求能够弹出对话框提示当前选中的是第几个单选框。(10分)
<html>
<head>
<metahttp-equiv=”Content-Type” content=”text/html;charset=utf-8″ />
</head>
<body>
<script type=”text/javascript” >
function foo() {
//在此处添加代码
var rdo =document.form1.radioGroup;
for(var i =0 ;i<rdo.length;i++){
if(rdo.checked){
alert(“您选择的是第”+(i+1)+”个单选框”);
}
}
}
</script>
<body>
<form name=”form1″ >
<input type=”radio” name=”radioGroup”/>
<input type=”radio” name=”radioGroup”/>
<input type=”radio” name=”radioGroup”/>
<input type=”radio” name=”radioGroup”/>
<input type=”submit”/>
</form>
</body>
</html>
4、完成函数showImg(),要求能够动态根据下拉列表的选项变化,更新图片的显示 (15分)
<body>
<script type=”text/javascript” >
function showImg (oSel) {
//在此处添加代码
var str = oSel.value;
document.getElementById(“pic”).src= str+”.jpg”;
}
</script>
<img id=”pic”src=”img1.jpg”width=”200″ height=”200″ />
<br />
<select id=”sel”>
<option value=”img1“>城市生活</option>
<option value=”img2“>都市早报</option>
<option value=”img3“>青山绿水</option>
</select></body>

‘捌’ 软件测试面试题:WEB+网络|接口测试|性能测试|自动化测试


1. http代码表,常考题目

404:找不到资源

500:服务器内部错误,无法完成请求。

501:服务器不支持请求的功能,无法完成请求。

502:充当网关或代理的服务器,从远端服务器接收到了一个无效的请求。

301:永久移动。请求的资源已被永久的移动到新URI,返回信息会包括新的URI,浏览器会自动定向到新URI,今后任何新的请求都应使用新的URI代替。

302:临时移动。与301类似。但资源只是临时被移动,客户端应继续使用原有URI。

200:成功。

2. TCP/IP四层网络模型

链路层、网络层、传输层、应用层。

3. TCP/UDP区别?

TCP: 可靠传输协议,需要三次握手连接,有确认重传机制,特点是可靠、准确、有拥塞控制,缺点就是比较慢,传输量比较小,适用于升级、下载;一句话:TCP是可靠的传输。

UDP: 不可靠传输协议,面向非连接的协议,优点是传输量大、速度快,缺点是已丢失、没有拥塞控制,适用于直播、视频等。一句话:UDP是不可靠的传输。

4. html css js运行的先后顺序是什么?

界面加载的时候先加载html在加载css最后加载js

5. session和cookie的区别是什么

1. session存放在服务器端用来校验客户端的身份

2. cookie存放在客户端,每次从客户端往服务器发请求时,将cookie带到服务器端,用来校验客户端的身份



1. 怎么用JMeter测试接口?

如果使用JMeter进行接口测试:

1) 测试前了解需求,根据接口规格说明书梳理业务;

2) 接下来设计用例,分析接口的入参和出参,分清楚有哪些有效输入和无效输入,设计用例(原则:用最少的用例覆盖所有有效输入,针对每一个无效的输入设计一个测试用例,如果有错误码没有覆盖到,还要对每个未覆盖的错误码分别设计一个用例);

3) 准备测试数据,比如:测试所需的账号、密码、key 等信息;

4) 打开JMeter,创建一个线程组,根据接口类型,填写好对应的接口地址和请求方式等;

5) 参数化配置,添加配置元件CSV Data Set Config,定义变量,并准备CSV格式的数据,变量的引用用${变量名}的格式;

6) 添加断言来判断测试结果的正确性,用得最多的是响应断言;

7) 添加监听器,比如查看结果树,对测试结果进行监听;

8) 运行测试用例;

9) 查看监听器结果,来判断用例的执行是成功还是失败,针对失败的用例,分析其失败原因;

10) 针对测试中发现的问题,给开发提单,直到问题最终解决。

11) 最后输出测试报告。

2. 怎么用Postman测试接口?

如果使用Postman测试接口:

其中1,2,3点相同,工具使用方面则比JMeter跟简单,工具的主要的步骤是添加对应的请求、填写主机URL及入参、添加测试套、运行测试套、分析结果出报告。

3. 在JMeter上如何把上一个请求的结果作为下一个请求的参数?

使用正则表达式提取器提取上一个请求的响应中的信息,保存一个引用名称比如abc,在下一个请求的参数中,用${abc}的格式来引用提取的结果。

常用的正则表达式格式:(.+?),其中.表示匹配任意字符串,+表示只匹配一次,?表示匹配到就停下来。



一般是我们功能测试完成最后两三天时间测试性能。

1、先是分析需求计算出并发数,TPS,响应时间和 CPU,内存,硬盘和网络IO这些指标。

2、制定测试方案,主要包括环境,计划和具体测试那些场景(如可靠性,并发,负载,压力测试等)

3、根据场景用Badboy录制脚本,导出为JMeter工具支持的脚本。

4、用JMeter工具打开脚本,进行脚本调试,加一些断言,监听器,参数化等。

5、接下来执行性能测试,然后主要收集监听器和收集服务器CPU,内存,硬盘和网络IO等分析是否满足需求,如果满足就输出性能测试报告。

6、如果指标不能满足,反馈给开发进行调优。调优后继续测试,一直到满足需求后最终输出测试报告。



1. Python怎么定义一个函数?

你可以定义一个由自己想要功能的函数,以下是简单的规则:

1) 函数代码块以def关键词开头,后接函数标识符名称和圆括号()。

2) 任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。

3) 函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。

4) 函数内容以冒号起始,并且缩进

5) return[表达式]结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回None


2 Python切片

3. Python上用过什么库/模块?

webdriver:定位和操作元素

time:设置等待时间

ActionChains:动作链,完成鼠标的相关操作

Keys:键盘的相关操作

WebDriverWait:设置显式等待

Expect_Conditions:针对单个元素,设置显式等待的场景

PIL:截图

Select:下拉选择框的操作

unittest python:自带的单元测试框架

HTMLTestRunner:运行脚本,生成报告

ddt:实现数据驱动测试,行为和数据分离

4. 你做过自动化测试吗?

我在上一份工作中,公司去年下半年也开始规划做Web 自动化,采用Python作为开发语言,通过Selenium WebDriver定位和操作页面元素,自动化框架用的是unittest。我主要负责写测试脚本。

假设一个测试团队有5个人:1资深(测试经理)+2~3个中级(自动化+手动)+1 个初级(手动)

5. 使用什么工具进行的自动化测试

使用的工具是Selenium(Web自动化工具)

6. 用的什么编程语言

用的Python

7. Selenium 用的是哪个版本的的?Python用的是哪个版本的?

用的是selenium 3.11.0和Python2.7.10

8. Selenium的工作原理?

1)对html元素定位

2)模拟对第一步定位到的元素进行点击、输入、选择等操作一句话:定位元素,操作元素。

9. 元素定位方法有哪些?

要点:8种定位方法

1) 根据元素的属性值定位,比如 id、name、class、标签名、链接文字和部分链接文字;

2) 根据CSS选择器定位;

3) 根据 XPath 定位;

10. 子页面里的元素怎么定位?

先切换到框架里,然后再定位,用switch_to_frame函数根据子页面id或name,切换到子页面;定位完了如果要再定位主页面的元素,要用switch_to_default_content 函数先返回主页面。

11. 怎么定位alert弹窗?或者这样问:怎么处理JS原生窗口?

要点:主要涉及点击弹窗确认按钮、强行关闭弹窗、获取弹窗中的文字等操作。

1) 点击弹窗的确定按钮,用如下函数:

driver.switch_to_alert().accept()

2) 强行关闭,点击右上角的叉叉,用如下函数:

driver.switch_to_alert().dismiss()

3) 获取弹窗里的文字,用如下函数:

driver.switch_to_alert().text

12. 怎么运行自动化用例并生成测试报告?

以unittest为例,我通常的做法是把用例加载到测试套中,做成一个脚本,在命令窗口下运行脚本,报告的生成用第三方模块HTML TestRunner来生成。

13. 怎么定位/操作图片中的验证码?

用tesseract OCR引擎处理图片中的验证码,步骤:

(1)对整个屏幕截屏,保存成png格式的图片;

(2)在截取的图片中定位验证码图片的位置坐标;

(3)根据坐标对验证码截图;

(4)在图片中提取验证码,输入到输入框。

‘玖’ 基于Web的系统测试主要包括哪些方面 考试题目噻 求解答了

配置测试用于测试和验证软件,在不同的软件和硬件配置中进行运行。配置测试就是测试软件是否和系统的其他与之交互的元素之间兼容,如浏览器、操作系统、硬件等,验证被测软件在不同的软件和硬件配置中的运行情况。
基于Web的系统测试是配置测试的一部分。
服务器端配置测试:如果允许对服务器端进行配置,那么就进行服务器端配置。目的是保证服务器端的计划配置能正确无误地支持Web应用;
客户端配置测试:保证客户端兼容主流的操作系统和浏览器软件等。
基于Web的系统测试主要包括以下方面:
Web应用完全与服务器操作系统兼容吗?
当Web应用运行时,系统文件、目录、相关的系统数据会被正确创建吗?
系统安全措施允许Web应用执行,对用户的服务没有受到干扰或造成性能下降吗?
Web应用能与数据库软件集成吗?Web应用对不同版本的数据库软件敏感吗?
系统管理员的错误对Web应用的影响被测试了吗?
Web应用是否可以运行于不同的操作系统?(Linux操作系统、Windows等)
Web应用在同一操作系统平台的不同版本可以运行吗?
Web应用在市场上主流的浏览器软件是否可以正常运行?(如Firefox、Chrome 、IE8 、Google)