Lcllao 发表于 2013-1-4 02:42:23

AngularJs学习笔记--E2E Testing

<div id="cnblogs_post_body">原版地址:http://docs.angularjs.org/guide/dev_guide.e2e-testing

  当一个应用的复杂度、大小在增加时,使得依靠人工去测试新特性的可靠性、抓Bug和回归测试是不切实际的。
  为了解决这个问题,我们建立了Angular Scenario Runner,模仿用户的操作,帮助我们去验证angular应用的健壮性。

一、   总括
  我们可以在javascript中写情景测试(scenario test),描述我们的应用发生的行为,在某个状态下给与某些互动。一个情景包含一个或者多个”it”块(我们可以将这些当作对我们应用的要求),依次由命令(command)和期望(expectation)组成。command告诉Runner在应用中做某些事情(例如转到某个页面或者单击某个按钮),expectation告诉runner去判断一些关于状态的东西(例如某个域的值或者当前的URL)。如果任何expectation失败了,那么runner标记这个”it”为”false”,然后继续下一个”it”。Scenario也可以拥有” beforeEach”和” afterEach”block,这些block会在每一个”it”block之前或者之后运行,不管它是否通过。
http://pic002.cnblogs.com/images/2012/397727/2012092514581215.jpg
  除了上述元素外,scenario也可以包含helper function,避免在”it”block中有重复的代码。
  这里是一个简单的scenario例子:
<div class="cnblogs_code">describe('Buzz Client', function() {    it('should filter results', function() {      input('user').enter('jacksparrow');      element(':button').click();      expect(repeater('ul li').count()).toEqual(10);      Input('filterText').enter('Bees');      expect(repeater('ul li').count()).toEqual(1);    });});
页: [1]
查看完整版本: AngularJs学习笔记--E2E Testing