第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > 软件测试工程师测试用例及常用工具(总结中)

软件测试工程师测试用例及常用工具(总结中)

时间:2020-04-08 00:33:52

相关推荐

软件测试工程师测试用例及常用工具(总结中)

一些常识

统一资源定位符(URL):协议+服务器主机地址+:端口+/路径+?参数(键=值&键=值)

B/S结构(Browser/Server,浏览器/服务器模式)

C/S : Client/Server , 客户端/服务器

一些笔试题:

1、B/S和C/S的区别:

C/S建立在专用网络上,通过专门服务器服务;B/S建立在广域网络上,不必有网络硬件环境

C/S一般面向固定的用户群,对信息安全的控制能力很强;B/S面向不可知的用户群,对安全的控制能力相对弱

B/S和C/S架构的区别:

a、建立基础不同

C/S局域网,B/S广域网

b、硬件环境不同

C/S建立在专用网络,局域网之间通过专门的服务器提供连接

B/S建立在广域网,不需要专门的网络硬件环境

c、对安全的要求不同

C/S面向固定用户群,信息安全控制能力强

B/S面向不可知用户,信息安全控制能力弱

d、对程序架构不同

C/S注重流程,对权限多层校验,影响系统运行速度

B/S同时考虑安全以及访问速度,建立在需要更加优化的基础上

e、软件重用不同

C/S需要考虑整体性,重用性相对差

B/S多重结构,重用性好

f、系统维护不同

C/S整体考察,处理出现的问题以及系统升级

B/S 构件组成,方面构件个别的更换,实现系统的无缝升级

g、处理问题不同

C/S 程序可以处理用户面固定

B/S 建立在广域网上, 面向不同的用户群, 分散地域

h、用户接口不同

C/S 多是建立的Window平台上,表现方法有限

B/S 建立在浏览器上,还可应用于unix/Linux等平台

i、信息流不同

C/S 程序一般是典型的中央集权的机械式处理, 交互性相对低

B/S 信息流向可变化,类似交易中心

2、mysql中order by的使用

用于根据指定的列对结果集进行排序,gropu by用于分组

3、五种常用黑盒测试测试用例设计方法:

等价类划分:将输入划分为多个等价类,测试时只需要从每个类中选取少数代表数据即可

因果图法:针对等价划分的多类数据控制变量的组合,判断错误

边界值分析法:测试合法值边界和非合法值边界

猜错法:根据错误的规律性推断缺陷可能存在的地方

随机数法:自动生成大量随机数

4、测试分为哪几个阶段:

1、单元测试

2、集成测试

3、系统测试

4、验收测试:alpha测试(开发测试)和beta测试(脱离开发环境后的用户测试)

5、白盒测试的测试方法有:

代码检查法、程序变异、静态结构分析法、静态质量度量法、符号测试法、逻辑覆盖法、域测试、Z路径覆盖和基本路径测试法。

6、对测试的理解,测试用例的设计思路

就是利用测试工具按照测试方案和流程对产品进行功能和性能测试,甚至根据需要编写不同的测试工具,设计和维护测试系统,对测试方案可能出现的问题进行分析和评估。执行测试用例后,需要跟踪故障,以确保开发的产品适合需求。

7、数据库事物的四大特征

原子性、一致性、隔离性、持久性

8、如何给数据库添加主键

alter table 表名 add primary key(字段列表)

9、get和post的区别

get是从服务器上获取数据,post是向服务器传送数据。

get安全性非常低,post安全性较高。 因为参数直接暴露在URL上

GET请求只能进行url编码,get传送的数据量较小,而POST支持多种编码方式

10、面对随意举例的测试物品常从以下几个方面回答:

目测外观

功能测试

性能测试

安全测试

兼容测试

实用性测试

软件测试实例

一、单元测试:给定一个字符串,判断是否是ip地址

1、确认ip的格式:(1-255).(0-255).(0-255).(0-255)

2、判断ip是否为空

3、检查ip长度:最短(x.x.x.x)7位,最长(xxx.xxx.xxx.xxx)15位

4、输入字符首末尾字符判断:只能是数字

5、按’.'分割字符串:确认分割出来是4个

6、对分割后的字符单独判断

6.1、每位字符都不是单个,且以0开头非法

6.2、每位字符不是0-9、非法

二、web测试:简单用户登录过程

1、功能测试:

1、正确输入用户名和密码-点击提交-正确登录

2、输入错误用户名和密码-点击提交-提示相应错误

3、空白账号和密码登录-提示相应信息

3、输入未注册的用户名和任意的密码,提示对应信息

4、登录成功后页面跳转严重

5、用户名和密码长短、加载特殊字符严重(尤其是空格)

6、用户名和密码前后有空格验证

7、记住用户名和记住密码验证(注意登录失败后密码不会保存)

8、(如有验证码)验证码文字识别难度验证

8.1、刷新页面是否会刷新验证码

8.2、验证时效内和时效外验证码的有效性

9、页面:注册、忘记密码和其他功能正常跳转验证

10、输入密码时:大写键盘开启提示信息

2、界面测试

1、页面布局合理,按钮和testbox整齐

2、界面设计与需求文档一致,无错别字和丢失字段

3、性能测试

1、打开登录页面,响应时间验证

2、输入正确用户名和密码后,跳转响应时间验证

3、模拟大量用户同时登入,检测压力下是否正常登录跳转

4、安全性测试

1、登录成功后生成的Cookie是否是HttpOnly(安全)

2、验证用户名和密码是否通过加密的方式发送到web服务器

3、用户名和密码的验证应该用服务端验证,而不仅仅在客户端用javascrip验证

4、用户名和密码框防止SQL注入

5、用户名和密码框禁止输入脚本(防止XSS跨站脚本攻击)

6、防止暴力破解:检测是否有登入错误次数

7、检测一号多机器登入

8、检测一机器多号登入

9、不登陆的时候直接在浏览框中输入登录界面后的url地址,是否会重新定位到登陆界面

5、兼容性测试

1、不同浏览器

2、不同浏览器的不同版本

3、不同的平台(linux和mac)

4、移动设备

5、不同分辨率

6、可用性测试

1、是否支持全键盘操作,快捷键

2、回车键是否支持登录

3、tab键支持切换

4、密码输入框是否不支持复制粘贴

5、输入的密码是否可以在页面源码模式下被查看

7、本地化测试

1、不同语言环境下页面显示是否正常

8、弱网测试

1、网络切换和网络延迟时登陆界面是否正常

普通界面测试用例涉及:

1、文本框合法性校验:正常输入、特殊字符、复制粘贴、超长字符

2、事件触发:按钮功能、点击其他页面是否可以关闭

3、下拉框校验:下拉数据来源展示、下拉单选/多选校验、

4、显示校验:默认显示、功能按钮等正常显示、页面布局

5、分页功能校验:空、大量数据、页面跳转、

6、按钮功能校验:正确、错误

7、必填项校验:控制变量

涉及到的软件

一、移动端ADB

adb for windows:/android/repository/platform-tools-latest-windows.zip

安装:/article/143231.htm

常用命令:/p/7434fdad4768

二、Fiddler抓包工具

教程:/p/a6038fdb309b

总结:

Fiddler原理:通过改写HTTP代理,监控并截取通过的数据

HTTPS:是基于HTTP协议,通过SSL和TLS提供加密处理数据、验证对方身份以及保护数据完整性

Host:网络服务器

使用:1、保证Capture Traffick开启

2、Statistics:请求的性能数据分析

Inspectors:查看数据内容

AutoResponder:允许拦截制定规则的请求

Composer:自定义请求发送服务器

Filters:请求过滤规则

命令:1、匹配包含字符串的请求:?+字符串

2、匹配请求大小:>Body;=Result

3、匹配域名:@+Host

4、匹配Content-Type:select+Content-Type

5、清屏:cls

6、请求打包:dumpAll

7、监听请求:start/stop+All

三、JMeter(压力测试)

安装教程:要先安装java环境:/lxclxc/p/10756842.html

四、DBeaver

1、配置方法:

服务器地址:DATABASE_MASTER_URL=

数据库:DATABASE_USERNAME=activity_zt_2345

用户名:DATABASE_USERNAME=activity_zt_2345

密码:DATABASE_PASSWORD=

2、使用

增:insert into 表名 (字段)values(内容);#两个括号都要

新增字段:ALTER table 表名 add 字段 bigint(20) ;

删:delete from 表名 where 字段=条件

删除字段:ALTER table 表名 drop 字段

改:update 表名 set 字段=更改的内容 where id=条件

修改字段:ALTER table 表名 modify字段+约束

查:select * from 表名 where 字段=‘条件’

按两个表匹配字段查找:select * from 表1 inner join 表2 on 表1.字段=表2.字段;

select 表1., 表2.from 表1,表2 where 表1.条件=表2.条件;

例:#INSERT into hbtt_report_history (passid,uid ) values (1000,10001);

#DELETE FROM hbtt_report_history where id=3;

#UPDATE hbtt_report_history set uid = 4 where id=2;

#SELECT * FROM hbtt_report_history where monitor_channel = ‘UMENG_CHANNEL_VALUE’;

五、接口测试工具postman

下载:/downloads/

教程:

/cocomoly/p/11725219.html

数据请求body中选项:

from-data:混合表单,支持上传文件;

x-www-from-urlencoded:文本表单

raw:原始格式,支持JSON/XML格式

binary:二进制格式

GET把参数包含在URL中,POST通过request body传递参数

六、其他常用工具

1、/

2、在线工具:https://tool.lu/timestamp/

七、kafka

kafka是分布式发布-订阅消息系统。是一个分布式,可划分的,冗余备份的持久性的日志服务,它主要用于处理流式数据。

1、broker:消息代理,Producers往broker写消息,Consumers从broker中拉取指定topic消息。

2、zookeeper:

八、selenium项目实战

// A code blockvar foo = 'bar';

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。