CodeceptJS E2E test framework 介紹

是否對於難以操作的 browser selector 感覺到厭煩,或者對於 e2e test 流程不知道該如何入手,

CodeceptJS 幫你解決這類的問題  

官方網站: http://codecept.io/

透過 Codecept.js 可以快速達到 e2e test 流程以及協助建立模擬使用者使用流程,確定 UI 狀態。

讓開發測試流程的最後一哩路達到完美。

其他 e2e 框架

CodeceptJS 是基於 helper 概念,將 webdriver.io, Protractor 等框架進行包裝,讓開發者可以透過簡單語法進行操作。

以 Protractor.js 測試語法來說,一般使用方法會如下,

it('should create todo item', (I) => {  
  browser.get("http://todomvc.com/examples/angularjs/#/");
  expect(element(by.css("#todo-count")).isPresent()).toBeFalsy();
  var inputField = element(by.model("newTodo"));
  inputField.sendKeys("Write a guide");
  inputField.sendKeys(protractor.Key.ENTER);
  var todos = element.all(by.repeater("todo in todos"));
  expect(todos.last().getText()).toEqual("Write a guide"));
  element(by.css("#todo-count")).getText()).toContain('1 items left');
});

而透過 codecept.js 之後,語法就可以簡化為,

Scenario('create todo item', (I) => {  
  I.amOnPage('/');
  I.dontSeeElement('#todo-count');
  I.fillField({model: 'newTodo'}, 'Write a guide');
  I.pressKey('Enter');
  I.see('Write a guide', {repeater: "todo in todos"});
  I.see('1 item left', '#todo-count');
});

是不是簡單使用許多,也方便讓人上手

e2e 立刻上手

Codecept.js 是方便讓原本使用 Webdriver.io, Protractor 的測試開發者更容易進行維護,讓 e2e 測試流程可以更為簡化。

如果對於 Codecept.js 有深入興趣,歡迎到 Codecept.js 官方網站查詢進一步詳細資料。

CaesarChi

Web developer, focus on website fullstack, special JavaScript, and love sharing developing experience and communicate with developers. http://about.me/clonn