小团队玩不转的测试 | kazaff's blog



小团队玩不转的测试 | kazaff's blog

Karma

Karma作为测试套件的执行器(test runner),为我们的测试框架提供测试环境的,它的安装和配置简单的我都想哭了。不过好像它并无法直接进行端到端测试,github上有一个扩展:karma-e2e-dsl是专门做这件事儿的,有兴趣的可以看看。

Atomus

Atomus给自己定位很准确,就是轻量级UI测试套件,重点提到了它可以支持局部界面测试,其实就是利用了jsdom提供的能力来灵活的做到了js+html联调,思路不错,不过github上的关注度和活跃度不算高。

Casperjs

类似Atomus,但是Casperjs更加的强大,它是基于PhantomJS来实现浏览器模拟的,并提供了强大的测试API,该项目的关注度也很高,值得好好看看。

google上可以找到比较多的使用casperjs配合mocha和chai来做端到端测试的资料,这也是目前我比较中意的组合。

chrome上还有一个casperjs的插件:Resurrectio,用来帮助我们通过直接在页面上操作来录制测试脚本,虽然作者好像已经不再维护这个项目,但经测试依然可以满足一些简单的场景。

Mocha + Chai + Sinon

这套黄金搭档在面对单元测试时基本上所向无敌,不过如果是做端到端测试,我们几乎不需要做mock或stub,所以Sinon就可以先放一边。Mocha配合Chai可以提供标准的测试所需功能,是目前最新的测试框架之一。所以之后我在搭建具体测试环境的时候也会优先选择这俩工具。

PhantomFlow

如果你想要一份屌炸天的测试报告,那PhantomFlow应该是一个开箱即用的工具了,它基于我们上面提到的一些工具,并提供了各种漂亮的展示模版,很适合装逼用。

Page-Monitor

上面说的都是功能测试为主,最后我们来说一下界面测试,国人大牛提供了Page-Monitor工具,可以帮我们对比界面的差异,使用方法非常简单,具体可以根据官方步骤来做,目前这不是我的关注点。


Read full article from 小团队玩不转的测试 | kazaff's blog


No comments:

Post a Comment

Labels

Algorithm (219) Lucene (130) LeetCode (97) Database (36) Data Structure (33) text mining (28) Solr (27) java (27) Mathematical Algorithm (26) Difficult Algorithm (25) Logic Thinking (23) Puzzles (23) Bit Algorithms (22) Math (21) List (20) Dynamic Programming (19) Linux (19) Tree (18) Machine Learning (15) EPI (11) Queue (11) Smart Algorithm (11) Operating System (9) Java Basic (8) Recursive Algorithm (8) Stack (8) Eclipse (7) Scala (7) Tika (7) J2EE (6) Monitoring (6) Trie (6) Concurrency (5) Geometry Algorithm (5) Greedy Algorithm (5) Mahout (5) MySQL (5) xpost (5) C (4) Interview (4) Vi (4) regular expression (4) to-do (4) C++ (3) Chrome (3) Divide and Conquer (3) Graph Algorithm (3) Permutation (3) Powershell (3) Random (3) Segment Tree (3) UIMA (3) Union-Find (3) Video (3) Virtualization (3) Windows (3) XML (3) Advanced Data Structure (2) Android (2) Bash (2) Classic Algorithm (2) Debugging (2) Design Pattern (2) Google (2) Hadoop (2) Java Collections (2) Markov Chains (2) Probabilities (2) Shell (2) Site (2) Web Development (2) Workplace (2) angularjs (2) .Net (1) Amazon Interview (1) Android Studio (1) Array (1) Boilerpipe (1) Book Notes (1) ChromeOS (1) Chromebook (1) Codility (1) Desgin (1) Design (1) Divide and Conqure (1) GAE (1) Google Interview (1) Great Stuff (1) Hash (1) High Tech Companies (1) Improving (1) LifeTips (1) Maven (1) Network (1) Performance (1) Programming (1) Resources (1) Sampling (1) Sed (1) Smart Thinking (1) Sort (1) Spark (1) Stanford NLP (1) System Design (1) Trove (1) VIP (1) tools (1)

Popular Posts