测试

使用Mocha + Chai + Sinon 测试React + Redux的web应用

烈酒焚心 提交于 2019-12-06 08:24:06
今天来介绍一下如何使用Mocha + Chai + Sinon测试基于Redux + React的web应用,以及介绍一些在使用过程中遇到的问题和解决方法。 Mocha Mocha 是一个JS的测试框架,类似于Java中的Junit、Python中的nose。Mocha的使用非常简单,使用describe和it就可以写单元测试,下面是代码示例。 1 2 3 4 5 6 7 8 9 10 import { expect } from 'chai' ; describe ( 'Array' , function () { describe ( '#indexOf()' , function () { it ( 'should return -1 when the value is not present' , function () { expect ([ 1 , 2 , 3 ]. indexOf ( 5 )). to . be . equal ( - 1 ); expect ([ 1 , 2 , 3 ]. indexOf ( 0 )). to . be . equal ( - 1 ); }); }); }); Chai Chai 是一个单元测试的验证框架,它有3种不同形式的校验:expect、should和assert。expect和should的方式让写出来的测试代码更像自然语言

[测试]使用Windows Live Writer的离线博客测试

。_饼干妹妹 提交于 2019-12-05 21:45:37
使用Windows Live Writer进行OSC博客的编写测试。 使用Windows Live Writer进行OSC博客的编写测试。 使用Windows Live Writer进行OSC博客的编写测试。 使用Windows Live Writer进行OSC博客的编写测试。 使用Windows Live Writer进行OSC博客的编写测试。 使用Windows Live Writer进行OSC博客的编写测试。 使用Windows Live Writer进行OSC博客的编写测试。 来源: oschina 链接: https://my.oschina.net/u/1177205/blog/203106

一个用于网站自动化测试的生态系统实现

前提是你 提交于 2019-12-05 06:19:02
这是我在从事网站自动化测试的工作当中构建出的一个“生态系统”。“生态系统”这个概念是我从公司的前辈身上学到的,他一直以来都认为自动化测试人员不应仅仅局限于编写测试代码,还应该让整个自动化测试的过程(测试代码的持续集成、分发、执行等)都自动化,形成一个“系统”,这个系统的自动化程度越高,自动化测试人员就越省力。 一、概念 这里我画了一张示意图: 之所以称之为“生态系统”,是因为建成之后需要的人为干涉很少,其余的时间都是系统内部循环运作。作为自动化测试人员的你只需要提交代码,之后便可以在AutomationDashboard上看到运行的结果了,其余的事情都由系统内部消化。当然,结果的分析还是需要人来完成,机器还没有聪明到可以灵活分析出各种各样让case fail掉的原因。 我们可以把整个系统看作一个黑盒子,那么上面的图可以变成: 实际上这里画的人不仅限于自动化测试人员,也可以是: (1)产品的管理者,比如产品经理需要从自动化回归测试知道这次release有无推迟风险; (2)团队的管理者,比如开发经理、QA经理需要从自动化的daily/weekly regression知道最近的代码质量如何; (3)开发人员,他们也许会想通过quick regression(提交的产品代码被部署到测试环境之后运行的测试)知道自己刚提交的代码有没有破坏系统的基本功能; (4

Python vs PHP 冒泡排序和累加求和计算性能测试

て烟熏妆下的殇ゞ 提交于 2019-12-04 06:02:04
测试环境 : 处理器i5-3230M,64位Ubuntu 14.04 Python 2.7.6, PHP 5.4.39, PHP 7.0.0-dev(2015/04/21) 测试内容: 冒泡排序:对10个升序的数进行排序,降序输出,循环1百万次. 累加求和:0+1+2+3+...+99999999 冒泡排序测试结果对比: 程序: Python PHP5 PHP7 耗时: 16.910s 14.715s 8.011s 内存: 35.8m 9.0m 12.5m Python改用xrange后,内存占用为4.8MB,耗时为16.784s. 累加求和测试结果对比: 程序: Python PHP5 PHP7 耗时: 10.057s 3.855s 1.855s 内存: 3.039g 8.9m 12.5m 使用range时,Python内存占用达到3GB,改为xrange后,内存占用为4.8MB,耗时为9.460s. 结论: Python和PHP都是动态脚本语言,都没有JIT机制,所以测试是公平的. Python计算性能根本比不上PHP5,跟PHP7差距更大,所以就别黑PHP计算不如Python了. PHP是 自己编译的 ,启用了很多内建的功能,所以测试中内存占用会比Python多一些. 下面是详细测试过程: Python冒泡排序: def bubble_sort(lst): length =

加速Java应用开发速度3——单元/集成测试+CI

♀尐吖头ヾ 提交于 2019-12-04 04:46:33
1、为什么需要测试? 测试的目的是什么?我的理解是: 缩短发现问题到解决问题的速度; 给程序一个修改后能验证是否正确的保证;(回归测试) 如果是开源软件,我们可以通过单元测试了解其是怎么使用的;比如我之前通过cglib的单元测试学习过cglib的使用; 所以如果你遇到如上问题,就需要写测试。写测试可能是为了自己(1、2);也可能是为了帮助别人(3)。 2、如何进行测试? 很多朋友不知道如何进行测试,其实测试很简单,别把它想复杂了,按照自己的想法测试每个功能点是否正确即可。 2.1、测试流程 集成·测试流程 单元·测试流程 可以看出,单元测试与集成测试唯一不同点是一个调用依赖系统而一个不调用;因为单元测试是最小粒度的测试,如在Java中是测试一个类,不会测试依赖系统;而集成测试是会测试依赖系统的。 测试的步骤: 准备环境 调用被测系统 验证 清理环境 环境 :也叫做夹具(fixture)或者固件,表示调用被测系统时需要准备/清理的数据等等; 被测系统 :在Java中就是要测试的类,如UserService; 依赖系统 :测试被测系统时,其依赖的部分,如UserDao; 测试用例 :包含测试方法的类,里边有很多测试方法来测试被测系统。 接下来仔细看看各部分都做了哪些工作。 2.2、环境 环境,也叫做夹具(fixture),表示调用被测系统时需要准备/清理的数据等等

探索PHP7(一)--性能

守給你的承諾、 提交于 2019-12-03 03:29:43
#探索PHP7(一)--性能# ##前言## 在2015年12月2号,鸟哥的在开源中国发布的新闻 写在 PHP 7 发布之际一些话 ,小编意识到从8月份发布第一个公测版到现在经过了将近4个月的等待PHP7正式版本终于发布了,所以果断装上了一个玩玩,确实和之前所说的一样提升很大,进过了几天的测试,所以写下这篇博文希望能和大家有一个共同的了解. 注:已经有很多新闻博客分享了关于PHP7的一些讯息,我希望通过一名普通程序员的角度来看待它对我们带来的价值. 附上: 鸟哥:写在 PHP 7 发布之际一些话: http://www.oschina.net/news/68607/php-7-laruence-feeling PHP官方地址: http://www.php.net/ ##1. 简单粗暴的测试## 那么问题来了PHP7发布的最大的亮点是什么? 无疑是它带了了相当可观的性能提升,我们先从几个长使用的框架下手看看5.6和7之间的差距有多少,然后我们在通过具体的测试来对不同的操作具体产生了多大的影响 配置信息:服务器为:2核心2G(Centos6.5),LoadRunner压力机为4核4G,ab压力机为2核2G PHP版本信息:PHP 5.6.14 (cli) 和 PHP 7.0.0 (cli) 均开启opcache 在这里对于小编几个常用的框架**(PhalApi,ThinkPHP

如何在Python开发环境Wing IDE中使用GTK和PyGObject

跟風遠走 提交于 2019-12-03 01:43:09
Wing IDE是一个集成开发环境,可用于编辑、测试和调试使用PyGObject为GTK编写的Python代码。Wing IDE提供自动完成、调用提示、一个强大的调试器,以及许多其他功能,可帮助用户编写、浏览和理解Python代码。 自动完成 PyGObject使用惰性装载功能来加速启动基于它的应用程序。这可以防止Wing IDE的分析引擎检查PyGObject覆盖的API导致IDE不能提供自动完成功能。 为了解决这一问题,可以使用Fakegir,它是一个构建假的PyGObject模块Python程序包的工具,可以放置到定义在Wing IDE项目属性的Python路径。 Fakegir的README.md提供了使用细节。 因为Wing IDE不仅在编辑中使用配置的Python路径,还在调试或执行代码时使用配置的Python路径,所以在导入任何PyGObject-provided模块之前,需要从sys.path中消除假模块目录: import sys, os kFakegirCache = os.path.join(os.path.expanduser( ' ~ ' ), ' .cache/fakegir/ ' ) if kFakegirCache in sys.path: sys.path.remove(kFakegirCache) 完成上述操作之后,Wing

初学自动化测试工具Selenium

强颜欢笑 提交于 2019-12-02 21:18:01
前言 Selenium是一个用于Web应用程序测试的工具, 测试直接运行在浏览器中,就像真正的用户在操作一样。因此使用Selenium则可以实现模拟真实用户测试web应用程序。 如何使用 从上面可以看到Selenium是用来测试web应用程序的,那么自然离不开浏览器。那么下面看看使用的步骤: 选择浏览器 对于IE浏览器和Chrome浏览器都需要下载driver。由于墙过于坚实,此处可提供chromedriver的一个 下载地址 firefox只需指定firefox.exe的路径 添加maven依赖组件 <dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-java</artifactId> <version>2.42.2</version> </dependency> <dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-chrome-driver</artifactId> <version>2.42.2</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId

软件测试必须要知道十个关键点

纵然是瞬间 提交于 2019-12-02 16:42:15
软件测试行业急需大牛   记得2年前刚毕业的时候听说了软件测试这个行业,当时也去百度仔细进行了一番搜索,评价基本千篇一律的看好。看好的原因在于,专家认为未来的互联网市场用户体验至上,而产品质量与用户体验有紧密的联系,自从近年产品经理岗位火了之后,人人都是产品经理的概念深入人心,但其实人人也都要具有质量观念,出色的产品质量可以提供更好的用户体验。   说被专家一席话打动有些牵强,当时就是因为自己的开发功底不足,退而求其次选择了 杭州软件测试 (www.proginn.com/users/hangzhou/csgcs/)一家公司谋生。而生活中很多事都要亲历了才知道究竟是怎样~其实,国内的软件测试行业没有书中以及媒体描述的那么好,规范、流程都需要各个公司摸索制定。流程是否规范,对测试的能力要求高低,自动化与接口测试完善与否,很多工具平台或软件是否能够重复使用,这都说明着该公司在软件测试方面的积累。   但凡接触过软件企业的人应该都知道,从公司的生态链来说,软件测试属于最下游,这也决定了很多情况必须要被动接受。即使某个测试攻城狮理论知识丰富,辨识风险能力强,在测试中独具慧眼,但是一个产品需求的变更就可以让他傻眼,接着很努力的去适应这种节奏。也许他抱怨,也许他吐槽,背后将产品、运营骂了N多遍,但是毫无用处,产品运营主导必然是趋势,测试主导是做不出好产品的。   还有一个点的确争论了很久

开发团队标准:什么是乔尔测试?

主宰稳场 提交于 2019-12-01 09:55:03
乔尔测试   1.你们用源代码管理系统吗?   git 神器   2.你们能一键编译吗?   这个要去研究一下   3.你们做每日编译吗?   这个要去研究一下   4.你们有bug数据库吗?   有   5.你们的 程序员 在写新代码前修改以前的代码吗?   在做开发规划的时候,要预留修改以前代码的时间,而不能只是考虑到不断叠加新功能。   6.你们的进度表是最新的吗?   每周的进度更新是必要的,这样才能知道每月的计划能否顺利完成。我们有最新的每周进度。   7.你们有软件规格书吗?   就是我们的产品设计文档。产品设计文档,原型修改5遍,也好过代码开发出来了再推到重来。没想清楚产品细节之前,不要开始开发! 程序员的工作环境安静吗?   远程工作者可以选择自己的工作环境   9.你们使用了能买到的最好的工具吗?   可以有   10.你们有测试人员吗?   3.1以前都是产品经理同时负责测试,3.2以后要引入专业的测试人才,提升测试完整度。   11.你们面试时会要求应聘人员写代码吗?   可以有。   12.你们做过走廊可用性测试吗?   在做,且必须做。每次要提供不同版本让用户来比较体验,并给出反馈。   感觉上,乔尔十多年前提到的这些,已经逐步成为开发团队的标配。 来源: oschina 链接: https://my.oschina.net/u/2742875/blog