软件测试
chde2Wang
滴水穿石
展开
-
Junit使用
RunWith注解:当类被@RunWith注解修饰,或者类继承了一个被该注解修饰的类,Junit将会使用这个注解所指明的测试运行器进行测试。如果测试代码大同小异,代码结构都是相同的,不同的只是测试的数据和预期值,那么有没有更好的方法将相同的代码结构提取出来,提高代码的重用度呢?Junit4的单元测试用例执行顺序为:@BeforeClass->@Before->@Test->@After->@AfterClass。每一个测试方法的调用顺序为:@Before->@Test->@After。原创 2023-11-03 00:07:54 · 148 阅读 · 0 评论 -
等价类划分法-案例剖析-设计测试用例
目录等价类划分法概念有效等价类和无效等价类等价类设计测试用例步骤案例1案例2案例3等价类划分法概念等价类划分法是把所有可能的输入数据,即程序的输入数据集合划分成若干个子集即等价类,然后从每个等价类中选取少量具有代表性的数据作为测试用例。有效等价类和无效等价类有效等价类:只完全满足产品规则说明的输入数据,即有效的、有意义的输入数据的集合。利用有效等价类可以检验程序是否满足规则说明所规定的功能性要求。无效等价类:不满足程序输入要求或者无效的...原创 2022-05-22 14:11:51 · 5007 阅读 · 0 评论 -
测试计划与测试方案
测试计划与测试方案主要有以下几点区别:1.测试计划是一个偏管理性质的文档,而测试方案是一个偏技术类型的文档;2.测试计划通俗来讲就是解决【谁来做?】【做什么?】的问题,而测试方案是解决【怎么做?】的问题;3.测试计划主要包含测试的目的与范围、角色与职责、资源及安排、风险与应对、测试标准等相关信息,而测试方案主要包含测试方法、测试环境与测试工具等内容。测试计划偏项目,主要内容是任务,时间,人员,设备和风险。测试方案偏技术,主要内容是需求,分析,设计,实现。...原创 2021-12-23 18:02:53 · 1505 阅读 · 0 评论 -
白盒测试-条件覆盖-短路陷阱
条件覆盖要求设计足够多的测试用例,使得每一个判定的每一个条件的每一个取值(真或假)至少各执行一次。对于示例来说,可以设计:{x=4,y=4,z=11} 条件取值:TFTF{x=2,y=6,z=9} 条件取值:FTFT{x=5,y=4,z=9}条件取值:TTFF(理解:只要将每个判定即每个菱形框里的每个条件真假都各取一次,但注意,比如TFTF时由于第二个判定里的逻辑运算符是||,那么条件y>5不执行,同理,FTFT时z<10不执行,就引出了第三条测试用例)...转载 2021-12-02 09:15:34 · 492 阅读 · 0 评论 -
手机连接电脑 不显示android phone
百度各种办法,下载各种驱动。结果,结果:竟然是在设备管理器中-右击-显示隐藏的设备类型。androidd phone显示啦。。花费了一晚上的时间。。。。原创 2021-10-26 00:50:47 · 3814 阅读 · 0 评论 -
postman-常见问题解决方案记录
1、 Response body:Containing string为中文Response body:Containing string:为中文时,转换为unicode编码,并添加转义符。2、get方式与post请求使用环境变量post方式请求,请求体中包含有环境变量,引用方法:JSON格式中,引号中添加环境变量,环境变量使用{{}}括起来。get方式请求,请求体中包含有环境变量,引用方法:在param中直接添加:3、后一个接口使用前一个返回的数据第一...原创 2021-10-06 23:07:59 · 1385 阅读 · 0 评论 -
导入与上传
数据导入(Excel):1、 下载模板(.xls)文件:将事先准备好的模板导入2、 用户根据模板填写数据;3、 用户上传数据->导入。图片上传:图片(文件)上传:一般不会把图片直接保存数据库,而是先保存文件的路径或者名称到硬盘上,再将这个名称或者路径保存到数据库。总结:上传:上传文件、图片,以文件形式放在服务器上,作为数据中转操作导入:导入tft文件、Excel文件,解析文件,放在数据库里 ,进行业务操作其实 代码实现是一致的。...原创 2021-08-28 15:28:59 · 1431 阅读 · 0 评论 -
测试用例设计思路
测试用例编写思路:首先是明确测试范围:功能测试界面测试(界面友好性、易用性、一致性)兼容性测试(不同类型、型号手机、系统(手机系统、桌面系统)、分辨率、浏览器及其版本)性能测试(页面加载时间(1万条记录)、响应时间、内存占用)安全测试(漏洞扫描、链接安全等)稳定性测试(长时间给予压力:80%内存占用)可靠性测试(断电、断网、高内存、低网速)功能模块中明确测试范围::1、划分功能模块2、正向功能验证:正常功能是否实现3、单个功能项验证:正向+异常4、功能之间原创 2021-08-27 23:09:15 · 1317 阅读 · 0 评论 -
PICT工具安装使用
1、安装PICT通过下载安装包pict33.msi,链接:https://pan.baidu.com/s/1YWIA5XLNI0MMFkiQ-EqZ9w提取码:ho7g解压安装,安装成功后验证:打开cmd命令终端,输入pict显示如下即证明安装成功。2、新建Model文档在C:\Program Files\PICT(这里是D:\PICT)目录下新建一个txt文本。把参数填入txt文本中,此文件的格式如下:<paramName>:<value1>,<.原创 2021-08-25 13:13:23 · 2733 阅读 · 0 评论 -
白盒测试-修正条件判定覆盖
当程序中的判定语句包含多个条件时,运用多条件覆盖方法进行测试,其条件取值组合数目是非常大的。修正条件判定覆盖要求在一个程序中每一种输入输出至少得出现一次,在程序中的每一个条件必须产生所有可能的输出结果至少一次,并且每一个判定中的每一个条件必须能够独立影响一个判定的输出,即在其他条件不变的前提下仅改变这个条件的值,而使判定结果改变。(条件:不含有布尔操作符号的布尔表达式。判定:由条件和零或者很多布尔操作符号所组成的一个布尔表达式)即修正条件判定覆盖首先要求实现条件覆盖、判定覆盖,在此基础上,对于每一个原创 2021-08-18 16:07:01 · 3855 阅读 · 0 评论 -
unittest-读取yaml文件
注:(1)yaml文件详解yaml是一种数据格式,类似txt,excel,json它只有两种数据类型:map对象(键值对,冒号后需要有空格)list列表对象,以-开头读取之后是一个不定长的字典形式 用不定长的参数接收**argsimport unittestfrom ddt import ddt,data,unpack,file_data@ddtclass TestApi(unittest.TestCase): # @file_data('yaml_06.ya原创 2021-08-15 10:49:47 · 676 阅读 · 0 评论 -
unittest读取ddt之-元组,嵌套元组,字典
注:(1)ddt数据驱动中,测试用例的执行次数是由@data()传参的个数决定。传几个参数,就是执行几次测试用例。(2)如果传的是多个元组(列表),那么可以使用@unpack解包元组与列表,但是需要注意的是,如果是元组和列表,元组和列表有多少个值,就必须用多少个变量来接收值。(3)如果传的是字典,那么可以使用@unpack()进行解包,但需要注意的是:用例中的参数名称和个数必须和key保持一致。import unittestfrom ddt import ddt,data,unpa.原创 2021-08-15 10:42:19 · 337 阅读 · 0 评论 -
HTMLTestRunner.py内容
HTMLTesstRunner.py 修改后内容如下:"""A TestRunner for use with the Python unit testing framework. Itgenerates a HTML report to show the result at a glance.The simplest way to use this is to invoke its main method. E.g. import unittest import HTML.原创 2021-08-14 17:30:30 · 194 阅读 · 2 评论 -
练习ddt-file_data时,报错UnboundLocalError local variable ‘value‘ referenced before assignment
错误原因就是,在xx.yml中的内容无效更改之前:更改之后:注意冒号后面要有空格改完之后运行就能正确读取到了原创 2021-08-12 23:20:12 · 168 阅读 · 0 评论 -
unittest-ddt报错AttributeError: type object ‘forTestDDT‘ has no attribute ‘test_2‘
unittest 添加多个ddt数据驱动后,报错:FAILED (errors=1)ErrorTraceback (most recent call last): File "D:\Anaconda3\lib\unittest\case.py", line 60, in testPartExecutor yield File "D:\Anaconda3\lib\unittest\case.py", line 676, in run self._callTestMethod转载 2021-08-12 22:33:42 · 994 阅读 · 0 评论 -
前端校验和后端校验区别
前台验证数据格式后台验证的是数据的正确性当下流行的系统架构方案中,前端和后端都是分离开的。目的:① 为了方便前端开发人员和后端开发人员可以同时开发;② 前后端分离也使得前后端的代码可以分开进行管理,方便了各自的版本迭代及控制。1.1前端校验就是通过前端技术,在浏览器(B/S模式中的B(browser)端)上面可以进行简单的数据检查。如果前端不进行任何的数据检查,直接把数据发送给后端,让后端来进行检查的话,那么就会带来这样的问题:太浪费网络,对于网站本身来说完全就是在浪费流..原创 2021-08-11 22:41:30 · 9272 阅读 · 1 评论 -
Postman入门到精通01
1、什么是接口?电脑:USB,投影仪 作用:数据传输软件:API(application Program Interface),微信提现和充值接口,支付宝支付,银联支付接口(鉴权码,token,key,appkey)。接口:内部接口和外部接口内部接口:开发人员开发的对自身系统提供的接口。外部接口:开发系统调用外部的:微信、支付宝等其他接口。总结:软件提供给外部的一种服务,用于做数据传输。2、软件为什么需要接口?因为接口能够让内部的数据通过外部进行修改。3、我们为什么要做.原创 2021-08-11 22:15:36 · 192 阅读 · 0 评论 -
因果图-交通一卡通自动充值软件系统-实例分析
因果图法测试用例的设计步骤(1)确定软件规格(需求)中的原因和结果(2)确定原因和结果之间的逻辑关系(3)确定因果图中的各个约束(constraints)(4)画出因果图并转换为决策表(5)根据决策表设计测试用例使用因果图分析程序第一步:确定软件规格(需求)中的原因和结果1、找出所有的原因(输入),并编号(1)投币50元(2)投币100元(3)充值50元(4)充值100元2、找出所有的结果(输出),并编号A:充值成功并退卡B:提示充值成功C:找零D:提示错原创 2021-07-31 16:37:31 · 7357 阅读 · 4 评论 -
因果图中的约束关系
E:互斥,exclude,表示abc最多只能有一个=1,即abc=000,100,010,001,只能有1个1或者全0(可不选,要选最多选一个)。I:包含,include,表示abc不能同时=0,即abc=100,010,001,110,101,011,111。abc≠000,可以包含1个1,,2个1,,3个1,但是不能全0(至少选择一个,可以多选)O:唯一,only,表示abc有且仅有1个=1,即abc=100,010,001,必须有1个1,不能全0(必选,且只能选一个)R:要求,require,表...转载 2021-07-30 23:55:22 · 3282 阅读 · 0 评论 -
linux命令
find / -name mysql 3>/dev/null原创 2021-06-22 18:31:10 · 94 阅读 · 0 评论 -
2020-11-20
ln -s /bis_data/mysql/tmp/mysql.sock /tmp/find / -name mysql.sock 2>/dev/null原创 2021-06-22 18:30:45 · 87 阅读 · 0 评论 -
webUI自动化二-获取元素信息相关方法
from selenium import webdriverfrom time import sleepdriver = webdriver.Chrome()driver.get("D:\QQFile\注册A.html")# 1获取用户输入框的大小input_text = driver.find_element_by_id("userA")print("元素大小为:",input_text.size)# 2获取页面上第一个超链接的文本内容link = driver.find_ele.原创 2021-05-19 23:20:07 · 565 阅读 · 0 评论 -
webUI自动化一元素定位
实现功能:自动在百度输入框输入test,并进行搜索from selenium import webdriverfrom time import sleepdriver = webdriver.Chrome()driver.get("http://www.baidu.com")input_text = driver.find_element_by_id("kw")print("元素大小为:",input_text.size)input_text.send_keys("test")s原创 2021-05-19 23:05:12 · 152 阅读 · 0 评论 -
搭建webUI自动化及问题解决:Message: ‘chromedriver‘ executable needs to be in PATH.解决办法
搭建webUI自动化环境1、conda install selenium即可。若出现:Message: 'chromedriver' executable needs to be in PATH.Please see https://sites.google.com/a/chromium.org/chromedriver/home。报错原因:没有配置chrome浏览器的chromedriver解决办法:1.确定自己所用chrome的版本打开chrome浏览器,在网址处输入chrome原创 2021-05-19 23:01:52 · 304 阅读 · 0 评论 -
白盒测试六种方法案例分析
1、语句覆盖2、判定覆盖3、条件覆盖4、判定/条件覆盖5、组合覆盖6、路径覆盖原创 2019-08-30 20:39:52 · 8255 阅读 · 0 评论