测试用例

【巨杉数据库SequoiaDB】巨杉数据库无人值守智能自动化测试实践

让人想犯罪 __ 提交于 2020-02-04 11:55:33
刚刚过去的春节,新型冠状病毒疫情突如其来地横扫大江南北。为了响应国家号召,许多软件公司和互联网公司也将在较长一段时间内建议员工采取远程办公的方式,同时也存在骨干工程师无法及时返岗的问题,使得生产力大受影响。 对于软件企业来说,研发与测试是两大核心命脉。研发团队保障着产品新功能新特性的及时发布,而测试团队则如同马的缰绳,确保产品不会由于迭代速度过快、设计考虑角度不周,而导致软件缺陷的产生。 巨杉数据库在9年的自研和技术创新历程中,在研发体系构建、自动化测试、团队线上线下结合等方面积累了很多经验。从2011年团队成立之初开始,巨杉数据库的整个技术研发体系就以面向流程协作的方式进行构建。其核心思想是,任何员工可以在任何地点,只要遵循正确的流程,就可以与整个团队有机地衔接在一起。 在这个非常时刻,为了帮助在远程办公期间内保质保量完成新版本的迭代与测试工作,我们也将我们自己的一些经验分享给大家,主要介绍巨杉如何在无人值守的环境下,完成产品的自动化测试与研发协作。 基础体系 网络基础设施 我们的整个开发环境分为内外网两大网络,其中外部网络可以连接到广域网Internet,而内部网络则没有广域网连接。外网包括办公室中每个员工的台式机,以及可供员工进行远程连接的***服务器与防火墙。工程师们无论使用办公室的电脑,还是通过配发的笔记本电脑从远程通过***接入,均连入公司的外网网段。

【巨杉数据库SequoiaDB】巨杉数据库无人值守智能自动化测试实践

五迷三道 提交于 2020-02-04 01:47:30
刚刚过去的春节,新型冠状病毒疫情突如其来地横扫大江南北。为了响应国家号召,许多软件公司和互联网公司也将在较长一段时间内建议员工采取远程办公的方式,同时也存在骨干工程师无法及时返岗的问题,使得生产力大受影响。 对于软件企业来说,研发与测试是两大核心命脉。研发团队保障着产品新功能新特性的及时发布,而测试团队则如同马的缰绳,确保产品不会由于迭代速度过快、设计考虑角度不周,而导致软件缺陷的产生。 巨杉数据库在9年的自研和技术创新历程中,在研发体系构建、自动化测试、团队线上线下结合等方面积累了很多经验。从2011年团队成立之初开始,巨杉数据库的整个技术研发体系就以面向流程协作的方式进行构建。其核心思想是,任何员工可以在任何地点,只要遵循正确的流程,就可以与整个团队有机地衔接在一起。 在这个非常时刻,为了帮助在远程办公期间内保质保量完成新版本的迭代与测试工作,我们也将我们自己的一些经验分享给大家,主要介绍巨杉如何在无人值守的环境下,完成产品的自动化测试与研发协作。 基础体系 网络基础设施 我们的整个开发环境分为内外网两大网络,其中外部网络可以连接到广域网Internet,而内部网络则没有广域网连接。外网包括办公室中每个员工的台式机,以及可供员工进行远程连接的VPN服务器与防火墙。工程师们无论使用办公室的电脑,还是通过配发的笔记本电脑从远程通过VPN接入,均连入公司的外网网段。

Web 手工测试

强颜欢笑 提交于 2020-02-03 07:23:33
day 1 学习目标: 熟练搭建本地测试环境 掌握熟悉项目的步骤和内容 掌握项目基本的测试流程 基础环境介绍: 项目环境的组成部分: 操作系统 windows win7 win10 Linux Centos 6.x,7.x Redhat 6.x,7.x Ubuntu 14.z,16.x,18.x Mac web 服务器 apache: 稳定,文档齐全 默认监听端口:80 nginx: 负载均衡器 默认监听端口:80 tomcat:默认监听端口"8080 ->JAVA 数据库 Mysql Oracle Sql Server DB2 项目 LNMP: LINUX+Nginx+Mysql+PHP WAMP: Windows+Nginx+Mysql+PHP 扩展: Apache 与 Nginx 的区别: apache 与 nginx 均可以作为web服务器使用 apche 系统稳定性更强文档丰富 nginx 消耗更少的系统资源(如CPU,内存等) nginx 更加典型的应用场景是作为负载均衡器使用 搭建测试环境 准备工作 phpstudy安装文件 项目部署包 部署说明书 安装集成环境 apache 监听端口: 80 mysql 监听端口: 3306 部署项目 将TPshop 项目压缩包解压后文件夹里的全部内容放入phpstudy安装路径\www中 常见故障 mysql 端口被占用

PAT: 1010 A+B和C

瘦欲@ 提交于 2020-02-02 18:21:32
1011 A+B 和 C (15分) 给定区间 [ − 2 ​ 3 1 ​​ , 2 ​ 3 1 ​​] 内的 3 个整数 A、 B 和 C,请判断 A + B 是否大于 C。 输入格式: 输入第 1 行给出正整数 T ( ≤ 1 0),是测试用例的个数。随后给出 T 组测试用例,每组占一行,顺序给出 A、 B 和 C。整数间以空格分隔。 输出格式: 对每组测试用例,在一行中输出 Case #X: true 如果 A + B > C,否则输出 Case #X: false ,其中 X 是测试用例的编号(从 1 开始)。 #include<iostream> #include<math.h> using namespace std; int main() { int T = 0, i = 0; double A = 0, B = 0, C = 0; double side_min = 0, side_max = 0; side_min = -(2.147483648e+09); side_max = 2.147483648e+09;//题意的界限 cin >> T; int judge[11] = { 0 };//保存判断结果 while (i<T) { cin >> A >> B >> C; //判断输入是否越界 if (A < side_min||A>side_max||B

[白盒测试学习] 从逻辑覆盖实例学起

不问归期 提交于 2020-02-02 17:53:02
1. 什么是白盒测试 白盒测试也称结构测试、逻辑驱动或基于程序的测试,是一种测试用例设计方法。 一般用于分析程序的内部结构。 针对特定的条件和循环设计测试用例,对程序的逻辑路径进行测试。 用这种发方法进行程序设计时,测试者可以看到被测程序,并分析其内部结构,白盒测试要求对被测程序的结构特性做到一定程度的覆盖。 从这个角度上说,白盒测试也是基于覆盖的测试技术。 2. 白盒测试方法概述 白盒测试通常分为静态和动态两种类型,包含很多常用的方法。 静态分析: 按照一定步骤直接见车源代码或代码的测试方法。 包括-代码审查、桌面检查、代码走查等方法 动态测试: 指按照一定步骤生成测试用例并驱动被测程序运行来发现错误。 包括-基本路径测试、符号测试、逻辑驱动覆盖、循环测试、数据流测试等方法。 3. 逻辑覆盖法 这里就从逻辑覆盖法开始了我的白盒测试学习历程。 逻辑覆盖是白盒测试中以程序内部的逻辑结构为基础的设计测试程序用例的技术。 是一系列测试过程的总称。 根据测试覆盖目标不同,以及覆盖源程序的详尽程度分析由高到低排序,可以分为: 语句覆盖 判定覆盖 条件覆盖 判定/条件覆盖 条件组合覆盖 路径覆盖 -------------------------分割线---------------------------------- [从实例开始说起] 程序流图如下: 路径: p1 = {a,c,e} P2

2.pytest用例设计及运行

北慕城南 提交于 2020-02-02 13:56:50
pytest测试用例可以存在函数级别,也可以存在类级别。只需要按照内部的规则设计用例,它可以自动去发现测试用例,不需要像unittest框架测试类需要继承TestCase; 在运行时可以在命令行窗口运行,也可以在pycharm中直接运行,下面会详解两种运行方式; 1.pytest用例设计规则 所有的测试脚本存放在python的包中。python的包中带有__init__.py文件 模块名设计规则:test_*.py 或者 *_test.py 类名设计规则: Test* 以Test开头的类 方法名设计规则:test_* 以test_开头的方法名 函数名设计规则:test_* 以test_开头的函数 2.脚本命令行运行3中方式   pytest(推荐使用)  py.test  python -m pytest 3.执行脚本时参数   -s 详细显示日志信息   -q 显示简略运行信息   -x 遇到第一个失败用例停止运行   --maxfile=2 遇到第二个失败用例停止运行,可以改变停止运行的失败用例数 4.pycharm中运性用例 确定是否是pytest运行器运行 更改运行器:file-->setings 用例运行顺序 1.如果鼠标悬停在其中一个用例右键运行,则只会运行悬停处用例; 2.如果鼠标没有悬停则顺序为先运行函数级别用例,在运行类级别用例;

逻辑覆盖法和基本路径法

随声附和 提交于 2020-02-02 09:23:56
逻辑覆盖法   逻辑覆盖是以程序内部的逻辑结构为基础的测试用例设计技术,这一方法要求测试人员对程序的逻辑结构有清楚的了解。逻辑覆盖可分为:语句覆盖、判定覆盖、条件覆盖、判定-条件覆盖、条件组合覆盖与路径覆盖。   1. 语句覆盖就是设计若干个测试用例,运行所测程序,使得每一可执行语句至少执行一次。   2. 判定覆盖就是设计若干个测试用例,运行所测程序,使得程序中每个判断的取真分支和取假分支至少经历一次。   3. 条件覆盖就是设计若干个测试用例,运行所测程序,使得程序中每个判断的每个条件的可能取值至少执行一次。   4. 判定--条件覆盖就是设计足够的测试用例,使得判断中每个条件的所有可能取值至少执行一次,同时每个判断的所有可能判断结果也至少执行一次。   5. 条件组合覆盖就是设计足够的测试用例,运行所测程序,使得每个判断的所有可能的条件取值组合至少执行一次。   6. 路径测试就是设计足够的测试用例,覆盖程序中所有可能的路径。   每一种覆盖方法都有其优缺点,这6种覆盖方法关系,如图1:   图1   通常在设计测试用例时应该根据代码模块的复杂度,选择覆盖方法。一般的代码的复杂度与测试用例设计的复杂度成正比。因此,设计人员必须做到模块或方法功能 的单一性、高内聚性,使得方法或函数代码尽可能的简单;这样将可大大提高测试用例设计的容易度,提高测试用例的覆盖程度。 基本路径法  

条件覆盖,路径覆盖,语句覆盖,分支覆盖

时间秒杀一切 提交于 2020-02-02 05:09:37
转自 http://hi.baidu.com/%D2%D7%B1%D8%BA%C6/blog/item/f016729f4fbeaebbc9eaf4df.html 语句覆盖是指选择足够的测试用例,使得运行这些测试用例时,被测程序的每一个语句至少执行一次,其覆盖标准无法发现判定中逻辑运算的错 误;判定覆盖是指选择足够的测试用例,使得运行这些测试用例时,每个判定的所有可能结果至少出现一次,但若程序中的判定是有几个条件联合构成时,它未必能 发现每个条件的错误; 条件覆盖是指选择足够的测试用例,使得运行这些测试用例时,判定中每个条件的所有可能结果至少出现一次,但未必能覆盖全部分支;判定/条件覆盖是使判定中 每个条件的所有可能结果至少出现一次,并且每个判定本身的所有可能结果也至少出现一次;条件组合覆盖是使每个判定中条件结果的所有可能组合至少出现一次, 因此判定本身的所有可能解说也至少出现一次,同时也是每个条件的所有可能结果至少出现一次;路径覆盖是每条可能执行到的路径至少执行一次;其中语句覆盖是 一种最弱的覆盖,判定覆盖和条件覆盖比语句覆盖强,满足判定/条件覆盖标准的测试用例一定也满足判定覆盖、条件覆盖和语句覆盖,条件组合覆盖是除路径覆盖 外最强的,路径覆盖也是一种比较强的覆盖,但未必考虑判定条件结果的组合,并不能代替条件覆盖和条件组合覆盖。 举个例子吧 if A and B then

如何保证测试用例的覆盖率

耗尽温柔 提交于 2020-02-02 02:24:18
The world is big and life is short . Live the life the way you want . 世界很大 生命很短,要过成自己想要的样子呀才行 在这里对测试过程中如何保障覆盖率做个简单的总结,希望对大家有所帮助 一、测试需求分析需全面 需求分析分两步: 1.测试需求的来源     1)显式需求       a.原始需求说明书或需求矩阵列表       b.产品规格书       c.软件需求文档       d.有无继承文档       e.经验库       f.通用的协议规范     2)隐式需求       用户的主观感受,市场的主流观点,专业人士的评价分析   2.需求分析,产生测试需求文档     将不同的需求来源划分成一个个需求点,针对每一点进行测试分析:       1)界定测试范围       2)利用各种测试设计的方法差生测试点     在测试方面,注意:       1)分析出口入口。从入口分析,将可能出现的环境,条件,操作等内容分类分类组合,然后根据测试达人的方法进行整合,逐一验证。从出口分析,将可能出现的结果进行统计,根据结果的不同追根溯源,再找到不同的操作以及条件等内容,统计成文档,逐一验证。       2)多种测试手法的学习和使用。大家可能更多的关心测试方法,但是具体操作的手法也是需要注意的

[原创]测试用例设计策略

泪湿孤枕 提交于 2020-02-02 01:01:06
[原创]测试用例设计策略 在测试用例的设计过程中,通常为了要达到最优的覆盖,要采用多种不同的测试用例设计方法,其中比较有名的是, Myers提出了使用各种测试方法的综合策略: 1、在任何情况下都必须使用边界值分析方法,经验表明用这种方法设计出测试用例发现程序错误的能力最强; 2、必要时用等价类划分方法补充一些测试用例; 3、用错误推测法增加一些测试用例; 4、检查已设计出的测试用例的逻辑覆盖程度,如果没有达到要求的覆盖标准,应当再补充足够的测试用例; 5、如果程序的功能说明中含有输入条件的组合情况,则一开始就可选用因果图法。 当然以上仅仅是 Myers 的一些总结或建议,所以在测试用例设计过程中,我个人的策略是如下: 测试用例的设计策略: 1、根据需求,设计规格等相关说明构造基本测试用例设计的类型(如功能,性能,安全等); 2、然后根据相关测试类型,构造正面和负面的测试用例; 3、采用边界值方法补充测试用例; 4、采用等价划分方法补充测试用例; 5、采用场景方设计测试用例; 6、采用正交实验方法/功能图方法设计测试用例; 7、采用因果图方法设计测试用例; 8、采用流程图方法设计测试用例; 9、状态转换补充测试用例; 10、为其它测试类型编写测试用例,如:性能,压力,安全,兼容性,配置,本地化,国际化等 11、通过启发示评审方法优化测试用例; 12